PDA

View Full Version : سوال: پست اطلاعات به فایل php (ارتباط با MySQL)



shahab.es
چهارشنبه 31 تیر 1394, 01:17 صبح
سلام خدمت همه دوستان...
من میخوام اطلاعات رو از فرمم ارسال کنم به یه فایل php و اون فایل هم توی هاستم، اطلاعات رو میبره به mysql
از روش زیر استفاده کردم....

WebClient Swc = new WebClient();
try
{
Swc.UploadString("http://www.chef-mag.ir/dad_php/insert.php", "id=" + textBox3.Text + "&name=" + textBox1.Text + "&ring=" + textBox2.Text + "&gender=" + textBox4.Text + "&country=" + textBox8.Text + "&place=" + textBox7.Text + "&actors=" + textBox6.Text + "&info=" + textBox5.Text);

}

catch (Exception ex)
{

MessageBox.Show(ex.ToString());

}


نمیدونم درست ارسال میکنم یا نه....
دنبال روش دیگه ای هم برای ارسال اطلاعات هستم(به وسیله کانکتور و ...) ولی مثل اینکه برای اونا باید سرور مجازی داشته باشی و به هر هاستی نمیخوره
در کل، لطف کنید یا در این روش کمکم کنید، یا مرحمت کنید و روش دیگه ای بهم معرفی کنید
خیلی خیلی ممنونم...

shahryari
چهارشنبه 31 تیر 1394, 09:48 صبح
نمیدونم درست ارسال میکنم یا نه....

سلام
خب ببین تو mysql ذخیره میشه یانه؟؟

راجع روشهای دیگه JSON رو در سی شارپ جستجو کن

jamal_ch
چهارشنبه 31 تیر 1394, 10:18 صبح
سلام
شما میتونی از سوکت پروگرامینگ یا از وب سرویس هم استفاده کنی
بهترین soket ولی باید به سرور دسترسی داشته باشی
راحترین وب سرویس

shahab.es
چهارشنبه 31 تیر 1394, 14:51 عصر
سلام
شما میتونی از سوکت پروگرامینگ یا از وب سرویس هم استفاده کنی
بهترین soket ولی باید به سرور دسترسی داشته باشی
راحترین وب سرویس
ممنون عزیزم
میتونید یه راهنمایی بکنید که چجوری باید بنویسمش یا چجوری میشه ازش استفاده کرد؟
تایپکی اموزشی لینکی اگه بدید خیلی ممنون میشم...
ممنون...

shahab.es
چهارشنبه 31 تیر 1394, 14:53 عصر
سلام


خب ببین تو mysql ذخیره میشه یانه؟؟
کوئری سلکت رو که تو phpMyadmin میزنم، چیزی نمیاره، ذخیره نشده دیگه؟



راجع روشهای دیگه JSON رو در سی شارپ جستجو کن
میگردم، مرسی معرفی کردی...

jamal_ch
پنج شنبه 01 مرداد 1394, 10:36 صبح
شما بایک سرچ کوچولو تو اینترنت میتونی نمونه سوکت رو پیدا کنی و استفاده کنی اگه به سرور دسترسی داری اینم لینک فارسی
http://www.acmt.ac.ir/upload/jozve/ommi/network-csharp%28Marked%29.pdf
ولی اگه به سرور دسترسی نداری بهتره با وب سرویس کار کنی
خوب باید یک وب سرویس درست کنی و توش توابع خودتو تعریف کنی و اونارو صدا بزنی و چون سایتت php هست من اشنایی ندارم ولی اگر asp.net میتونستم کمکت کنم

Amir4317
پنج شنبه 01 مرداد 1394, 18:41 عصر
سلام

یکی از راحت ترین روش ها:

const string url = @"http://www.chef-mag.ir/dad_php/insert.php";
try
{
using (var client = new WebClient())
{
var response =
client.UploadValues(url, new NameValueCollection
{
{ "id", textBox3.Text }
{ "name", textBox1.Text }
{ "ring", textBox2.Text }
{ "gender", textBox4.Text }
{ "country", textBox8.Text }
{ "place", textBox7.Text }
{ "actors", textBox6.Text }
{ "info", textBox5.Text }
});

var result = System.Text.Encoding.UTF8.GetString(response);
// جواب برگشتی از سمت سرور
switch (result)
{
case @"000": sendOk = false; break;
case @"001": sendOk =false; break;
case @"111": sendOk = true; break;
}
}




موفق باشی! :لبخند:

shahab.es
پنج شنبه 01 مرداد 1394, 22:03 عصر
سلام
مرسی، میرم تستش میکنم
سعی کردم بفهممش
فقط اون switch رو اگر تونستی یه توضیح بده و اینکه جواب برگشتی از سمت سرور جریانش چیه؟
یعنی مثلا موفق بودن یا نبودن؟
ممنونتم برادر...

shahab.es
پنج شنبه 01 مرداد 1394, 22:13 عصر
مرسی
میرم دنبال همون وب سرویس، البته الان نه، بعدا :)
چون سرور دم دستم نیست فعلا
یه اطلاعاتی دارم درباره وب سرویس پیدا میکنم
ممنون برادرم

