تغطية مباشرة لأحداث منتدى الإعلام الجديد المقام بمدينة أبوظبي
هل تقترح تمديد مسابقة سوالف كاست؟

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > PHP
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد  
 
LinkBack أدوات الموضوع
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#1 (permalink)  
للأخوان الخبراء - كيف يمكن عمل تحرير جماعي للمصفوفات ؟


السلام عليكم

لدي سؤال جديد كالعادة

وهو كيف يمكنني عمل تحديث جماعي للحقول التي في قاعدة البيانات

كمثال :


في مثل الصفحة التي في الصورة قد تحتاج الى وقت لتحرير جميع الترتيبات

أما هذه الصفحة

فلا أعتقد انها قد تحتاج لوقت

الذي اريد معرفته
كيف يمكنني عمل تحديث جماعي لمحتويات قاعدة البيانات (مثل الصورة الثانية)







الرجل الخارق غير متواجد حالياً   قديم 14-09-2005, 11:23 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#2 (permalink)  

[CENTER]رفــ("up")ـع[/CENTER]






الرجل الخارق غير متواجد حالياً   قديم 24-09-2005, 09:53 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Sep 2003-
#3 (permalink)  
السلام عليكم

كيف حالك

انتظرت معاك ومحد جاوب لحد الان قلت جاء دوري مره ثانيه

