Обсуждение: deleting records with php and checkboxes

Поиск
Список
Период
Сортировка

deleting records with php and checkboxes

От
angelo.rigo@globo.com
Дата:
Hi

I have the folowing two php?s to delete records from my database wich is
an event database,
it works typing the id field and clicking delete

I would like to put checkboxes in more than one record at time to delete
then. To make my script more advanced.

How can it be done?

i think i could put a checkbox with the default value "off (or 0)" and make
the delete.php delete the record with the checkbox with value "on (or 1)",
but the details to do this i need to discover
someone has passed by this situation, and could help me?

<?php
$db = pg_connect("dbname=thedb user=theuser");
$query = "SELECT * FROM thetable";
$result = pg_exec($db, $query);
if (!$result) {printf ("ERROR"); exit;}
$numrows = pg_numrows($result);
$row=0;
printf ("<table border=1>
");
printf ("<tr
bgcolor='#66CCFF'><td><b>Id</b></td><td><b>City</b></td><td><b>state</b></td><td><b>Location</b></td><td><b>Day</b></td><td><b>Month</b></td><td><b>Time</b></td><td><b>Event</b></td></tr>");
do
{
$myrow = pg_fetch_row ($result,$row);
printf ("<tr
bgcolor='$bgcolor'><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>
",$myrow[0], $myrow[1], $myrow[2], $myrow[3], $myrow[4], $myrow[5], $myrow[6],$myrow[7]);
$row++;
}
while ($row < $numrows);
printf ("</table><br>
");
pg_close($db);
?>

Type the id to be deleted.

<form action="delete.php" method="post">
ID to Delete : <input type="text" name="id" size="4" length="4" value=""><br>
<input type="submit" name="submit" value="Deletar">
<input type="reset" name="reset" value="Limpar">
</form>


Above is the delete.php


<?php
$db = pg_connect("dbname=thedb user=theuser");
$query = "DELETE FROM thetable where id='$id'";
$result = pg_exec($db, $query);
if (!$result) {printf ("ERROR"); exit;}
printf ("<b>Deleted with sucess!</b>");
pg_close($db);
?>

________________________________________
A busca mais veloz e precisa da internet. Acesse agora: http://www.zoom.com.br.



Re: deleting records with php and checkboxes

От
Frank Bax
Дата:
At 07:25 AM 11/29/02, angelo.rigo@globo.com wrote:
>I have the folowing two php?s to delete records from my database wich is
>an event database,
>it works typing the id field and clicking delete
>
>I would like to put checkboxes in more than one record at time to delete
>then. To make my script more advanced.
>
>How can it be done?
>
>i think i could put a checkbox with the default value "off (or 0)" and make
>the delete.php delete the record with the checkbox with value "on (or 1)",
>but the details to do this i need to discover
>someone has passed by this situation, and could help me?
>
><?php
>$db = pg_connect("dbname=thedb user=theuser");
>$query = "SELECT * FROM thetable";
>$result = pg_exec($db, $query);
>if (!$result) {printf ("ERROR"); exit;}
>$numrows = pg_numrows($result);
>$row=0;
>printf ("<table border=1>
>");
>printf ("<tr

>bgcolor='#66CCFF'><td><b>Id</b></td><td><b>City</b></td><td><b>state</b></td><td><b>Location</b></td><td><b>Day</b></td><td><b>Month</b></td><td><b>Time</b></td><td><b>Event</b></td></tr>");
>do
>{
>$myrow = pg_fetch_row ($result,$row);
>printf ("<tr
>bgcolor='$bgcolor'><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>
>",$myrow[0], $myrow[1], $myrow[2], $myrow[3], $myrow[4], $myrow[5],
>$myrow[6],$myrow[7]);
>$row++;
>}
>while ($row < $numrows);
>printf ("</table><br>
>");
>pg_close($db);
>?>
>
>Type the id to be deleted.
>
><form action="delete.php" method="post">
>ID to Delete : <input type="text" name="id" size="4" length="4" value=""><br>
><input type="submit" name="submit" value="Deletar">
><input type="reset" name="reset" value="Limpar">
></form>
>
>
>Above is the delete.php
>
>
><?php
>$db = pg_connect("dbname=thedb user=theuser");
>$query = "DELETE FROM thetable where id='$id'";
>$result = pg_exec($db, $query);
>if (!$result) {printf ("ERROR"); exit;}
>printf ("<b>Deleted with sucess!</b>");
>pg_close($db);
>?>

Checkbox doesn't work like other form elements.  Other form elements always
get returned.  Checkbox ony gets sent back when it is checked.  Therefore,
make the value of the checkbox the value of id you want deleted, make it's
name an array like id[] instead of simply id.

Then your delete code will look something like:
       $id = $HTTP_POST_VARS[id];
       for( $n=0; $n < count($id); $n++ ) {
         if( strlen($id[$n])>0 ) {
           $sql="DELETE from thetable WHERE id='" . $id[$n] ."'";
           pg_exec( $sql );
         }
       }