Re: deleting records with php and checkboxes

From: Frank Bax <fbax(at)sympatico(dot)ca>
To: angelo(dot)rigo(at)globo(dot)com, pgsql-php(at)postgresql(dot)org
Subject: Re: deleting records with php and checkboxes
Date: 2002-11-29 17:22:14
Message-ID: 5.1.1.6.0.20021129121142.009f6920@pop6.sympatico.ca
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

At 07:25 AM 11/29/02, angelo(dot)rigo(at)globo(dot)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 );
}
}

In response to

Browse pgsql-php by date

  From Date Subject
Next Message Kelvin Varst 2002-12-02 19:26:07 Comments and datestyle
Previous Message angelo.rigo 2002-11-29 12:25:39 deleting records with php and checkboxes