الخطوات بطريقه سهله وراح تفهمها ان شاء الله
اولا اضف عمود جديد على الاعمده التي في القاعده
مثلا عندك الاعمده اسمائها id , name url
id هو المفتاح الاساسي للصفوف يعني Primary key
name اسم الوصله
url عنوان الوصله بالضبط مثل الصوره اللي انت مسويها الان نبدأ
اضف عمود جديد وعطه اسم مثلا cool وخاصيته SMALLINT او INT براحتك
الان لازم ندخل ارقام بصفوف cool فقط , يعني نشتغل بالصفوف العمود هذا فقط لحد ما نمليه ارقام على عدد
المواضيع اللي عندك (تذكر بعدين نرتبهم) الان نبي ندخل ارقام عشوائيه في صفوف العمود هذا بالذات واضحه ؟
//نبدأ بادخال الارقم في الصفوف الجديده فقط
//وترك باقي المعلومات كما هي
كود PHP:
$superman mysql_query("select * from table_name"); //الاستعلام عن المحتويات
$num 1//بدأ من الرقم واحد الى الخ
while($play mysql_fetch_array($superman)) {
$id $play['id']; // نختار المفتاح الاساسي لكل صف عشان ما نضيع :)
//نبدأ بادخال المعلومات صف صف بانتظام
mysql_query("update IGNORE table_name set cool = '$num' where id=$id") or die(mysql_error());
$num++;

الان لترتيب الصفوف تكتب امر MYSQL وهو
كود PHP:
$superman mysql_query("select * from table order by cool"); 
او لعرض من الكبير للصغير:
كود PHP:
$superman mysql_query("select * from table order by cool desc"); 
ملاحظه الان تقدر تغير اي رقم ويصير الاول ولا داعي للقلق اذا كان هناك رقمين متاساوين تقدر تعدليهم براحتك
واصلا هم اساسا راح يكونون تحت بعض بعد التصفيف
اهم شي لا تنسى تعمل تعديل على التصميم وتخليه يقرأ الارقام اللي في cool
الphp جميل صح؟

تحياتي وبالتوفيق






Death غير متواجد حالياً   قديم 25-09-2005, 07:44 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#4 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة Death
كيف حالك

انتظرت معاك ومحد جاوب لحد الان قلت جاء دوري مره ثانيه

الخطوات بطريقه سهله وراح تفهمها ان شاء الله
اولا اضف عمود جديد على الاعمده التي في القاعده
مثلا عندك الاعمده اسمائها id , name url
id هو المفتاح الاساسي للصفوف يعني Primary key
name اسم الوصله
url عنوان الوصله بالضبط مثل الصوره اللي انت مسويها الان نبدأ
اضف عمود جديد وعطه اسم مثلا cool وخاصيته SMALLINT او INT براحتك
الان لازم ندخل ارقام بصفوف cool فقط , يعني نشتغل بالصفوف العمود هذا فقط لحد ما نمليه ارقام على عدد
المواضيع اللي عندك (تذكر بعدين نرتبهم) الان نبي ندخل ارقام عشوائيه في صفوف العمود هذا بالذات واضحه ؟
//نبدأ بادخال الارقم في الصفوف الجديده فقط
//وترك باقي المعلومات كما هي
كود PHP:
$superman mysql_query("select * from table_name"); //الاستعلام عن المحتويات
$num 1//بدأ من الرقم واحد الى الخ
while($play mysql_fetch_array($superman)) {
$id $play['id']; // نختار المفتاح الاساسي لكل صف عشان ما نضيع :)
//نبدأ بادخال المعلومات صف صف بانتظام
mysql_query("update IGNORE table_name set cool = '$num' where id=$id") or die(mysql_error());
$num++;

الان لترتيب الصفوف تكتب امر MYSQL وهو
كود PHP:
$superman mysql_query("select * from table order by cool"); 
او لعرض من الكبير للصغير:
كود PHP:
$superman mysql_query("select * from table order by cool desc"); 
ملاحظه الان تقدر تغير اي رقم ويصير الاول ولا داعي للقلق اذا كان هناك رقمين متاساوين تقدر تعدليهم براحتك
واصلا هم اساسا راح يكونون تحت بعض بعد التصفيف
اهم شي لا تنسى تعمل تعديل على التصميم وتخليه يقرأ الارقام اللي في cool
الphp جميل صح؟

تحياتي وبالتوفيق
مشكور أخوي لكني طبقت الدرس بلا فائدة
فعندما اكتب رقم في أحد الفورمات يتحدث الرقم لجميع البيانات التي في القاعدة






الرجل الخارق غير متواجد حالياً   قديم 13-10-2005, 02:04 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#5 (permalink)  
هذا الكود الذي وضعته

كود PHP:
<?php
echo "<html dir=\"rtl\">\n";
echo 
"\n";
echo 
"<head>\n";
echo 
"<meta http-equiv=\"Content-Language\" content=\"ar-om\">\n";
echo 
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1256\">\n";
echo 
"<title>&Ccedil;&aacute;&Ecirc;&Iacute;&szlig;&atilde; &Egrave;&Ccedil;&aacute;&Atilde;&THORN;&Oacute;&Ccedil;&atilde;</title>\n";
echo 
"</head>\n";
echo 
"\n";
echo 
"<body bgcolor=\"#99CCFF\">\n";
include(
"../config.php");
if(
$do==update){
include(
"../config.php");
        
$query="select * from cats order by nid";
$result=mysql_query($query);
while(
$row mysql_fetch_array($result)) {
mysql_query("update IGNORE cats set nid= '$site' where id=$row[id]") or die(mysql_error());
}


    echo
"update";
}
echo 
"\n";
echo 
"<p align=\"center\"><b><font color=\"#FF0000\" size=\"5\">&atilde;&Iuml;&iacute;&Ntilde; &Ccedil;&aacute;&Atilde;&THORN;&Oacute;&Ccedil;&atilde;</font></b></p>\n";
echo 
"<p align=\"center\"><a href=\"addcat.php\">&Aring;&Ouml;&Ccedil;&Yacute;&Eacute; &THORN;&Oacute;&atilde; &Igrave;&Iuml;&iacute;&Iuml;</a></p>\n";
echo 
"<form method=\"POST\" action=\"?do=update\">\n";
echo 
"    <div align=\"center\">\n";
echo 
"        <table border=\"1\" width=\"100%\" id=\"table1\" bordercolor=\"#008080\">\n";
echo 
"            <!-- MSTableType=\"nolayout\" -->\n";
echo 
"            <tr>\n";
echo 
"                <td align=\"center\" width=\"16%\"><span lang=\"en-us\">id</span></td>\n";
echo 
"                <td align=\"center\" width=\"37%\">&Ccedil;&Oacute;&atilde; &Ccedil;&aacute;&THORN;&Oacute;&atilde;</td>\n";
echo 
"                <td align=\"center\" width=\"4%\">&Ccedil;&aacute;&Ecirc;&Ntilde;&Ecirc;&iacute;&Egrave;</td>\n";
echo 
"                <td align=\"center\" width=\"27%\">&Ccedil;&aacute;&Igrave;&aring;&Eacute;</td>\n";
echo 
"                <td align=\"center\" colspan=\"2\">&Ccedil;&aacute;&Icirc;&iacute;&Ccedil;&Ntilde;&Ccedil;&Ecirc;</td>\n";
echo 
"            </tr>\n";
        
$query="select * from cats order by nid";
$result=mysql_query($query);
while(
$row mysql_fetch_array($result)) {
echo 
"            <tr>\n";
echo 
"                <td align=\"center\" width=\"16%\"><span lang=\"en-us\">$row[id]</span></td>\n";
echo 
"                <td align=\"center\" width=\"37%\"><span lang=\"en-us\">$row[cat_name]</span></td>\n";
echo 
"                <td align=\"center\" width=\"4%\">\n";
echo 
"                <input type=\"text\" name=\"site\" size=\"4\" value=\"$row[nid]\"></td>\n";
echo 
"                <td align=\"center\" width=\"27%\"><span lang=\"en-us\">$row[cat_site]</span></td>\n";
echo 
"                <td align=\"center\" width=\"8%\"><a href=\"editcat.php?id=$row[id]\">\n";
echo 
"                &Ecirc;&Iacute;&Ntilde;&iacute;&Ntilde;</a></td>\n";
echo 
"                <td align=\"center\" width=\"5%\">\n";
echo 
"                <a href=\"del.php?del=cat&id=$row[id]\">&Iacute;&ETH;&Yacute;</a></td>\n";
}
echo 
"            </tr>\n";
echo 
"        </table>\n";
echo 
"    </div>\n";
echo 
"    <p align=\"center\"><input type=\"submit\" value=\"&Ecirc;&Iacute;&Iuml;&iacute;&Euml; &Ccedil;&aacute;&Ecirc;&Ntilde;&Ecirc;&iacute;&Egrave;&Ccedil;&Ecirc;\" name=\"B1\"><input type=\"reset\" value=\"&Ccedil;&aacute;&Ccedil;&Yacute;&Ecirc;&Ntilde;&Ccedil;&Ouml;&iacute;\" name=\"B2\"></p>\n";
echo 
"</form>\n";
echo 
"\n";
echo 
"</body>\n";
echo 
"\n";
echo 
"</html>\n";
?>






الرجل الخارق غير متواجد حالياً   قديم 13-10-2005, 02:08 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Dec 2004-
#6 (permalink)  

[CENTER]<رفع>
<up>[/CENTER]






الرجل الخارق غير متواجد حالياً   قديم 26-10-2005, 06:50 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Mar 2000-
#7 (permalink)  

السبب في الكود التالي:
كود PHP:
echo "<input type=\"text\" name=\"site\" size=\"4\" value=\"$row[nid]\"></td>\n"
لاحظ هنا أنك أعطيت الخاصية name القيمة site وهي ثابتة لكل السجلات، عليك أن تميز كل واحدة منها برمز وليكن مثلاً:

كود PHP:
echo "<input type=\"text\" name=\"site[$row[id]]\" size=\"4\" value=\"$row[nid]\"></td>\n"
بعد ذلك عليك أن تعدل التالي:
كود PHP:
while($row mysql_fetch_array($result)) {
mysql_query("update IGNORE cats set nid= '$site' where id=$row[id]") or die(mysql_error());

لتجعله كالتالي:
كود PHP:
foreach ($site as $k=>$v)
{
mysql_query("update IGNORE cats set nid= '$v' where id=$k") or die(mysql_error());

قد لا تعمل التعديلات مباشرة، حاول أن تعدل ما يلزم فقد كتبتها ارتجالا






أبو ماجد الصارم غير متواجد حالياً   قديم 06-11-2005, 11:44 PM
رد مع اقتباس
رد


 

أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة



الساعة الآن: 08:08 AM بتوقيت المملكة العربية السعودية