بسم الله
ارجو من السادة الافاضل مشرفى واعضاء المنتدى مساعدتى فى اللاتى
كيفية
تفعيل وعدم التفعيل عن طريق استخدام ال check box
وايضا الحذف باستخدام checkbox
وارجو منكم لو امكن اطلاعى على مثال
مع العلم باننى مبتدى
افيدونى يرحمكم الله
وجزاكم الله خير
بسم الله
ارجو من السادة الافاضل مشرفى واعضاء المنتدى مساعدتى فى اللاتى
كيفية
تفعيل وعدم التفعيل عن طريق استخدام ال check box
وايضا الحذف باستخدام checkbox
وارجو منكم لو امكن اطلاعى على مثال
مع العلم باننى مبتدى
افيدونى يرحمكم الله
وجزاكم الله خير
السلام عليكم
هنا قمت بعمل 3 ملفات كمثال الملف الأول وهو install.php وذلك لوضع بيانات عشوائية لتطبيق المثال عليها ويمكن تغير بيانات الإتصال بقاعدة البيانات من ملف config .
الملف config
<?
@$con = mysql_connect('localhost','root','');
if(!$con)
{
echo'<br><font size=6 color=red><center>Can not connect to the serever</center></font>';
exit;
}
@mysql_select_db('tst') or die('<font size=6 color=red><center>There are an error during connect to the Database</center>');
?>الملف INSTALL
<?php
//الإتصال بماى سكول
include_once('config.php');
//إنشاء الجدول
$sql='CREATE TABLE test_1(id INT unsigned not null auto_increment,test varchar(255),Primary key (id))';
$query = mysql_query( $sql );
//إدراج أمثلها بالقاعدة لإستدعاء البيانات
while($tst<='40')
{
$tst++;
$sql="insert into test_1 values('','Massage number".$tst."')";
$query = mysql_query( $sql );
}
echo'<br>تمت عملية التنصيب بنجاح<br><center><a href="index.php">الذهاب إلى المثال</a>';
?>الملف الثالث وهو الملف اللى هيكون فيه عرض البيانات و التحكم به وأعذرنى اليوم أنى لم أقم إلا بشرح عملية حذف البيانات و بإذن الله سأقوم بشرح عملية تحديث السجلات التى يتم إختيارها كلها فى صفحة واحده
ملف ال index.php
<? //الإتصال بماى سكول
include_once('config.php');
switch($page)
{
case'':
//عرض الجدول الذى قمنا بإضافته
$sql="select * from test_1";
$query=mysql_query($sql);
//العرض فى شكل جدول مع إضافة
//check box
// لكل سجل و إعطاء الأداة قيمة الحقل id
echo'<table width=100% border=1><form action=index.php method=get>
<input type=submit value=" حذف ">
<input type="hidden" name="page" value="do">';
while($rs=mysql_fetch_array($query))
{
echo'<tr>
<td>
<input type=checkbox name="'.$rs['id'].'" value="'.$rs['id'].'">
</td>
<td>
'.$rs['test'].'
</td>
</tr>';
}
echo'</table>';
break;
//صفحة تنفيذ أمر الحذف
case'do':
//ركز معايا فى هذا الكود مهم جدا
$sql="select * from test_1";
$qu=mysql_query($sql);
while($rs=mysql_fetch_array($qu))
{
$sql2="Delete from test_1 where id='".$$rs['id']."' ";
$qu2=mysql_query($sql2);
}
header('location:index.php');
}
?>فى الكود السابق قمت بالتعويض عن السجلات برقم الآ دى اللى فى جدول test_1 و وهو حقل المفتاح الرئيسيى
فمثلا لو قمت بتحديد السجل رقم 1 و السجل رقم 3
فسيتم إرسال البيانات كالتالى (1=1&3=3) بإعتبار أن 1 كمتغير و ليس عدد ...
كيف يمكنك إستدعاء ذلك المتغير فى الصفحة الثانية بعد إرسال البيانات
أولا قمت باستخدام while فى عرض البيانات ثم عرض البيانات بالدالة mysql_fetch_array ثم عوضت على القيم المرسلة بـ
$$rs['id']
و انى متأسف لشرحى القصير هذا و ذلك لقصر الوقت
المثال فى المرفقات
ولله التوفيق
أنا شاهدت المثال الذي كتبته
شكراً لك (القادري) يا ترى هل يوجد مثال آخر على التعديل على أكثر من صف
يعني أنا احتاج مثل عملية phpMyAdmin الي تستطيع من خلاله عمل تحديد ثم تعديل
====
هل أجد لديك هذا الكود
أو سؤال آخر هل أجد كود لإضافة عدة صفوف في نفس الوقت وبنموذج واحد فقط
أن شاء الله سأقوم بتكملة المثال السابق بحيث يقوم بالتعديل .... جارى تحديث المثال
بسم الله الرحمن الرحيم
فى المثال قمت بفضل الله تعالى بتعديل المثال بحيث يقوم بعملية التعديل لعدد من السجلات فى آن واحد و كذلك إضافة عدد من السجلات فى نفس الوقت
أولاً قمت بتعديل ملف index.php إلى التالى
<? //الإتصال بماى سكول
include_once('config.php');
switch($page)
{
case'':
//عرض الجدول الذى قمنا بإضافته
$sql="select * from test_1";
$query=mysql_query($sql);
//العرض فى شكل جدول مع إضافة
//check box
// لكل سجل و إعطاء
الأداة قيمة الحقل id
echo'<table width=100% border=1>';
echo'
<font size=4
color=red>';
//إن لم يتم كتابة العدد فى النص يتم الرجوع برسالة الخطأ هنا
echo $msg;
//وصلة إضافة سجلات بتحديد عدد السجلات التى سيتم إستخدامها
echo'</font>
<form action=insert.php
method=post>
<input type=text name="nums" size=1>ضع عدد السجلات التى تريد إضافتها هنا <br>
<input type=submit
value=" إضافة ">
</form><p><br><form action=index.php method=get>
<input type=submit
name="subm" value=" حذف "> <input type=submit name="subm" value=" تعديل ">
<input type="hidden" name="page" value="do">';
while($rs=mysql_fetch_array($query))
{
echo'<tr>
<td>
<input type=checkbox name="'.$rs['id'].'"
value="'.$rs['id'].'">
</td>
<td>
'.$rs['test'].'
</td>
</tr>';
}
echo'</table>';
break;
//صفحة تنفيذ أمر الحذف
case'do':
//ركز
معايا فى هذا الكود مهم جدا
//أولا لو كان حذف
switch($subm)
{
case" حذف ":
$sql="select * from test_1";
$qu=mysql_query($sql);
while($rs=mysql_fetch_array($qu))
{
$sql2="Delete from test_1 where
id='".$$rs['id']."' ";
$qu2=mysql_query($sql2);
}
header('location:index.php');
break;
//لو كان تعديل يعطى بالسجلات التى تمت تحديدها
case" تعديل ":
$sql="select * from test_1";
$qu=mysql_query($sql);
echo'
<center>| <a href=index.php>إلغاء</a> |
<form action=index.php method=post>
<input type="hidden" name="page"
value="do">
<table width=50% border=1 bordercolor=#123456><tr><td>';
//عرض السجلات للتعديل
عليها
while($rs=mysql_fetch_array($qu))
{
$emp=empty($$rs['id']);
if(!$emp)
{
$sql2="select * from
test_1 where id='".$$rs['id']."' ";
$qu2=mysql_query($sql2);
$rs2=mysql_fetch_array($qu2);
echo'<center><table width=100%
bgcolor=#ABCDEF><tr><td>';
//إرسال البيانات على الشكل التالى
//مثلاً : nam3=test&3=3
echo'<input type=text name="nam'.$rs2['id'].'" value="'.$rs2['test'].'" size=60>
<input type="hidden" name="'.$rs2['id'].'" value="'.$rs2['id'].'">
</td><td>
<input type=submit name="subm" value=" حفظ "></td></tr></table>';
}
}
echo'</td></tr></table>';
break;
//حفظ السجلات بعد التعديل عليها
case" حفظ ":
$sql="select * from test_1";
$qu=mysql_query($sql);
while($rs=mysql_fetch_array($qu))
{
//بعد إرسال البيانات كما قلنا سابقا
فى عملية الحذف
//سيتم الحصول على القيم يالداله
//$_post كالتالى
$sql2="update test_1 set test='".$_POST['nam'.$rs['id']]."' where id='".$$rs['id']."' ";
$qu2=mysql_query($sql2);
}
header('location:index.php');
}
}
?>وقمت بعمل ملف آخر الذى يعمل عملية الإضافة إلى قاعدة البيانات
ملف insert.php
<?
include_once('config.php');
switch($page)
{
case'':
//إن لم يتم كتابة العدد فى النص يتم الرجوع برسالة الخطأ هنا
if(!$nums)
{
header('location:index.php?page=&msg=لم%20تكتب%20العدد%20بشكل%20صحيح');
}
//إن تم كتابة العدد يتم حفظ تلك القيمة فى المتغير
//$nums
//ثم بعددها يتم إنشاء النصوص حسب العدد المضاف
echo'<form action=insert.php
method=get>
<input type=hidden name=page value="save">
<input
type=hidden name=nums value="'.$nums.'">
<center>| <a href=index.php>إلغاء</a> |
<table border=1 width=50% bgcolor=ABCDEF>';
while($nums2<=$nums-1)
{
$nums2++;
echo'<tr><td><input type=text name="'.$nums2.'" size=60><b>
<font
color=#123456> السجل رقم '.$nums2.' </td></tr>';
}
echo'</table><br><input type=submit value="
إضافة "></form>';
break;
case'save':
while($nums2<=$nums-1)
{
//وكذلك هنا نقوم بالعمليه السابقة ولكن فى هذه المرة سوف
نضيف إلى قاعدة البيانات
$nums2++;
$chks=empty($$nums2);
//هنا يتم الفحص ان كان المتغير بدون قيمة لا يتم
إضافته
if(!$chks)
{
$sql="insert into test_1
values('','".$$nums2."')";
$qu=mysql_query($sql);
}
header('location:index.php?page=&msg=تمت%20عملية%20الإضافة%20بنجاح');
}
}
?>وإنى منتظر ردودكم و إستفساركم , يمكنكم تحميل المثال بعد التعديل بالفرقات
تم تعديل هذه المشاركة بواسطة القادرى في 5 يوليو 2007 في 18:24
هذا الموضوع مغلق.