اتصال اندروید به SQLServer (بخش دوم)
به دنبال یادگیری بخش اول آموزش اتصال اندروید به دیتابیس SQLServer ،بخش دوم آموزش خود را باعنوان نحوه نوشتن برنامه های سمت سرور برای برنامه های اندروید ادامه می دهیم. اگر برای بار نخست پست زیر را می خوانید و در زمینه نحوه ایجاد دیتابیس در هاست از اطلاعات کم و ناقصی برخوردار هستید پیشنهاد ما این است که ابتدا بخش اول آموزش ما را تحت عنوان نحوه ایجاد دیتابیس در اندروید را یادبگیریید و به دنبال یادگیری کامل مبحث مذکور ، پست زیر را بخوانید. برای رفتن به مبحث نحوه ایجاد دیتابیس در هاست اینجا کلیک کنید. بعد از ایجاد دیتابیس در هاست ، به منظور اتصال برنامه های اندرویدی به پایگاه داده SQlServer ، ضروری است که واسط کاربری این اتصال را به درستی تعریف کنیم. بدین منظور می توان با استفاده از برنامه های سمت سرور از جمله php ، جاواسکریپت و … این واسط کاربری را پیاده سازی نمود. فلذا به جهت سهولت امر و عمومیت زبان php، نحوه نوشتن برنامه های سمت سرور را با این زبان برای کاربران عزیز توضیح خواهم داد قبل از نوشتن کدهای
php می باید نحوه ایجاد فایل و مکان آن را در سرور برای دوستان توضیح دهیم. وارد هاست خود شده و در صفحه ظاهر شده بعد از login ، قسمت فایل FileManager یا همانOnlineManager را پیدا کرده و بر روی آن کلیک می کنیم.
بعد از کلیک بر روی OnlineManager به صفحه مدیریت پوشه ها در هاست هدایت خواهیم شد همانطور که در شکل زیر می بینید صفحه مذکور دارای دارای پوشه ای با نام htdocs و چند فایل با نام های دیگر است. دقت داشته باشید پوشه ای که ما قرار است فایل های php خود را در آن قرار دهیم همین پوشه نامبرده خواهد بود.
پوشه htdocs را باز کرده و در صفحه ظاهرشده و در قسمت بالای آن دکمه new file را کلیک می کنیم و بعد از نامگذاری فایل که بصورت namefile.php نامگذاری می شود کدهای مورد نظر خود را در آن قرار می دهیم(که در پایین نحوه نوشتن آن نیز توضیح داده خواهد شد) و سپس از بالای فیلد متنی دکمه ذخیره که به شکل آیکن save دیده می شود فایل خود را ذخیره می کنیم.بعد از ایجاد فایل به منظور ایجاد url یا همان آدرس اینترنتی ، آدرس خود را براساس نام دامنه و نام فایل تایپ می کنیم. برای مثال اگر من از هاست رایگان گیگفا استفاده می کنم و در قسمت filemanager و در داخل پوشه htdocs فایلی با نام name.php به همین منظور ایجاد کرده باشم نام آدرس url من به شکل زیر خواهد بود:
http://psrd.gigfa.com/name.php
بعد از آشنایی کامل با ایجاد فایل php در هاست ، حال نوبت نوشتن کدهای فایل php می شود. اگر آشنایی خوبی با زبان php دارید چه بهتر ، اما اگر اطلاعات کم و ناقصی از نحوه برنامه نویسی با این زبان دارید ذکر مقدماتی هر چند کوتاه می تواند حداقل به منظور پیشبرد اهداف پروژه تان مفید باشد. بطور کلی سینتکس زبان php به شکل زیر است.
<؟php
//yourcod
?>
همانطور که از سینتکس فوق پیداست کدهای شما قرار است در قسمت yourcod قرار بگیرند. با کمی تامل می توان دریافت که با استفاده از url یا( همان آدرس اینترنتی )تعریف شده که نحوه استخراج آن در فوق بیان گردید ، فایل مورد نظر قرار است فایل های ارسالی ما را در قالب متغیرهای تعریف شده در هر دو سمت سرور و کلاینت، از کلاینت گرفته و در دیتابیس سمت با مختصات تعریف شده در فایل(شامل مشخصات دیتابیس) ، ذخیره کند. بدین منظور می بایست نام متغیرهای تعریف شده در دیتابیس و کلاینت را با دقت مشخص نمود. همانطور که در آموزش قبلی بیان کردید این متغیرها در پروژه فرضی ما شامل موارد زیر می باشد :
name-familyname-phonenumber-email
پس در گام نخست ما می باید مشخصات دیتابیس خود را در سمت سرور در فایل مورد نظر تعریف کنیم. مشخصات کلی دیتابیس ما شامل موارد زیر می باشد :
servername username password
servername نام همان سروری است که قرار است اطلاعات ما در آن ذخیره شود. اگر از شبیه ساز سرور WAMP یا XAMPP استفاده می کنیم ارزش آن را مساوی “localhost” قرار می دهیم. اما اگر از هاست رایگان استفاده می کنید باید نام سرور ، خود را از آن استخراج کنید . برای استخراج نام سرور می توانید به صفحه ابتدایی هاست خود مراجعه کرده و در ستون سمت چپ یا راست نام سرور خود را در قسمت Account Details پیدا کنید. برای مثال نام سرور من در هاست رایگان sql202.gigfa.com می باشد
username همان یوزر سروری است که قرار است اطلاعات ما در آن ذخیره شود. اگر از شبیه ساز سرور WAMP یا XAMPP استفاده می کنیم ارزش آن را مساوی “root” قرار می دهیم. اما اگر از هاست رایگان استفاده می کنید باید یوز سرور ، خود را از آن استخراج کنید . برای استخراج نام سرور می توانید به صفحه ابتدایی هاست خود مراجعه کرده و در ستون سمت چپ یا راست یوزر سرور خود را در قسمت Account Details پیدا کنید. برای مثال یوزر سرور من در هاست رایگان gigfa_20240926 می باشد.
password همان پسورد سرور یا دیتابیسی است که قرار است اطلاعات ما در آن ذخیره شود. اگر از شبیه ساز سرور WAMP یا XAMPP استفاده می کنیم ارزش آن را مساوی “” قرار می دهیم. اما اگر از هاست رایگان استفاده می کنید باید پسوردی که به همین منظور برای دیتابیس یا سرور خودتان تعریف کردید داشته باشید .
اگر از شبیه ساز استفاده می کنید مشخصات سرور و دیتابیس خود را به این صورت تعریف کنید :
$server_name = "localhost";
$username = "root";
$password = "";
اما اگر از هاست رایگان استفاده می کنید باید دقیقاً نام سرور، یوزر و پسورد آن را بصورت زیر ذکر کنید
$server_name = "sql202.gigfa.com";
$username = "gigfa_20240926";
$password = "********";
بعد از استخراج اطلاعات مورد نیاز و نوشتن آن در php ،آنها را مساوی با متغیری با نام my_connection قرار می دهیم تا برای اتصال به SQLServer از آن استفاده کنیم به این صورت:
$my_connection = @mysql_connect($server_name, $username, $password);
بعد از تعریف کانکشن خود برای اتصال به SQLServer و تعریف آن در متغیری به نام my_connection$ حال نوبت آن می رسد که کانکشن خود را مورد آزمایش قرار داهیم . اگر اطلاعات داده شده ما درست باشد مطمئناً این اتصال برقرار خواهد شد. اما اگر اطلاعات نادرستی را داده باشیم اتصالی در کار نخواهد بود بدین منظور جهت اطمینان از اتصال به دیتابیس بدین صورت عمل می کنیم که متغیر my_connection$ را بصورت شرطی مورد آزمایش قرار می دهیم . در واقع اگر این اتصال برقرار شده باشد برنامه connected را اکو می کند اما اگر اتصالی در کار نباشد notconnect را اکو خواهد کرد. سینتکس آن به صورت زیر می باشد.
<?php
$server_name = "sql202.gigfa.com";
$username = "gigfa_20240926";
$password = "********";
$my_connection = @mysql_connect($server_name, $username, $password);
if ($my_connection ) {
echo"connected";
}
?>
بعد از اطمینان از کانکت شدن به MySQLServer سرو،حال نوبت آن است که اطلاعات دریافتی توسط سرور دریافت شود برای دریافت متغیرهای پست شده بدین صورت عمل می کنیم که متغیرهای پست شده را در متغیرهای جدیدی تعریف می کنیم که اصولاً همنام با متغیرهای پست شده نامگذاری می کنند. سینتکس آن به شرح زیر می باشد.
$name = $_POST['name];
$fmailyname = $_POST['familyname'];
$email = $_POST['email'];
$phonenumber = $_Post['phonenumber'];
بعد از دریافت ارزش داده های پست شده، قرار است آنها را در دیتابیس ، جدول و در ستون های مشخصی که به همین منظور ساخته ایم ،ذخیره کنیم .قبل از نوشتن دستور ذخیره داده ها، شرط می کنیم که اگر اتصال ما با دیتابیس برقرار شده باشد در آن صورت داده های پست شده را در در جدول و در ستون های تعریف شده با مقدار مشخصی از ارزش های دریافتی ذخیره کند. سینتکس کلی توضیحات مذکور چنین خواهد بود .
<?php
$server_name = "sql202.gigfa.com";
$username = "gigfa_20240926";
$password = "*************";
$my_connection = @mysql_connect($server_name, $username, $password);
$query = mysql_select_db("gigfa_20240926_psrd", $my_connection);
if ($query) {
$sql = "INSERT INTO `my_table` (`name`, `familyname`, `phonenumber`, `email` )
VALUES('behzad', '12345678910', 'behzad', '12345678910')";
$insert_into_db = mysql_query($sql, $my_connection);
if ($insert_into_db) {
echo "Data recorded!";
} else {
echo "Failed to record the data.";
}
}
?>
و در نهایت اسکریپت های توضیح داده شده را در بالا را با هم ادغام می کنیم ، که شکل کلی سینتکس آن به صورت زیر خواهد بود.
<?php
$name = $_POST['name'];
$familyname = $_POST['familyname'];
$phonenumber = $_POST['phonenumber'];
$email = $_POST['email'];
$server_name = "sql202.gigfa.com";
$username = "gigfa_20240926";
$password = "*******";
$my_connection = @mysql_connect($server_name, $username, $password);
$query = mysql_select_db("gigfa_20240926_psrd", $my_connection);
if ($query) {
$sql = "INSERT INTO `my_table` (`name`, `familyname`, `phonenumber`, `email` )
VALUES( '$name' , '$familyname' , '$phonenumbe', '$email')";
$insert_into_db = mysql_query($sql, $my_connection);
if ($insert_into_db) {
echo "Data recorded!";
} else {
echo "Failed to record the data.";
}
}
?>
این جلسه آموزشی هم به پایان رسید و ما یادگرفتیم که با استفاده از زبان برنامه نویسی php چگونه می توانیم داده های پست شده را در SQLServer هاست مان ذخیره کنیم. امیدوارم این جلسه آموزشی هم برای دوستان مفید بوده باشد. در ضمن اگر خطای از ما در نحوه بیان و کدنویسی برنامه ها دیده اید و یا احیاناً اگر مشکلی در درک مفاهیم ارائه شده دارید می توانید از طریق دیدگاه ها با ما تماس بگیریید. در جلسه آینده و در آخرین جلسه نحوه اتصال اندروید به SQLServer را خدمت کاربران عزیز ارائه خواهیم نمود.
6 دیدگاه
سعید غفاری · دسامبر 14, 2017 در 6:09 ق.ظ
سلام خسته نباشید من در کانکت شدن به کد php به مشکل بر میخورم یعنی وقتی آدرس url رو طبق فرموده های شما تو بروزر میزنم فقط یک صفحه میاد با متن خطا حتی وقتی سینتکسم رو خالی میزارم هم این مشکل پیش میاد خیلی ممنون میشم اگه راهنماییم کنید
حامد قنبری · دسامبر 14, 2017 در 6:35 ق.ظ
خطایی که برات ظاهر میشه برام بفرست دلیلشو بگم.
حامد قنبری · دسامبر 14, 2017 در 6:41 ق.ظ
بزرگوار عزیز نام سرور- یوزر- پسورد و نام جدول دیتابیسو کنترل کنید. این آدرسو قرار تو اپلیکیش قرار بدیم
سعید غفاری · دسامبر 14, 2017 در 10:37 ق.ظ
این مشکل حل شد ممنون اشتباهم این بود که نام فایلم رو بدون .php ذخیره کرده بودم
حامد قنبری · دسامبر 15, 2017 در 5:28 ق.ظ
سلام. دوست عزیز آدرس فایل رو درست چک کن مشکل از اونه. یعنی سرور میگه چنین فایلی در سرور وجود نداره.
was not found on this server.
سید امیررضا تقدیسی حیدریان · آوریل 10, 2018 در 9:30 ق.ظ
با سلام من میخوام کلا بدون استفاده از وب سایت سرور و سیستم اس کیو ال خودم وصل شم بدون هاست php من با ویندوزکار میکنم چطور میشه به اپلیکیشن به سیستم خودمون وصل بشه