السلام عليكم
كيف احصل على قيمة عنصر معين من الداتابيز
مثلا في حالتي اريد الحصول على قيمة admin_adminlte_theme_skin و account_activate_email
يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد
دخول
التعليقات
عليك بدراسة PHP PDO حتى تستطيع جلب البيانات من قاعدة البيانات بال PHP.
من هنا ستجد دورة في غاية البساطة تشرح لك ذلك من الصفر:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$tablename = "myTable";
$conn = new mysqli($servername, $username, $password, $dbname);
$conn->connect_error and die("Connection failed: " . $conn->connect_error);
$sql = "SELECT name,value FROM $tablename
WHERE name='account_activate_email'
OR name='admin_adminlte_theme_skin'
LIMIT 2";
$result = $conn->query($sql);
$output = [];
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$output[$row['name']] = $row['value'];
}
}
$conn->close();
echo 'account_activate_email = ' . $output['account_activate_email'] . '<br>';
echo 'admin_adminlte_theme_skin = ' . $output['admin_adminlte_theme_skin'] . '<br>';
?>
يمكنك إانشاء Class بسيط لادارة العمليات مع قاعدة البيانات :
<?php
class DB
{
private static $_instance = null;
private $_results = [];
private $_errors = [];
protected function __construct(array $connectionData)
{
try
{
$this->_pdo = new \PDO("mysql:host=" . $connectionData['host_name'] . ";dbname=" .
$connectionData['db_name'], $connectionData['db_user'], $connectionData['db_password']);
$this->_pdo->exec("set names " . 'utf8');
$this->_pdo->setAttribute( \PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION );
} catch(\PDOException $e) {
die($e->getMessage());
}
}
public static function connect(array $connectionData)
{
if(!isset(self::$_instance)) {
self::$_instance = new DB($connectionData);
}
return self::$_instance;
}
public function query(string $sql, array $params = [])
{
$query = $this->_pdo->prepare($sql);
if(count($params)) {
$x = 1;
foreach($params as $param) {
// append values to sql statement
$query->bindValue($x, $param);
$x++;
}
}
if($query->execute()) {
$this->_sql = $query;
try
{
$this->_results = $query->fetchAll(PDO::FETCH_OBJ);
}
catch(\PDOException $e){
$this->_errors = [
'status' => false,
'message' => $e->getMessage()
];
}
} else {
$this->_errors = [
'status' => false,
'message' => 'Unable to execute query'
];
}
return $this;
}
public function hasError()
{
return count($this->_errors) ? true : false;
}
public function getError()
{
return $this->_errors['message'];
}
public function results()
{
return $this->_results;
}
}
طريقة الاستخدام :
$db = DB::connect([
'host_name' => '127.0.0.1',
'db_name' => 'database_name',
'db_user' => 'database_user',
'db_password' => 'database_user_password',
]);
$data = $db->query("SELECT `name`, `value` FROM `table_name` WHERE `id` in (54, 171) LIMIT 2");
if($data->hasError()) {
die($data->getError());
}
var_dump($data->results());
كما يمكنك الاستعانة بهذه المكتبة من برمجتي