PDA

View Full Version : سوال: سلام دوستان ی مشکل برخوردم خواهشا راهناییم کنید



mahdifi
شنبه 30 آبان 1394, 21:06 عصر
سلام وقتی فایل php رو اجا میکنم کل صفحه باز میشه ولی ی قسمت که مربوط به خوندن استان ها از دیتا بیس هست این ارور رو مده زیرشم استان هارو نمایش میده
Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\new1.php on line 176


اینم کد اون قسمت

<?php
$connection1= mysql_connect ("localhost","root","");
mysql_select_db("iran",$connection1);
$query="SELECT * FROM ostan";
$result= mysql_query($query);
while($row= mysql_fetch_array($result)){
echo "<option value='". $row['id']."'>";
echo $row['name'];
echo "</option>";
}
?>

Unique
شنبه 30 آبان 1394, 22:32 عصر
این خطا نیست ،‌داره میگه افزونه mysql پشتیباین نمیشه و باید از mysqli یا PDO استفاده کنی. mysql تا جایی که میدونم از نسخه ۷ دیگه کلا پشتیبانی نمیشه و بهتره از mysqli یا PDO استفاده کنی.

اما اگه نمیخوای E_DEPRICATED را ببینی قبل از هر چیز اینو بنویس :

error_reporting(E_ALL ^ E_DEPRECATED);

kabootar_y
شنبه 30 آبان 1394, 22:34 عصر
این خطا میگه که روش استفاده از mysql_ دیگه منسوخ شده و در آینده این توابع حذف خواهد شد
شما باید از mysqli_ و یا از PDO استفاده کنید

mahdifi
یک شنبه 01 آذر 1394, 00:48 صبح
این خطا میگه که روش استفاده از mysql_ دیگه منسوخ شده و در آینده این توابع حذف خواهد شد
شما باید از mysqli_ و یا از PDO استفاده کنید


این خطا نیست ،‌داره میگه افزونه mysql پشتیباین نمیشه و باید از mysqli یا PDO استفاده کنی. mysql تا جایی که میدونم از نسخه ۷ دیگه کلا پشتیبانی نمیشه و بهتره از mysqli یا PDO استفاده کنی.

اما اگه نمیخوای E_DEPRICATED را ببینی قبل از هر چیز اینو بنویس :

error_reporting(E_ALL ^ E_DEPRECATED);
یعنی دیگه نمیشه از mysqlاستفاده کرد؟ اموزش mysqliو pdo کجاهستش

hamedarian2009
یک شنبه 01 آذر 1394, 09:21 صبح
یعنی دیگه نمیشه از mysqlاستفاده کرد؟ اموزش mysqliو pdo کجاهستش

http://www.w3schools.com/php/php_mysql_connect.asp

Unique
دوشنبه 02 آذر 1394, 00:53 صبح
یعنی دیگه نمیشه از mysqlاستفاده کرد؟ اموزش mysqliو pdo کجاهستش
شدن که میشه ولی نسخه ۷ کلا دیگه وجود نداره ! اگه اون خطی که گفتم را بگذاری خطای deprecated نمیگیری !
آموزش mysqli و PDO هم توی همین انجام و گوگل موجوده ! مثلا اینجا (http://codular.com/php-mysqli)

djtrex
دوشنبه 02 آذر 1394, 11:15 صبح
اکستنشن mysql نسخه ۵.۵ با این rfc (https://wiki.php.net/rfc/mysql_deprecation) منسوخ شده و نسخه ۷ با این rfc (https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7) به کل حذف شده.

دلیلشم هم نوشته شده ولی من خلاصه میگم. این اکستنشن برای mysql ۳.۲۳ معرفی شده و از سال ۲۰۰۶ به بعد هم امکان جدیدی معرفی نشده! ( آخرین نسخه mysql در حال حاضر ۵.۷ هست)
در نتیجه با یه چیزی قدیمی دارید کار می کنید!

از طرفی خود php هم دیگه از شهریور امسال از نسخه ۵.۴ پشتیبانی نمی کنه و نسخه ۵.۵ هم فقط تا 7 ماه دیگه (۱۰ جولای ۲۰۱۶) تنها از لحاظ امنیتی ساپورت میشه (اکتیو ساپورت نیست)
http://php.net/supported-versions.php

حالا شما میتونید با E_ALL ^ E_DEPRECATED اون پیام رو حذف کنید و کدتون کار میکنه ولی بقیه کدها و امکانات منسوخ شده رو هم فعال کردید و ممکنه مشکلات امنیتی براتون پیش بیاد:
سایر چیزهایی که منسوخ شده:
http://php.net/manual/en/migration55.deprecated.php
http://php.net/manual/en/migration54.deprecated.php
http://php.net/manual/en/migration53.deprecated.php

در حقیقت پیام منسوخ شدن آخرین پیام برنامه نویس های هسته php هست که میگه ما اینو قراره حذف کنیم (نسخه ۷) همین الان مهاجرت کنید قبل از اینکه دیر بشه!!!