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

السؤال

نشر

السلام عليكم حياكم الله جميعاً

كيف ممكن اجلب بيانات من جدول mysql

 بدون الحاجة لاستعمال loop

لإنني عندما استخدم loop البيانات عم تجي مخربطة

يا ريت لو في شرح أو طريقة تدلونا عليها

الله يجزاكم الخير جميعاً ❤️

Recommended Posts

  • 0
نشر

يمكنك جلب جميع البيانات من أي جدول بدون إستخدام أي Loop.
 

  • إذا كان لدينا الجدول users ونريد جلب كل أسماء المستخدمين ( user_name ) فنقوم بجلب البيانات من خلال التعليمة التالية:
SELECT `user_name` FROM `users`;


 

  • أما إذا أردنا جلب كل بيانات المستخدمين وليس فقط الإسم فيمكننا ذلك من خلال التالي:
SELECT * FROM `users`;

 

  • 1
نشر

ممكن إرفاق صورة للكود عندك و صورة أيضا لنتيجة الكود؟ لمعرفة لماذا ترجع البيانات عدم مرتبة. 

لجلب بيانات من قاعدة البيانات بدون Loop هنا يتم ارجاع فقط صف واحد من داخل قاعدة البيانات. 

أما عند استخدام Loop يتم ارجاع جميع الصفوف من قاعدة البيانات فمثلا الأكواد التالي, مكتوبة بلغة PHP و في المثال الأول لو أردت جلب جميع صفوف جدول users وعرض جميع الأعضاء يمكنك استخدام الكود التالي: 

SELECT * FROM table_name  // الاستعلام المستخدم في جلب جميع البيانات من قاعدة البيانات

<?php

$conn = new mysqli("localhost", "username", "password", "database");

$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
  // output data of each row
  while($row = $result->fetch_assoc()) {
    echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
  }
}
?>

هنا يتم ارجاع الصفوف أي جميع بيانات الأعضاء من داخل قاعدة البيانات بدون أي شرط. 

أما من خلال الكود التالي يتم ارجاع الصفوف من داخل قاعدة البيانات بشرط معين من خلال الأمر WHERE. 

SELECT id, name, FROM users WHERE name='bilal'" // استعلام جلب البيانات بشرط تحدده
<?php

$conn = new mysqli("localhost", "username", "password", "database");

$sql = "SELECT id, name FROM users WHERE name='bilal'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
  // output data of each row
  while($row = $result->fetch_assoc()) {
    echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
  }
}
?>

هنا يتم أرجاع جميع الأعضاء الذين يكون مخزن اسمائهم باسم Bilal داخل قاعدة البيانات كما تلاحظ في المثال أعلى, عن طريق أسناد قيمة شرط وهي WHERE name='bilal' إلى الأستعلام.

إذا لم يتم استخدام Loop يتم ارجاع صف واحد فقط تحدده في الأستعلام عن طريق وضع شرط مثل هذا الكود.

$sql = "SELECT id, name, FROM users WHERE id=1";
<?php

$conn = new mysqli("localhost", "username", "password", "database");

$sql = "SELECT id, name FROM users WHERE id=1";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
echo "id: " . $row["id"]. " - Name: " . $row["name"];

?>

لاحظ أنه استبدلنا شرط جلب البيانات عن طريق الاسم إلى id اليوزر داخل قاعدة البيانات, لأنه من الممكن تكرار الاسم ولكن لا يمكن تكرار id اليوزر, فعندها سيتم جلب صف واحد أي العضو الذي يكون له id = 1 داخل قاعدة البيانات ولو لاحظت أيضا لم نستخدم loop في المثال الأخير لأننا نقوم بجلب صف واحد وليس عدة صفوف من داخل قاعدة البيانات.

جميع الأكواد المستعملة في الأمثلة هي  أكواد من لغة PHP.

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...