Twitsnip is a place to post code snippets and share them. Login with your existing Twitter account, if you don't have a Twitter account simply create on at www.twitter.com

Update Multiple rows in a single form

Update Multiple rows in a single form

0

This snippet will show you how to update multiple rows of a MySQL database table using a single form.

//get data fromdb
$sql = mysql_query("SELECT * FROM table");
$count=mysql_num_rows($sql);

//start a table
echo '<form name="form1" method="post" action="">
<table width="292" border="0" cellspacing="1" cellpadding="0">';

//start header of table
echo '<tr>
<td width="17" align="center"> </td>
<td width="115" align="center"><strong>Name</strong></td>
<td width="149"><strong>Email</strong></td>
</tr>';

//loop through all results
while($r=mysql_fetch_object($sql)){
	
//print out table contents and add id into an array and email into an array
echo '<tr>
<td align="center"><input type="hidden" name="id[]" value='.$r->id.' readonly></td>
<td align="center">'.$r->name.'</td>
<td><input name="email[]" type="text" id="price" value="'.$r->email.'"></td>
</tr>';
}

//submit the form

echo'<tr>
<td colspan="3" align="center"><input type="submit" name="Submit" value="Submit"></td>
</tr>
</table>
</form>';


//if form has been pressed proccess it

if($_POST["Submit"])
{
	//get data from form	
	$name = $_POST['name'];
	//loop through all array items 
    foreach($_POST['id'] as $value) 
	{
        //minus value by 1 since arrays start at 0
		$item = $value-1;
		//update table
        $sql1 = mysql_query("UPDATE table SET email='$email[$item]' WHERE id='$value'")or die(mysql_error());
    }
	
//redirect user 
$_SESSION['success'] = 'Updated';
header("location:index.php");
}

Tags: update, form, mysql, php, rows, multiple

Comments

No comments yet

Login to Twitter to comment