PDA

View Full Version : سوال: اشكال در اتصال به ديتابيس با برنامه Eseay php



csharpdoost
پنج شنبه 20 آبان 1389, 20:15 عصر
دوستان سلامي ديگر
با برنامه Eseay php ميخوام كاركنم . اين كد رو در notpad نوشته و در پوشه www مسير نصب Eseay php با پسوند php ذخيره كردم اما باز خطا ميده ميشه علتش رو بگيد ؟
با تشكر

<?php
$db=mysql_connect("localhost","root","")or die(mysql_error());
if(!$db)
{
echo "Error :cannot open thhe connection";
exit;
}
?>

javadamiri
پنج شنبه 20 آبان 1389, 20:23 عصر
کد درسته. ارور اصلی چیه؟

funpatogh
پنج شنبه 20 آبان 1389, 20:27 عصر
شما برنامه easy php خودتان را استارت هم کردید؟

csharpdoost
پنج شنبه 20 آبان 1389, 20:42 عصر
کد درسته. ارور اصلی چیه؟

Parse error: parse error in C:\Program Files\EasyPHP 3.0\www\database.php on line 3

فقط اينو نميدونم ايا اول بايد ديتابيس رو به روشي ديگه اي بسازيم بعد كانكت بشيم يا با همين طريق هم ميشه ديتابيس ساخت .

funpatogh
پنج شنبه 20 آبان 1389, 20:48 عصر
کد شما الان توش دیتابیسی نمیخواد که
شما الان فقط به mysql کانکت شدید که مشکل دارید و به نظرم هم مشکل از اینه که mysql شما run نشده

