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

السؤال

نشر

مرحبا :)

صادفتني مشكلة في كود 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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...