Roberto de Nobrega
Roberto de Nobrega

Reputation: 69

Form Submit button doesnt work with PHP loop

I have this code

<tbody>
            <form action="dsf.php" method="post">
            <?PHP if(mysql_num_rows($leerdb) > 0) {while ($rs = mysql_fetch_row($leerdb)) {?>
                <tr>
                    <td><input name="idecod[]" type="checkbox" value="<?php echo $rs[0]; ?>"  /></td>
                    <td><?php echo $rs[0]; ?></td>
                    <td><?php echo $rs[1]; ?></td>
                    <td><?php echo $rs[2]; ?></td>
                    <td><?php echo $rs[3]; ?></td>
                    <td><?php echo $rs[4]; ?></td>
                    <td><?php echo $rs[5]; ?></td>
                    <td>BsF. <?php echo $rs[6]; ?></td>
                </tr>
                <?PHP }}?>
                <input class="enviar" type="submit" name="enviar" id="enviar" value="Editar Asesor" />
        </form>
             </tbody>

I do not know why the submit button doesnt work. When I click on it, nothing happend.

It seems that something in the php loop is making the mess.. But as I know, PHP goes first than HTML, so, when FORM HTML comes, PHP code was already executed.

Where is my error.??

Thanks in advance.

Roberto

Upvotes: 1

Views: 1170

Answers (2)

Quentin
Quentin

Reputation: 944150

You are generating invalid HTML.

You can't have a form wrapped around table rows without wrapping it around the entire table.

You can't have a submit button placed between table rows.

The browser you are using is likely trying to recover from the error in such a way that the form is moved somewhere where it is allowed, but where it doesn't contain any of the controls.

NB: Different browsers recover from having forms in inappropriate parts of tables in different ways.

Use a validator, and write real HTML.

Upvotes: 2

Rorchackh
Rorchackh

Reputation: 2181

instead of opening the brackets for the while and if, use the php short tags. Example:

    <?php if (condition): ?>
        output your html here
    <?php endif; ?>

Same thing goes for while. read about it here: www.php.net/manual/en/control-structures.while.php

Upvotes: -1

Related Questions