پی اچ پی
سلام دوستان
من یه فایل پی اچ پی برای ارتباط با دیتابیس آنلاین از یک آموزش گرفتم که وقتی آپلودش میکنم توی هاستم موقعی که توی ادرس بار نشونیشو میزنم ارر میده
ممنون میشم کمکم کنید حلش کنم
متن ارر
۱ ۲ ۳ ۴ |
Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in /home/hamedafr/public_html/misaq/userslist.php on line ۲۱ Warning: mysqli_fetch_array() expects parameter ۲ to be integer, string given in /home/hamedafr/public_html/misaq/userslist.php on line ۲۱ {"result":[]}// |
کد پی اچ پی
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ ۱۷ ۱۸ ۱۹ ۲۰ ۲۱ ۲۲ ۲۳ ۲۴ ۲۵ ۲۶ ۲۷ ۲۸ ۲۹ ۳۰ ۳۱ |
<? $databasehost = "localhost"; $databasename = "hamedafr_misaq"; $databaseusername ="*****"; $databasepassword = "*****"; $con = mysqli_connect($databasehost,$databaseusername,$databasepassword) or die(mysqli_error($con)); mysqli_select_db($con,$databasename) or die(mysqli_error($con)); mysqli_query($con,"SET CHARACTER SET utf8"); $sql = "SELECT DISTINCT ID,nam,semat,kod FROM `tblusers` "; $result = mysqli_query($con,$sql); if (!$result) { echo $result.'n'; echo mysqli_error($con); exit; } else { $rows = array(); <strong> while($row=mysqli_fetch_array($result,MYSQL_ASSOC)){ </strong> $temp["ID"]=$row['ID']; $temp["nam"]=$row['nam']; $temp["semat"]=$row['semat']; $temp["kod"]=$row['kod']; $rows[]=$temp; } print json_encode(array("result"=>$rows),JSON_UNESCAPED_SLASHES); } ?> |
خط ارر رو پررنگ کردم
پاسخ ها ( 2 )
سلام
مشکل از نسخه ی PHP هست، این کدهایی که شما نوشتید در نسخه های ۵ به بالا پشتیبانی میشود.
در Cpanel(کنترل پنل هاست) یه بخش داره که ورژن PHP رو میتونید عوض کنید.
توابع PHP در نسخه های مختلف PHP متفاوت هستند، و اگر آموزشی را دنبال میکنید که مثلا با PHP نسخه ۶ داره،؛ پیش میره، قطعا برخی توابعش در PHP نسخه های بالا کار نمیکنه، لذا باید بروز کنید.
موفق باشید.
اقای آخوندی عزیز
ممنونم از پاسختون
ورژن پی اچ پی هاست من ۷.۲ هست و آخرین ورژنیه که نشون میده
الان که کدهاتون رو مجدد بررسی کردم
شما همه جا از mysqli استفاده کردید ولی درخط ۲۱ از mysql استفاده کردید(نمیدونم اطلاع دارید یا نه ولی mysql منقضی شده)
متاسفانه با تغییر به mysqliبازم تغییر نکرد
پس دوست عزیز، آموزشی که دارید دنبالش میکنید یه جای کارش می لنگه …
الان که مجدد نگاه میکنم، پس از اون مشکل قبلی، مشکل دیگه ای هم که دارید اینه که mysqli_fetch_all() نکردید؛ شما زمانی باید از mysqli_fetch_array استفاده کنید که فقط یک فیلد از جدول رو بخواید نمایش بدید.