السلام عليكم ورحمة الله. لا أملك إجابة حاليا.
لكن أنصحك بأن تسأل في قسم البرمجة بموقع الأكاديمية، قد تجد جوابا هناك :)
<?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;
}
}
}
?>
الكود هكذا أوضح
للأسف لا أعرف mysqli
كتبت كلام مسحه المتصفح جرب هذا
class DB{ global $dbse ;
private $sql;
public function query($sql){
return mysqli_query($dbse,$sql) or die(mysql_error()); // Line 8
}
استبدل
return mysqli_query($dbse,$sql) or die(mysql_error()); // Line 8
بـ return mysqli_query($dbse,$sql) or die(mysqli_error()); // Line 8
المشكلة ان متغير dbse خارج الكلاس ولايمكن إدخاله للكلاس الا بهذه الطريقة
او اختصر ها وضع دالة الاتصال في نفس الكلاس
<?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;
//////////////////////// New One
protected $dbse;
public function query($sql){
return mysqli_query($this->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;
}
}
$x = DB();
$x->dbse = $dbse;
}
?>
*جرب الكود بهذه الطريقة أظنه هكذا أفضل وأصح...
<?php
$dbse = @mysqli_connect("localhost", "root", "root") or die (mysql_error());
$db = "dbname";
mysqli_select_db($db);
if (!class_exists('DB')) {
class DB{
private $sql;
public function query($sql){
mysqli_query($db,$sql) or die(mysql_error()); // Line 8
return;
}
public function fetch($sql){
$Data = array();
$Q = $this->query($sql);
while ($row = mysqli_fetch_array($Q)) {
$Data[] = $row;
}
return $Data;
}
}
}
التعليقات