Mohammad Yousef3 نشر 1 أبريل 2021 أرسل تقرير نشر 1 أبريل 2021 أحاول استرجاع بيانات باستخدام MySQL $username = $_POST['username']; $password = $_POST['password']; $result = mysql_query('SELECT * FROM Users WHERE UserName LIKE $username'); while($row = mysql_fetch_array($result)) { echo $row['FirstName']; } ولكن يظهر هذا الخطأ اقتباس MySQL_fetch_array() expects parameter 1 to be resource, boolean given اقتباس
0 Waleed Alfakiat نشر 1 أبريل 2021 أرسل تقرير نشر 1 أبريل 2021 (معدل) قد تحدث أخطاء أثناء الاستعلام من قواعد البيانات ومنها: لا توجد بيانات مطابقة للاستعلام خطأ بالاتصال بقاعدة البيانات, وما إلى ذلك ولا يمكن قراءة البيانات عند حدوث مثل هذه الأخطاء: بتاريخ 43 دقائق مضت قال Mohammad Yousef3: $row = mysql_fetch_array($result) لذلك يجب التأكد من أنّ قيمة $result ليست false, وبذلك يمكن قراءة نتيجة الاستعلام $username = $_POST['username']; $password = $_POST['password']; $result = mysql_query("SELECT * FROM Users WHERE UserName LIKE $username"); if($result === FALSE) { die(mysql_error()); // اجراءات عند حدوث مشاكل في الاستعلام } while($row = mysql_fetch_array($result)) { echo $row['FirstName']; } تم التعديل في 1 أبريل 2021 بواسطة Alfakiat 1 اقتباس
0 Mitan Omar نشر 1 أبريل 2021 أرسل تقرير نشر 1 أبريل 2021 hi, sorry for writing with English, but i don't have arabic keyboard, in PHP if you are using the exact code like in the example, i want to tell you the you can not use $ dollar sign with single qutation, ( ' ), you have to use dubble qutation ( " ). i hope the answe is clear 2 اقتباس
0 بلال زيادة نشر 2 أبريل 2021 أرسل تقرير نشر 2 أبريل 2021 يمكنك تغيير السطر التالي بحيث تستطيع وضع المتغير إلى الاستعلام $result = mysql_query("SELECT * FROM Users WHERE UserName LIKE $username"); إلى السطر التالي $result = mysql_query("SELECT * FROM Users WHERE UserName LIKE " . $username . ""); ومن ثم التأكد من الأتصال بقاعدة البيانات , و التأكد من الجدول الذي سيتم إحداث تغييرات بداخله. اقتباس
0 سمير عبود نشر 2 أبريل 2021 أرسل تقرير نشر 2 أبريل 2021 إضافة إلى ما تم ذكره في التعليقات أعلاه، دوال _mysql لم تعد مستخدمة لأن بها العديد من مشاكل الحماية، يٌفضل الإنتقال إلى دوال _mysqli أو إستخدام PDO: مثال عن إستخدام mysqli: <?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "SELECT id, firstname, lastname FROM users"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>"; } } else { echo "0 results"; } $conn->close(); ?> مثال عن إستخدام PDO: <?php try { $host = "your_host"; $dbname = "your_database"; $user = "your_user"; $pass = "your_pass"; $dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass); $category_id = 9; $statement = $dbh->prepare("SELECT * FROM posts WHERE category_id = ?"); $statement->execute([$category_id] ); // get all: $rows = $statement->fetchAll(); } catch(PDOException $e) { echo $e->getMessage(); // handle this better, this is just for the demo! } اقتباس
السؤال
Mohammad Yousef3
أحاول استرجاع بيانات باستخدام MySQL
ولكن يظهر هذا الخطأ
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.