رفتن به مطلب

ویرایش اطلاعات دیتابیس در php


mohamad-8

پست های پیشنهاد شده

سلام
میخوام دستور UPDATE بنویسم که اطلاعات دیتابیس رو به صورت فرم SELECT کنم و بعد ویرایش کنم
کد نوشتم ولی فقط سطر اخر رو ویرایش میکنه و سطرهای دیگه ویرایش نمیشن
کسی میتونه بگه به چه صورت باید این کار انجام بدم
یک هفته وقتم و گرفت ممنون میشم
اینم کدی که نوشتم فقط ردیف اخر ویرایش میکنه

<?php
mysql_connect("localhost", "root", "usbw") or die("Connection Failed");
mysql_select_db("school")or die("Connection Failed");
 
$query =mysql_query( "SELECT * FROM dars ");
?>
  <form method="post" name="update" action="2.php" />
 
<?php
if (mysql_num_rows($query) > 0) 
{
while ($row = mysql_fetch_array($query))
{
 
    ?>
Name:
 <input type="hidden" name="darsid" value="<?php echo $row['darsid']  ?>" />
<input type="text" name="sal" value="<?php echo  $row['sal'] ; ?>" />
<input type="text" name="major" value="<?php echo  $row['major'] ; ?>" />
<input type="text" name="type2" value="<?php echo  $row['type2'];  ?>"/>
<input type="text" name="type" value="<?php echo  $row['type']  ;?>"/>
<input type="text" name="title" value="<?php echo  $row['title'];  ?>"/>
<input type="text" name="vahed" value="<?php echo  $row['vahed'] ; ?>"/>
<input type="text" name="nimsal" value="<?php echo  $row['nimsal'];  ?>"/>
    
<?php
echo "";
}
}
?>
<input type="submit" name="edit" value="edit" />
</form>
 
<?php
 
