delete multiple records code [message #174438] |
Sat, 11 June 2011 18:10 |
Co
Messages: 75 Registered: May 2011
Karma: 0
|
Member |
|
|
Hi All,
I have some code which should delete some records.
It is a bulletin board page with posts. I want to delete the posts of
which the checkbox has been checked.
echo '<form name="form" id="form" method="post">';
if (isset($_SESSION['idx'])) {
if($account_type == 'c') {
$outputList .= '<td width="10%" ><div class="name"
align="left"><input type="checkbox" name="delete" value="' . $id . '" /
> </div></td>';
}
}
echo '</form>';
if (isset($_POST['bb_index']) && !empty($_POST['form'])) {
foreach($_POST['form'] as $id) {
// This is a loop with the var $id containing
// all items that were checked to be deleted
print 'Delete this $id';
}
}
if (isset($_SESSION['idx'])) {
if($account_type == 'c') {
echo '<a href="bb_index.php?post=delete"><img src="images/
Delete.png" border="0" width="30" height="30" /></a>';
}} ?>
My code doesn't print any records even when some are checked.
Marco
|
|
|
Re: delete multiple records code [message #174442 is a reply to message #174438] |
Sat, 11 June 2011 18:55 |
Jerry Stuckle
Messages: 2598 Registered: September 2010
Karma: 0
|
Senior Member |
|
|
On 6/11/2011 2:10 PM, Co wrote:
> Hi All,
>
> I have some code which should delete some records.
> It is a bulletin board page with posts. I want to delete the posts of
> which the checkbox has been checked.
>
> echo '<form name="form" id="form" method="post">';
> if (isset($_SESSION['idx'])) {
> if($account_type == 'c') {
> $outputList .= '<td width="10%"><div class="name"
> align="left"><input type="checkbox" name="delete" value="' . $id . '" /
>> </div></td>';
> }
> }
>
> echo '</form>';
>
> if (isset($_POST['bb_index'])&& !empty($_POST['form'])) {
> foreach($_POST['form'] as $id) {
> // This is a loop with the var $id containing
> // all items that were checked to be deleted
> print 'Delete this $id';
>
> }
> }
>
>
> if (isset($_SESSION['idx'])) {
> if($account_type == 'c') {
> echo '<a href="bb_index.php?post=delete"><img src="images/
> Delete.png" border="0" width="30" height="30" /></a>';
> }} ?>
>
> My code doesn't print any records even when some are checked.
>
> Marco
To start with, what's in your $_POST variable?
Also, if you set the name of your checkbox to "delete", you will only
get one value in your $_POST variable. You can either give each
checkbox a unique name, or (preferably) use 'delete[]' - which will
provide an array of checked boxes in your $_POST variable.
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex(at)attglobal(dot)net
==================
|
|
|
Re: delete multiple records code [message #174443 is a reply to message #174442] |
Sat, 11 June 2011 18:59 |
Co
Messages: 75 Registered: May 2011
Karma: 0
|
Member |
|
|
On 11 jun, 20:55, Jerry Stuckle <jstuck...@attglobal.net> wrote:
> On 6/11/2011 2:10 PM, Co wrote:
>
>
>
>
>
>
>
>
>
>> Hi All,
>
>> I have some code which should delete some records.
>> It is a bulletin board page with posts. I want to delete the posts of
>> which the checkbox has been checked.
>
>> echo '<form name="form" id="form" method="post">';
>> if (isset($_SESSION['idx'])) {
>> if($account_type == 'c') {
>> $outputList .= '<td width="10%"><div class="name"
>> align="left"><input type="checkbox" name="delete" value="' . $id . '" /
>>> </div></td>';
>> }
>> }
>
>> echo '</form>';
>
>> if (isset($_POST['bb_index'])&& !empty($_POST['form'])) {
>> foreach($_POST['form'] as $id) {
>> // This is a loop with the var $id containing
>> // all items that were checked to be deleted
>> print 'Delete this $id';
>
>> }
>> }
>
>> if (isset($_SESSION['idx'])) {
>> if($account_type == 'c') {
>> echo '<a href="bb_index.php?post=delete"><img src="images/
>> Delete.png" border="0" width="30" height="30" /></a>';
>> }} ?>
>
>> My code doesn't print any records even when some are checked.
>
>> Marco
>
> To start with, what's in your $_POST variable?
>
> Also, if you set the name of your checkbox to "delete", you will only
> get one value in your $_POST variable. You can either give each
> checkbox a unique name, or (preferably) use 'delete[]' - which will
> provide an array of checked boxes in your $_POST variable.
>
> --
> ==================
> Remove the "x" from my email address
> Jerry Stuckle
> JDS Computer Training Corp.
> jstuck...@attglobal.net
> ==================
Jerry,
What do you mean with the first question?
If I do it like this:
if (isset($_SESSION['idx'])) {
if($account_type == 'c') {
$outputList .= '<td width="10%" ><div class="name"
align="left"><input type="checkbox" name="checkbox[]" id="checkbox[]"
value="' . $id . '" /></div></td>';
}
}
How can I loop through the records later?
Marco
|
|
|
Re: delete multiple records code [message #174445 is a reply to message #174443] |
Sat, 11 June 2011 21:12 |
Jerry Stuckle
Messages: 2598 Registered: September 2010
Karma: 0
|
Senior Member |
|
|
On 6/11/2011 2:59 PM, Co wrote:
> On 11 jun, 20:55, Jerry Stuckle<jstuck...@attglobal.net> wrote:
>> On 6/11/2011 2:10 PM, Co wrote:
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>> Hi All,
>>
>>> I have some code which should delete some records.
>>> It is a bulletin board page with posts. I want to delete the posts of
>>> which the checkbox has been checked.
>>
>>> echo '<form name="form" id="form" method="post">';
>>> if (isset($_SESSION['idx'])) {
>>> if($account_type == 'c') {
>>> $outputList .= '<td width="10%"><div class="name"
>>> align="left"><input type="checkbox" name="delete" value="' . $id . '" /
>>>> </div></td>';
>>> }
>>> }
>>
>>> echo '</form>';
>>
>>> if (isset($_POST['bb_index'])&& !empty($_POST['form'])) {
>>> foreach($_POST['form'] as $id) {
>>> // This is a loop with the var $id containing
>>> // all items that were checked to be deleted
>>> print 'Delete this $id';
>>
>>> }
>>> }
>>
>>> if (isset($_SESSION['idx'])) {
>>> if($account_type == 'c') {
>>> echo '<a href="bb_index.php?post=delete"><img src="images/
>>> Delete.png" border="0" width="30" height="30" /></a>';
>>> }} ?>
>>
>>> My code doesn't print any records even when some are checked.
>>
>>> Marco
>>
>> To start with, what's in your $_POST variable?
>>
>> Also, if you set the name of your checkbox to "delete", you will only
>> get one value in your $_POST variable. You can either give each
>> checkbox a unique name, or (preferably) use 'delete[]' - which will
>> provide an array of checked boxes in your $_POST variable.
>>
>> --
>> ==================
>> Remove the "x" from my email address
>> Jerry Stuckle
>> JDS Computer Training Corp.
>> jstuck...@attglobal.net
>> ==================
>
> Jerry,
>
> What do you mean with the first question?
>
Just what I said. What's in $_POST when you get the results back?
print_r($_POST);
does wonders for debugging!
> If I do it like this:
>
> if (isset($_SESSION['idx'])) {
> if($account_type == 'c') {
> $outputList .= '<td width="10%"><div class="name"
> align="left"><input type="checkbox" name="checkbox[]" id="checkbox[]"
> value="' . $id . '" /></div></td>';
> }
> }
> How can I loop through the records later?
>
> Marco
You don't need the id - that's for DOM (and each id must be unique).
When you get the results back the choices (if any) will be in
$_POST['checkbox'], which will be an array. Again, print out the values
in $_POST so you can see them.
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex(at)attglobal(dot)net
==================
|
|
|