اذهب إلى المحتوى
  • 0

مشكلة mysqli_query() expects parameter؟

Walid Khaffou

السؤال

مرحبا :)

صادفتني مشكلة في كود MySQL، حيث يعطيني هذا السطر :

Warning: mysqli_query() expects parameter 1 to be mysqli, string given in .. on line 8

الكود الذي كتبته :

<?php
$dbse = mysqli_connect("localhost", "root", "root", "dbname") or die (mysql_error());
mysqli_select_db($dbse, "dbname");        
if (!class_exists('DB')) {
  class DB{
  private $sql;
  public function query($sql){
  	return mysqli_query($dbse,$sql) or die(mysql_error()); // Line 8
  }
  public function fetch($sql){
    $Data = array();
    $Q = $this->query($sql);
    while ($row = mysqli_fetch_array($Q)) {
    	$Data[] = $row;
    }
    return $Data;
    }
  }
}
?>
ما السبب في ذلك، وما الحال ؟! :(
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

كما أخبرك الأخ يحيى

بتاريخ 9 ساعات قال يحيى:

المشكلة أنك كتبت كودًا خليطا من  mysqli وَ mysql وهذا لن يعمل.

فدالة mysqli_query() تأخذ ثلاثة معاملات وهي connection وquery وresultmode:

  • معامل connection: وهو معامل إجباري يحدد الاتصال الذي سيستخدمه MySQL.
  • معامل query: وهو معامل إجباري أيضا، يحدد سلسلة الإستعلام النصية.
  • أما معامل resultmode: فهو معامل إختياري، وهو ثابت فإما أن يكون MYSQLI_USE_RESULT (استخدم هذا الخيار إذا كنت ستسترجع مجموعة كبيرة من البيانات) أو MYSQLI_STORE_RESULT (وهو الخيار الافتراضي).

وأنت كما ترى استخدمتها بشكل خاطئ، للمزيد من المعلومات عن هذه الدالة أنصحك بقراءة التوثيق الرسمي أو هذا الدرس.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

السلام عليكم

أعتقد أن سبب المشكلة لديك يكمن في هذا السطر

$dbse = mysqli_connect("localhost", "root", "root", "dbname") or die (mysql_error());

تأكّد من أن تنفيذه يعطيك object في $dbse وأن الاتصال يتم فعلًا.

قم بإضافة السطر التالي بعده مباشرة وتأكد من أنه obj وليس string.

var_dump($dbse);
exit();

والسلام عليكم ورحمة الله وبركاته

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...