if(isset($_POST['edit']))
{
    $id=$_POST['darsid']; 
    $sal=$_POST['sal']; 
    $major=$_POST['major']; 
    $type2=$_POST['type2']; 
    $type=$_POST['type']; 
    $title=$_POST['title']; 
    $vahed=$_POST['vahed']; 
    $nimsal=$_POST['nimsal'];
     
for ($i = 0; $i < count($id); $i++) {
 
 $sql2=mysql_query("Update dars set
sal='$sal',major='$major',type2='$type2',type='$ty  pe',title='$title',vahed='$vahed',nimsal='$nimsal'
Where darsid='$id' ");
 
}
} 
?>

 

لینک به ارسال

چون درون حلقه دارید ایجاد میکنید و تعداد متغییر هست باید name مربوط به input ها رو به صورت زیر تعریف کنید

    ?>
Name:
 <input type="hidden" name="darsid[<?php echo $row['darsid']; ?>]" value="<?php echo $row['darsid'];?>" />
<input type="text" name="sal[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['sal'] ;?>" />
<input type="text" name="major[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['major'];?>" />
<input type="text" name="type2[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['type2'];?>"/>
<input type="text" name="type[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['type']  ;?>"/>
<input type="text" name="title[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['title'];?>"/>
<input type="text" name="vahed[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['vahed'] ;?>"/>
<input type="text" name="nimsal[<?php echo $row['darsid']; ?>]" value="<?php echo  $row['nimsal'];?>"/>
    
<?php

برای بروز رسانی دیتابیس هم باید حلقه رو به صورت زیر تغییر بدید

foreach($_POST['dars_id'] as $did){
    $id    = $did;
    $sal   = $_POST['sal'][$did];
    $major = $_POST['major'][$did];
    $type2 = $_POST['type2'][$did];
    $type  = $_POST['type'][$did];
    $title = $_POST['title'][$did];
    $vahed = $_POST['vahed'][$did];
    $nimsal= $_POST['nimsal'][$did];
    $sql2  = mysql_query("Update dars set
    sal='$sal',major='$major',type2='$type2',type='$ty  pe',title='$title',vahed='$vahed',nimsal='$nimsal'
    Where darsid='$id' ");
}

 

لینک به ارسال

دوست عزیز ممنون اجراش کردم فقط وقتی بخوام ویرایش با فرم select option انجام بدم

ویرایش انجام نمیشه

if (mysql_num_rows($result) > 0) 
{
	?>
    
    <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
    
    <?php
while($row=mysql_fetch_assoc($result))
{
	echo  $n++ . " -----   " //. " darsid: "?>
    <input type="hidden" name="darsid[]"  value="<?php $row['darsid'];  ?>"/>

sal : <select name="sal[]">
<option value="اول دبیرستان"<?php  if($row['sal']=='اول دبیرستان') echo 'selected="selected"';  ?>>اول دبیرستان </option>
<option value="دوم دبیرستان"<?php  if($row['sal']=='دوم دبیرستان')  echo 'selected="selected"'; ?>>دوم دبیرستان </option>
<option value="سوم دبیرستان"<?php  if($row['sal']=='سوم دبیرستان')  echo 'selected="selected"'; ?>>سوم دبیرستان </option>
</select>
major : <select name="major[]">
<option value="کامپیوتر"<?php  if($row['major']=='کامپیوتر') echo 'selected="selected"';  ?>>کامپیوتر </option>
<option value="حسابداری"<?php  if($row['major']=="حسابداری")echo 'selected="selected"';  ?>>حسابداری </option>
<option value="برق"<?php  if($row['major']=='برق') echo 'selected="selected"';  ?>>برق </option>
</select>
type2: <select name="type2[]">
<option value="عمومی"<?php  if($row['type2']=='عمومی') echo 'selected="selected"';  ?>>عمومی </option>
<option value="تخصصی"<?php  if($row['type2']=='تخصصی') echo 'selected="selected"';  ?>> تخصصی</option>
</select>
type: <select name="type[]">
<option value="تئوری"<?php  if($row['type']=='تئوری') echo 'selected="selected"';  ?>>تئوری </option>
<option value="عملی"<?php  if($row['type']=='عملی') echo 'selected="selected"';  ?>> عملی</option>
</select>
title:  <input type="text" name="title[]" value="<?php echo  $row['title'];  ?>"/>
vahed: <select name="vahed[]">
<option value="1"<?php  if($row['vahed']=='1') echo 'selected="selected"';  ?>>1</option>
<option value="2"<?php  if($row['vahed']=='2') echo 'selected="selected"';  ?>>2 </option>
<option value="3"<?php  if($row['vahed']=='3') echo 'selected="selected"';  ?>>3 </option>
<option value="4"<?php  if($row['vahed']=='4') echo 'selected="selected"';  ?>>4 </option>
</select>
nimsal <select name="nimsal[]">
<option value="1"<?php  if($row['nimsal']=='1') echo 'selected="selected"'; ?>>نیمسال اول</option>
<option value="2"<?php  if($row['nimsal']=='2') echo 'selected="selected"';  ?>>نیمسال دوم </option>
<option value="3"<?php  if($row['nimsal']=='3') echo 'selected="selected"';  ?>>کامل </option>
</select>

<?php

 echo "<br>";



}
}


}?>
 <input type="submit" name="edit" value="edit"> 
 </form>
<?php

if(isset($_POST['edit']))
{

 $size = count($_POST['darsid']); 	
$i = 0;
while ($i < $size) { 
	$id1=$_POST['darsid'][$i]; 
	$sal1=$_POST['sal'][$i];
	$major1=$_POST['major'][$i]; 
	$type21=$_POST['type2'][$i]; 
	$type1=$_POST['type'][$i]; 
	$title1=$_POST['title'][$i]; 
	$vahed1=$_POST['vahed'][$i]; 
	$nimsal1=$_POST['nimsal'][$i];
 
 $sql2="Update dars set
sal='$sal1',major='$major1',type2='$type21',type='$type1',title='$title1',vahed='$vahed1',
nimsal='$nimsal1'
Where darsid='$id1'";

mysql_query($sql2) or die ("Error in query: $query");


 ++$i;  
}
}

 

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...