Amir4317
پنج شنبه 01 مرداد 1394, 23:15 عصر
آخ شرمنده !

توضیح اینکه result مقداری از نوع sting هستش که خودت با توجه به اتفاقات سمت سرور برای کلاینت برمیگردونی و درون مرورگر نمایش داده میشه
حالا هرچی دلت می‌خواد باشه فرقی نداره

در نوشتن swich هم آزادی که من اینجا مثال زدم
میتونی if بذاری و با توجه به اون پاسخ رو به مشتری نشون بدی.

(یادم رفت تابع catch رو هم بذار دیگه سه نکن)

shahab.es
پنج شنبه 01 مرداد 1394, 23:28 عصر
دشمنت شرمنده برادر
خوب یعنی من بیام و یگم که اگه اطلاعات ثبت شدن، سرور یه پیام بده
یعد اینجا نشونش میده
اون سویچ هم میگه مثلا اگه پیام سرور 'سلام بود' بیا فلان کارو بکن
اوکی
اینو تستش میکنم و خبرت میکنم برادر
فقط
اون کد خودم مشکلش چیه؟
ممنون میشم اگه وقتشو داشتی، یه بررسی بکنی، البته بررسی کردی، بیشتر بررسی کنی :gol:
ممنون

Amir4317
جمعه 02 مرداد 1394, 00:20 صبح
سلام مشدد

شما دو پارامتر رو به کدتون اضافه کنید و به کار بگیرید هلو!




var swc = new WebClient { Encoding = System.Text.Encoding.UTF8 };
swc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";

try
{
var url = "http://www.chef-mag.ir/dad_php/insert.php"
var message = "id=" + textBox3.Text + "&name=" + textBox1.Text + "&ring=" + textBox2.Text + "&gender=" + textBox4.Text + "&country=" + textBox8.Text + "&place=" + textBox7.Text + "&actors=" + textBox6.Text + "&info=" + textBox5.Text;
var result = swc.UploadString(url, message);
MessageBox.Show(result);
}


موفق و پیروز باشید :لبخند:

shahab.es
جمعه 02 مرداد 1394, 00:58 صبح
خیلی خیلی ممنون از توجهت برادر و همینطور کمک هات و کمک بقیه رفقا
یه پیشرفت داشتیم
اونم اینه که یه ردیف درست میشه
اما مقدار نداره....
از کدای php خیالم راحته
مشکلم تو همین پست هست
البته با روش اولت کار نکردم امیر جان
اونم تست میکنم

اینو نگاه کنید
http://chef-mag.ir/android/show.php

shahab.es
جمعه 02 مرداد 1394, 01:18 صبح
امیر جان
روش شما سینتکس ارور میگیره
بی زحنت این ارور هارو ببین :)

shahab.es
جمعه 02 مرداد 1394, 15:17 عصر
سلام مشدد

شما دو پارامتر رو به کدتون اضافه کنید و به کار بگیرید هلو!




var swc = new WebClient { Encoding = System.Text.Encoding.UTF8 };
swc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";

try
{
var url = "http://www.chef-mag.ir/dad_php/insert.php"
var message = "id=" + textBox3.Text + "&name=" + textBox1.Text + "&ring=" + textBox2.Text + "&gender=" + textBox4.Text + "&country=" + textBox8.Text + "&place=" + textBox7.Text + "&actors=" + textBox6.Text + "&info=" + textBox5.Text;
var result = swc.UploadString(url, message);
MessageBox.Show(result);
}


موفق و پیروز باشید :لبخند:

خیلی خیلی ممنون
با این کد درست شد
فقط، result ، توی مرورگر نشون داده میشه و من میگیرمش و تو مسیج باکس نشون میدم دیگه؟
یعنی اگه درست بود و اینسرت شده بود، فقط تو مرور گر بنویسه مثلا Okay?
ممنون برادر برای کمک هات

Amir4317
جمعه 02 مرداد 1394, 22:16 عصر
از این NameSpace ها استفاده کن:


using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Drawing;
using System.Linq;
using System.Net;
using System.Windows.Forms;


قسمت result رو مخصوص خودته برای debug اصلاً لازم نیست عین متن رو کاربر نشون بدی.
و همچنین قسمت catch مربوط به try رو خودت بنویس.:چشمک: