أفنان محمد نشر 19 مايو 2021 أرسل تقرير نشر 19 مايو 2021 كيف يمكنني ان انشئ رقم مميز يبدأ من 1 لكل صف في الجدول ويتغير مع التغيير في الجدول؟ فمثلا اذا كان لدي ثلاثه صفوف 1 2 3 وحذفت الصف الثاني فيصبح الصف الثالث هو رقم 2 ويتخزن الرقم في الدتا بيس php 1 اقتباس
0 Adnane Kadri نشر 19 مايو 2021 أرسل تقرير نشر 19 مايو 2021 أفهم أنك تريد إعادة إعداد الترتيب التلقائي بعد حذف أي صف في قواعد البيانات . مثلا : | id | name | | -- | ---- | | 1 | jhon | | 2 | hsoub| | 3 | ahmed| | 4 | ola | | 5 | walid| ثم قمت بحذف الصفين باﻷسماء jhon و hsoub تكون الصفوف مرتبة كالتالي : | id | name | | -- | ---- | | 1 | ahmed| | 2 | ola | | 3 | walid| طبعا يمكنك إعادة الترتيب بعد كل حذف على هذا النحو : ALTER TABLE products AUTO_INCREMENT=1; غير أن هذا اﻷمر أو أي تعديل ثان على صف المعرف غير مقترح عمله ﻷن أي تعديل بالمعرف الخاص بالصف سيؤدي إلى خرب علاقاته مع الجداول الأخرى ,كما أن هذا لن يقوم بترتيب الصفوف اعتبارا للصفوف التي تم حذفها , وإنما يقوم بتجنيبك مشكلة إدراج صفوف جديدة بترتيبات قد تم حذفها بالفعل (مثال : قمت بحذف الصف الأخير بالترتيب 6 , أريد من الصف التالي أن يأخذ الترتيب 6 لا 7 ) . عوضا عن ذلك يمكنك قراءة البيانات بشكل عادي من قاعدة البيانات دون أي تعديل عليها , ثم على مستوى الـ PHP سيتم إضافة عمود ترتيبي لقراءة الصفوف مرتبة بدون المساس بالمعرف id أو أي صف ثان . سيكون الأمر مشابها للتالي : نقوم بجلب كل المنتجات (مثلا) من قواعد البيانات و نضيف لكل صف رقما مميزا مرتبا على هذا النحو : <?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "db"; // إنشاء إتصال $conn = new mysqli($servername, $username, $password, $dbname); // التحقق من الإتصال if ($conn->connect_error) { die("فشل الإتصال :" . $conn->connect_error); } // إنشاء إستعلام $sql = "SELECT * FROM products"; // تنفيذ الإستعلام $result = $conn->query($sql); $products = []; if ($result->num_rows > 0) { // إضافة عمود مرتب لكل صف $i = 1; while($row = $result->fetch_assoc()) { $row['special_number'] = $i; array_push($products ,$row); $i++; } } // => return $products // إغلاق الإتصال $conn->close(); ?> لاحظ أن العملية مرنة أكثر من تعديلك لصف معين بقاعدة البيانات بعد كل تعديل على أي صف . فيمكنك تعديل بداية الترتيب و التحكم فيه , كما أنه أيضا يمكنك التحكم في ترتيب الصفوف التي جلبها من قاعدة البيانات عن طريق الإستعلام ORDER BY . اقتباس
السؤال
أفنان محمد
كيف يمكنني ان انشئ رقم مميز يبدأ من 1 لكل صف في الجدول ويتغير مع التغيير في الجدول؟ فمثلا اذا كان لدي ثلاثه صفوف 1 2 3 وحذفت الصف الثاني فيصبح الصف الثالث هو رقم 2
ويتخزن الرقم في الدتا بيس php
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.