csharpdoost
پنج شنبه 20 آبان 1389, 22:30 عصر
وقتي همين فايل رو(فايل محتوي دستور كانكت )در قسمت mysql برنامه Ezeayphp كپي ميكنم و برنامه رو اجرا ميكنم اين خطارو ميگيره
Warning: mysql_connect() [function.mysql-connect (http://www.barnamenevis.org/forum/function.mysql-connect)]: Access denied for user 'root'@'localhost' (using password: NO) in C:\Program Files\EasyPHP 3.0\www\database1.php on line 3
Access denied for user 'root'@'localhost' (using password: NO)
اصلا به نظر شما اين شيوه درسته ؟
يا سوال رو ريشه اي و كلي بپرسم .ما اين دستور رو در فايل www قرار مي دهيم چطوري اين فايل بانك اطلاعاتي mysql رو پيدا كرده و با اون ارتباط برقرار ميكند؟
آيا بايد تمامي فايلهاي ما در اين قسمت باشند ؟

funpatogh
جمعه 21 آبان 1389, 02:07 صبح
شما فایل هاتون رو توی www میریزید
بعد وقتی easyphp رو نصب کردید یک آیکون مشکی رنگ در نوار استارت کنار ساعت میاد که روش کلیک میکنید و گزینه لوکال هاست رو میزنید و بعد هم فایل خودتان رو آدرس بدهید تا ران بشه
http://localhost/file.php
یک همچین شکلی

csharpdoost
جمعه 21 آبان 1389, 10:33 صبح
دوست عزيز با تشكر از توجهتون
فكر ميكنم خودم نميدونم مشكلم دقيقا كجاست؟
اگه حوصله اش رو داريد از اول شروع ميكنم.
1- برنامه Easyphp رو حذف كردم و دوباره نصب كردم .
2- در قسمت administration و سپس mysql يك ديتابيس به نام polls ساختم . و در داخل اون يك جدول به نام best_Candid با دو فيلد به نام (name با نوع varchar و ديگري فيلد poll از نوع int ) ساختم .
كدهاي لازم رو هم نوشته كه 4 تا فايل بوده و هر 4تا فايل رو در پوشه www مسير نصب Easyphp قرار دادم .
ولي وقتي اجرا ميكنم همش خطا ميده . ميشه يكي زحمت بكشه و همين فايلها رو تو كامپيوتر خودش اجرا كنه و خطاش رو به من بگه .

csharpdoost
شنبه 22 آبان 1389, 15:22 عصر
دوستان همچنان منتظرم. :ناراحت:

funpatogh
شنبه 22 آبان 1389, 19:46 عصر
برنامتون رو به این شکل تست کنید ببینید مشکل دارید؟
من هیچ مشکلی نداشتم باهاش
فقط آقا حتما باید mysql شما ران شده باشه


<?php
function DB_Connect(){
$hostname = "localhost";
$username = "root";
$password = "";
$DB_name = "optima";

$link = mysql_connect($hostname,$username,$password)or die("Cannot Connect To Databaseffffff");
mysql_select_db("$DB_name")or die("Cannot Select Database");

mysql_query("SET NAMES 'utf8'", $link);
mysql_query("SET character_set_connection = 'utf8'", $link);
return $link ;
}
if(DB_Connect())
echo "Connected";
else
echo "Not Connected";
?>

csharpdoost
یک شنبه 23 آبان 1389, 19:47 عصر
دوستان عزیز با تشکر مشکلم حل شد .
این تغییر رو دادم که به جای یوزر root همون یوزری که تو پیغام نمایش می داد رو گذاشتم یعنی : root@localhost .
حال این سوال پیش میاد چرا شما با یوزر root میتونید به دیتابیس کانکت بشید اما من نمیتونم و باید با یوزر root@localhost کانکت بشم .؟

csharpdoost
یک شنبه 23 آبان 1389, 19:50 عصر
اقای funpatogh شما از کجا مطمئنید من اقا هستم ؟:لبخندساده:

shahriyar3
یک شنبه 23 آبان 1389, 20:03 عصر
دوستان عزیز با تشکر مشکلم حل شد .
این تغییر رو دادم که به جای یوزر root همون یوزری که تو پیغام نمایش می داد رو گذاشتم یعنی : root@localhost .
حال این سوال پیش میاد چرا شما با یوزر root میتونید به دیتابیس کانکت بشید اما من نمیتونم و باید با یوزر root@localhost کانکت بشم .؟
گرامی
تنظیمات داخلی easy php هست میتونید عوض کنید
وقتی صفحه اول برنامه phpmyadmin باز کنید سمت راست کلیه اطلاعات مورد نیاز شما به دیتا بیس و نوشته

funpatogh
یک شنبه 23 آبان 1389, 20:18 عصر
اقای funpatogh شما از کجا مطمئنید من اقا هستم ؟:لبخندساده:
حالا فرقی هم نمیکنه
چون اکثرا آقا هستند من هم طبق عادت آقا گفتم
مهم جواب شما بوداااااااااااا:چشمک: نه این کلمه آقا

csharpdoost
دوشنبه 24 آبان 1389, 20:42 عصر
گرامی
تنظیمات داخلی easy php هست میتونید عوض کنید
وقتی صفحه اول برنامه phpmyadmin باز کنید سمت راست کلیه اطلاعات مورد نیاز شما به دیتا بیس و نوشته
دوست عزيز
اگه منظورتون اينكه طبق تصوير زير phpmyadminرو باز كنيم :
60334
كه بايد بگم براي من خطاي زير ور ميده . ميشه كمك كنيد؟
60335
در ضمن بايد بگم من با يوزر root@localhost هم كه وارد ميشم در myaql محدوديت يوزر رو برداشته anyuser تعريف كردم . حالا چطوري بايد با يوزر هاي دلخواه و با محدوديت هاي خاص وارد بشم ؟

funpatogh
دوشنبه 24 آبان 1389, 21:13 عصر
http://localhost/phpmyadmin/ این آدرس رو باز کنید

csharpdoost
دوشنبه 24 آبان 1389, 21:45 عصر
http://localhost/phpmyadmin/ این آدرس رو باز کنید
اين ادرس برام باز نميشه همون پيغام تصوير 2 در بالا رو ميده .
اما اگه منظورتون تصوير زيره كه از Administration باز ميكنم اما تنظميات خيلي زيادي نداره .
60339

funpatogh
دوشنبه 24 آبان 1389, 21:52 عصر
منظور شهریار هم همین عکس بود سمت چپ زده
User: root@localhost
اما اینکه چرا شما باید root@localhost رو بنویسی تا برنامت کار کنه نمیدونم علتش چیه
من با همشون کار کردم و root کافی بود شایدم به قول شهریار تنظیمات easyphp این شکلیه
حالا مشکلی داره مگه؟
مهم اینه که کار میکنه دیگه
اگر ناراضی هستید از برنامش خوب از xampp wampp و ... استفاده کنید

csharpdoost
دوشنبه 24 آبان 1389, 22:33 عصر
منظور شهریار هم همین عکس بود سمت چپ زده

User: root@localhost
اما اینکه چرا شما باید root@localhost رو بنویسی تا برنامت کار کنه نمیدونم علتش چیه
من با همشون کار کردم و root کافی بود شایدم به قول شهریار تنظیمات easyphp این شکلیه
حالا مشکلی داره مگه؟
مهم اینه که کار میکنه دیگه
اگر ناراضی هستید از برنامش خوب از xampp wampp و ... استفاده کنید

نارضايتي من بيشتر به خاطر اينكه نميتونم در تنظيمات mysql اين كاربر anyuser رو بردارم چون ديگه نميتونم كانكت بشم . اين خودش يه مشكله ديگه نه ؟
من تازه شروع كردم و با اين برنامه ها كار نكردم . براي شروع هم از easyphp استفاده كردم .
خوب اين easyphp به اين دليل كه هم apache و هم mysql و هم php رو با هم داره راحته.
اگه شما با اونا كار كرديد و اموزش هم ازشون داريد بي زحمت لطف كنيد ممنون ميشم .

funpatogh
دوشنبه 24 آبان 1389, 22:38 عصر
به نظر بنده شما از wampp استفاده کن
در ضمن تمامی این برنامه ها که گفتم هم php apache mysql phpmyadmin رو دارند
شما نصب کنید و سوال داشتید بپرسید
http://kajdom.directdl.net/Downloads/software/PHP/WampServer2.0i%5Bkajdom.net%5D.rar

csharpdoost
سه شنبه 25 آبان 1389, 13:13 عصر
به نظر بنده شما از wampp استفاده کن
در ضمن تمامی این برنامه ها که گفتم هم php apache mysql phpmyadmin رو دارند
شما نصب کنید و سوال داشتید بپرسید
http://kajdom.directdl.net/Downloads/software/PHP/WampServer2.0i%5Bkajdom.net%5D.rar
دوست خوب با تشکر اما پسوردشو نذاشتید .
در ضمن من xamp رو من نصب کردم اما نمیدونم چطوری باهاش کار کنم چون نه ایکنی نه حتی مسیر نصبی رو نشون نمیده .

funpatogh
سه شنبه 25 آبان 1389, 21:05 عصر
شرمنده نزاشته بود فکر کرد م نداره
رمز عبور: www.kajdom.net (http://www.kajdom.net/)
xampp شما کدوم ورژن هست پیشنهاد میکنم که ورژن 1.7.0 یا 1.7.3 رو نصب کنید

امکان نداره که موقع نصب آدرس نپرسه
http://irupload.ir/images/l791exsgkco70rq5rdun.jpg (http://irupload.ir/images/l791exsgkco70rq5rdun.jpg)

shahriyar3
سه شنبه 25 آبان 1389, 21:25 عصر
گرامی
مگه بدون یوزر میشه با سرور mysql کار کرد که شما این انتظار و از برنامه داری؟؟؟!!!
شما یوزر قبلی رو که حذف کردید باید یوزر جدید تعریف میکردید به هر نامی بعد موقع کانکت شدن به از برنامه به دیتابیس از همین یوزر و پسورد استفاده کنید!!
وقتی easy php رو استارت میکنید فکر میکنم که کامل run نمیشه باید از منو هاش یکبار تمام سرویس هاشو استارت کنید یا یکبار کل برنامه رو از همون جا restart کنید
شما اگه نتونید از برنامه easyphp استفاده کنید قطعا از برنامه های دیگه هم نمیتونید استفاده کنید

csharpdoost
سه شنبه 25 آبان 1389, 21:36 عصر
xampp شما کدوم ورژن هست پیشنهاد میکنم که ورژن 1.7.0 یا 1.7.3 رو نصب کنید




دوست خوب با تشكر
با عرض پوزش ظاهرا اون برنامه اي كه من از xampp دارم upgrade اون هست نه برنامه اصلي.

csharpdoost
چهارشنبه 26 آبان 1389, 07:48 صبح
مگه بدون یوزر میشه با سرور mysql کار کرد که شما این انتظار و از برنامه داری؟؟؟!!!
دوست عزيز
نميدونم شما چرا اين برداشت رو از حرفهاي من كرديد . اما منظور من اين نيست مشكل من اين بود كه نميتونستم با يوزر root كانكت بشم كه در برنامه username:root@localhost رو تغيير داده و در myaql هم همون يوزر root را به anyuser تغيير داده و تونستم كانكت بشم . حالا سوال اين بود كه من چرا نميتونم راحت با root كانكت بشم مثل شما ؟

شما یوزر قبلی رو که حذف کردید باید یوزر جدید تعریف میکردید به هر نامی بعد موقع کانکت شدن به از برنامه به دیتابیس از همین یوزر و پسورد استفاده کنید!!
طي تغييراتي كه گفتم user حذف نميشه حتي root بلكه anyuser به ليست كاربران اضافه ميشه .
وقتی easy php رو استارت میکنید فکر میکنم که کامل run نمیشه باید از منو هاش یکبار تمام سرویس هاشو استارت کنید یا یکبار کل برنامه رو از همون جا restart کنیدنميدنم منظورتون از كامل run شدن چيه اما طبق تصوير فكر نميكنم مشكل run داشته باشم گرچه چندين بار هم restart كردم .
60399
درضمن easyphp ورژن 5 رو هم نصب كردم اما داخل جداول حروف فارسي رو بصورت علامت سوال نشون ميده (مثلا به جاي كلمه علي ،‌؟؟؟نشون ميده). خلاصه چند هفته است درگير اين مساله ابتدايي هستم . ازتون خواهش ميكنم يه بزرگواري مراحل تغييرات رو هنگام تعريف ديتابيس و جدول دقيق بيان كنه فكر ميكنم از تغييرات باشه كه من نميدونم .

csharpdoost
چهارشنبه 26 آبان 1389, 07:58 صبح
http://irupload.ir/images/l791exsgkco70rq5rdun.jpg (http://irupload.ir/images/l791exsgkco70rq5rdun.jpg)

دوست عزيز با تشكر
اينو دانلود كردم اماهمون مشكلي كه در تاپيك بالا مطرح كردم فارسي رو بصورت علامت سوال (???) نشون ميده .

funpatogh
چهارشنبه 26 آبان 1389, 14:16 عصر
Collation جدول و فیلد های خودتان را utf8_persian_ci کنید و بعد از کانکت به mysql و انتخاب دیتابیس هم از


mysql_query("SET NAMES utf8");
mysql_set_charset("utf8");

استفاده کنید

csharpdoost
چهارشنبه 26 آبان 1389, 16:09 عصر
Collation جدول و فیلد های خودتان را utf8_persian_ci کنید و بعد از کانکت به mysql و انتخاب دیتابیس هم از


mysql_query("SET NAMES utf8");
mysql_set_charset("utf8");

استفاده کنید
دوست عزيز
منظورم در داخل خود mysql هستش نه در صفحه وب .
گرچه فيلد رو با هرد فارسي و انگليسي هم امتحان كردم .
60417

funpatogh
چهارشنبه 26 آبان 1389, 16:25 عصر
منظور بنده هم همون سوال شما بود
صفحتون هم با encoding utf8 ذخیره کنید و توی head هم چارست رو utf-8 بگزارید و اون فیلد که توی جدول هم داری utf8_persian_ci کنید و بعد از ارتباط هم اون 2 خط کدی که دادم رو بنویسید
از این به بعد داده های جدید که ثبت میکنید فارسی نمایش داده میشود

csharpdoost
چهارشنبه 26 آبان 1389, 19:54 عصر
با تشكر از دوستان خصوصا اقاي funpatogh
برنامه wampp رو حذف و نصب كردم .درmysql ظاهرا در دو جا بايد colltion رو persian كنيم.البته هنگام ساخت جدول.
با user : root هم تونستم كانكت بشم .باورتون ميشه همه اين اتفاقات با همين تغيير كوچيك انجام شد . جل الله خالق!!!!:متعجب::قهقهه:
حالا مرحله بعد كه در پستهاي ديگه مطرح ميكنم .