Re: deleting records with php and checkboxes - Mailing list pgsql-php

From Frank Bax
Subject Re: deleting records with php and checkboxes
Date
Msg-id 5.1.1.6.0.20021129121142.009f6920@pop6.sympatico.ca
Whole thread Raw
In response to deleting records with php and checkboxes  (angelo.rigo@globo.com)
List pgsql-php
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 );
         }
       }

pgsql-php by date:

Previous
From: angelo.rigo@globo.com
Date:
Subject: deleting records with php and checkboxes
Next
From: "Kelvin Varst"
Date:
Subject: Comments and datestyle