الاخوة الكرام / اود معرفة طريقة تحديث ( تعديل ) بيانات تم اضافتها للقاعدة عن طريق صفحة update .
استفسار عن تحديث ( تعديل ) بيانات في القاعدة
$edit=mysql_query("update Table1 set Aname='$text'");Table1 = اسم الجدول
Aname=اسم الحقل
هذا بدون شرط ، إذا أردت تشرط
$edit=mysql_query("update Table1 set Aname='$text' where id=5");تم تعديل هذه المشاركة بواسطة المتميز في 14 مايو 2006 في 00:45
لنفرض انو عندك جدول اسمه tab1
فيه name1 و name2
update tab1 set name1 = 'arab' where name2 = 'team-2000';
أخي المتميز انت انت طالما اونلاين عرج على منتدى الماي اس كيو ال يرحم والديك :)
أول موضوع على ايدك اليمين بلا سئلة عليك
حياك الله اخي المتميز
شو صاير بالمنتدى كيف اندمجوا مشاركتين بوحدة ولا انا ما عم شوف منيح :( :blink: :blink: :blink:
اخوتي الكرام جزاكم الله خير على التواصل
انا لااقصد التعديل او التحديث بهذه الطريقة فالحمد لله ماعندي مشكله فيها .
انا مشكلتي في الشرط يعني مو idمحدد ابغاه يكون $id
بمعنى اكثر وضوحا :
عندي صفحة تعرض كل االسجلات تحت كل سجل كلمة edit عند الضغط على edit اريد صفحة تعطيني فقط نفس بيانات السجل واقدر اعدل فيها .
هذا هو المطلوب واتمنى المساعدة .
واتمنى لو تشرح الطريقة لاني مبتدئ يا اخوان .
تمـــــــــــام
في هذه الحالة المطلوب منك تمرر جميع البيانات إلي الصفحة التي فيها التعديل ,إذا البيانات لها id فا لعملية سهلة بحيث أنك تعمل عملية بحث لهذا الid ومن ثم تحط البيانات الخاصة بها على شكل form أليس ما تطلبه يا أخ هكذا؟
4-echo"<form action='updateFile.php' method='post'>";
1-$id=$_GET['ids'];
$Qu=mysql_query("select * from tableName where id=$id");
while($Data=mysql_fetch_row($Qu))
{
2-echo"Name<input type='text' value=$Data[1]>";
3-echo"E-mail=<input type='text' value=$Data[2]>";
}
5-echo"<input type='submit'>";
echo"</form>";في 1- أنك تجلب ال id للبيانات المرادة تعديلها
في 2- تحط حقل في textbox مثل ال name وغيرها كما تحتاج أي حسب الحقول
في 3- - تحط حقل في textbox مثل ال e-mail وغيرها كما تحتاج أي حسب اسم الحقل
في 4- هو الform
في 5- هو submit
ok وكبف اكتب الكود في صفحة 'updateFile.php'
اخي الفاضل قمت بالتعديل فاصبحت صفحة update.php
<html dir="rtl">
<tr>
<td><div align="center"><strong> <a href="add.php">add new data</a>
</strong></div></td>
</tr>
</table>
<br>
<?php
$host="localhost";
$username="ali";
$password="123";
$db_name="work";
$tbl_name="data";
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
echo"<form action='up2.php' method='post'>";
$id=$_GET['id'];
$Qu=mysql_query("select * from $tbl_name where id=$id");
while($Data=mysql_fetch_row($Qu))
{
echo"name=<input type='text' value=$Data[1]>";
echo"email=<input type='text' value=$Data[2]>";
echo"Work=<input type='text' value=$Data[3]>";
}
echo"<input type='submit'>";
echo"</form>";
mysql_close();
?>وصفحة up2.php
<?php
$host="localhost";
$username="ali";
$password="123";
$db_name="work";
$tbl_name="data";
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
$up = mysql_query("update $tbl_name set name='$name',
email='$email' where id='$id'")
or die (mysql_error());
if ($up) {echo "<tr><td width=100% align=center>
<font face=Tahoma size=2>تم تحديث البيانات..</font>
</td></tr>";
}
?>لكن المشكلة لم افتح السجل مثلا
http://localhost/wk/update.php?id=7
يفتح ويسمح اعدل ولم اضغط ارسال استعلام يعطيني تم تحديث البيانات
لكن لما ارجع الاقيه ما اتعدل مع العلم اني حدثت ورجعت للقاعدة نفسها لقيته لم يعدل السجل .
اخي العزيز
من وين تأتي قيم المتغيرات$name,$id,$email
لازم تجلب وتعمل عملية post
عدل صفحة update.php كالتالي:-
while($Data=mysql_fetch_row($Qu))
{
echo"name=<input type='text' value=$Data[1] name=N>";
echo"email=<input type='text' value=$Data[2] name='EM'>";
echo"Work=<input type='text' value=$Data[3] name=W>";
echo"<input type='hidden' name='ID' value=$id>";
}بحيث يفيدك السطر الأخير أن تكون قيمة الid محفوظ ولكنها مخفية وبالإمكان تستخدم في صفحةup2.php
name في inputbox يفيدك جلب قيم هذه الحقول في صفحة up2.php .
عدل صفحة up2.php كالتالي:-
$name=$_POST['N']; $id=$_POST['ID']; $email=$_POST['EM']; $work=$_POST['W'];
لهذا هتكون قيم التغيرات محفوظة وبامانك التعديل.
اخي الفاضل الله يجزيك كل خير نجحت في التعديل .
المشكلة اتي اواجهها أود تصميم صفحة بحيث تعرض فقط id , name ,email وتسمح بادخال الحقل الرابع work لـلـ id المختار .
حيث الصفحة add فيها ادخال name ,email فقط .
يعني اريد صفحة فيها أمر select بحيث يحضر الحقلين name ,email لـ Id و insert للحقل work لنفس id .
على ما فهمت من كلامك معك جدول فيه أربعة حقول id,name,email,work في العرض تعرض فقط name,email ,id وتدخل أول مرة الثلاثة الحقول السابقة
لكن أنك تريد مرة أخرى أنك تدخل حقل الwork لid مدخل من قبل:هل هذا الى فهمته أو حاجة ثانية هو طلبك؟
أولا الإدخال
<?php
$db=mysql_connect("localhost","username","password");
mysql_select_db("databasename",$db);
$q=mysql_query("insert into TableName(name,email) values('Asiil','asiil@hotmail.com')");
if($q)
echo"yes";
else
echo"no";
?>ثانيا العرض لبعض الحقول
بعد الإتصال بالقاعدة
$q=mysql_query("select name,email from TableName')");ثالثا أضف الحقل الwork لid معين
علشان ما تدخل بقية الحقول null ,
لأن العملية هي تعديل وبنفس الوقت إدخال
$UP = mysql_query("update $tbl_name set work='Programmer' where id='$id'");
if($UP)
echo"yes";
else
echo"no";ملاحظة:انا خليت قيم الحقول ثابتة لكن بامكانك تخليها على هيئة متغيرات
بالتوفيق
اخي الفاضل شكرا لك على تفظلك واعطائي جزء من وقتك لمساعدتي .
سارفق خطواتي لانه لدي لبس في الخطوة الاخيرة :
الجدول به اربعة حقول id ,name ,email , work
وعدلت work الى null
1- صفحة ad2.php لادخال حقلين فقط name , email
<html dir="rtl"> <head> <title>MY FIRST STEP</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1256"> </head> <table width="400" border="0" align="center" cellpadding="3" cellspacing="0"> <tr> <td><div align="center"><strong><span lang="ar-sa">MY FIRST STEP</span></strong></div></td> </tr> </table> <table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> <tr> <form id="form1" name="form1" method="POST" action="ins2.php"> <td> <table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"> <tr> <td width="117"> <p align="center"><span lang="ar-sa">الاسم </span></td> <td width="14">:</td> <td width="357"><input name="name" type="text" id="name" size="40" /></td> </tr> <tr> <td> <p align="center"><span lang="ar-sa">البريد</span></td> <td>:</td> <td><input name="email" type="text" id="email" size="40" /></td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td><input type="submit" name="Submit" value="ارسل" /> <input type="reset" name="Submit2" value="امسح" /></td> </tr> </table> </td> </form> </tr> </table> </html>
2- صفحة v2.php لعرض السجلات بالحقلين فقط مع id ورابط viewall حيث يفتح صفحة vup.php لعرض الحقلين مع امكانية الاضافة للحقل الثالث طبعا للـ id
المحدد .
<html dir="rtl">
<tr>
<td><div align="center"><strong> <a href="ad2.php">add new data</a>
</strong></div></td>
</tr>
</table>
<br>
<?php
$host="localhost";
$username="ali";
$password="123";
$db_name="work";
$tbl_name="data";
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $tbl_name ";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
?>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td><table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td> </td>
<td>:</td>
<td><? echo $rows['id']; ?></td>
</tr>
<tr>
<td width="117" align="center">الأسم</td>
<td width="14">:</td>
<td width="357"><? echo $rows['name']; ?></td>
</tr>
<tr>
<td align="center">الايميل</td>
<td>:</td>
<td><? echo $rows['email']; ?></td>
</tr>
<tr>
<td align="center" colspan="3"><a href="vup.php?id=<? echo $rows['id']; ?>">viewall</a></td>
</tr>
</table></td>
</tr>
</table>
<BR>
<?
}
mysql_close();
?>الى ماسبق الامور ماشية المشكلة عندي في الصفحة vup.php حيث كتبت :
<html dir="rtl">
<tr>
<td><div align="center"><strong> <a href="ad2.php">add new data</a>
</strong></div></td>
</tr>
</table>
<br>
<?php
$host="localhost";
$username="ali";
$password="123";
$db_name="work";
$tbl_name="data";
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT name,email FROM $tbl_name WHERE id='$id'";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
?>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td><table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td> </td>
<td>:</td>
<td><? echo $rows['id']; ?></td>
</tr>
<tr>
<td width="117" align="center">الأسم</td>
<td width="14">:</td>
<td width="357"><? echo $rows['name']; ?></td>
</tr>
<tr>
<td align="center">الايميل</td>
<td>:</td>
<td><? echo $rows['email']; ?></td>
</tr>
<tr>
<td align="center" colspan="3">
<form method="POST" action="up3.php">
<p><span lang="ar-sa">العمل </span><input type="text" name="w" size="20"></p>
<p> </p>
<p><input type="submit" value="إرسال" name="B1"><input type="reset" value="إعادة تعيين" name="B2"></p>
</form>
<p> </td>
</tr>
<tr>
<td align="center" colspan="3"><a href="delete.php?id=<? echo $rows['id']; ?>">delete</a></td>
</tr>
<tr>
<td align="center" colspan="3"><a href="update.php?id=<? echo $rows['id']; ?>">update</a></td>
</tr>
</table></td>
</tr>
</table>
<BR>
<?
}
mysql_close();
?>
4- صفحة up3.php
[code]
<?php
$host="localhost";
$username="ali";
$password="123";
$db_name="work";
$tbl_name="data";
$id=$_POST['ID'];
$work=$_POST['W'];
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
$up = mysql_query("update $tbl_name set work='$work'
where id='$id'")
or die (mysql_error());
if ($up) {echo "<tr><td width=100% align=center>
<font face=Tahoma size=2>تم تحديث البيانات بنجاح ..</font>
</td></tr>";
}
?>
وعذرا مرة اخرى .لو سمحت إرفق الملفات مع القاعدة
للرفع
لازلت بانتظار المساعدة فهذه النقطة جزء من مشروعي .
أسفة جدا على التأخير لكنني مشغوللللللللللللللللللللللللللللللة
طيب ياخي بالضبط في أي ملف فيه المشكلة كذالك القاعدة مش كاملة
اعتذر على اشغالك ساراجع الموضوع لاني حاولت وبدأ الموضوع يعمل معي وسارفق النتيجة .
هذا الموضوع مغلق.
