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:
|
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
==================
|
|
|