آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

مشکل در class اتصال به دیتابیس در PHP

Motaba_Love_PHP  9 سال پیش  9 سال پیش
0 0

سلام خسته نباشید من با توجه به آموزش سایت که خریدم (آموزش LAMP) برای اتصال به دیتابیس از این کلاس استفاده شده بود

منم نشستم خودم نوشتمش ولی خب همه چی درسته به جز متد first !!!! 

اگه میشه راهنماییم کنید ممنون

class Database
{
private $connection;

public function __construct()
{
global $config;
$host = $config['db']['host'];
$user = $config['db']['user'];
$pass = $config['db']['pass'];
$name = $config['db']['name'];

$this->connection = new mysqli($host, $user, $pass, $name);
$this->connection->query("SET NAMES utf8");
}

public function query($sql)
{
$result = $this->connection->query($sql);
$records = array();
if ($result->num_rows == 0) {
return null;
}
while ($rows = $result->fetch_assoc()) {
$records[] = $rows;
}
return $records;
}

public function first($sql)
{
$records = $this->connection->query($sql);
if ($records == null) {
return null;
}
return $records[0];
}

public function connection()
{
return $this->connection;
}

public function close()
{
$this->connection->close();
}
}
0 0
قبلش هم فایل config.php رو include_once کردم ! بازم کار نمی کنه (9 سال پیش)
0 0
متن ارور هم قرار بدید... (9 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
سجاد عباسی  9 سال پیش
+1 0

مشکل در این خط از کد هست

        $records = $this->connection->query($sql)

که باید به این تبدیل بشه:

        $records = $this->query($sql);
0 0
ممنون ولی یک سوال چرا بقیه قسمتا از $this->connection-> استفاده میشه ولی در این قسمت فقط از این $this-> ؟؟؟؟؟؟ (9 سال پیش)
+1 0
چون در بقیه قسمت ها مستقیم به کانکشن متصل میشوید و یه کوری میزنید و... اما در first همون query هست اما با این تفاوت که فقط یک سطر میخاید پس باید همون متد query هست ولی یه سطر برگرندادنه میشه پس متد query رو صدا میزنیم از مقدار برگردانده شده فقط یک سطر رو return میکنیم. (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .