Ik heb nu dit script om dingen uit mijn database verwijderen geschreven maar het werkt niet.

De error:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING

zit in deze regel:

eval("if(isset($_POST['" . $id . "']));");



Dit is het script:

<form action="delete.php" method="post">

<?php
// Database login verborgen.

$userlist2 = mysql_query("SELECT * FROM things ORDER BY id");

echo("<table border=1>");
echo("<tr>");
echo("<td>Verwijderen</td>");
echo("<td>Naam</td>");
echo("<td>Taal</td>");
echo("</tr>");

while ($userlist = mysql_fetch_assoc($userlist2) )
{
    echo("<tr>");
    echo("<td><input type='checkbox' name='".$userlist['id']."' id='".$userlist['id']."' value='".$userlist['name']."'></td>");
    echo("<td><a href='http://www.site.com/admin/see.php?id=".$userlist["id"]."'>".$userlist["name"]."</a></td>");
    echo("</tr>");
}
echo("</table>");
?>

<br><br>
<input type="password" size="40" name="password">
<br>
<input type="submit" name="submit" value="Verwijderen">
</form>

<?php

if ($_POST['submit'])
{
    if ($_POST['password'] == $adminpassword)
    {
        // Database login verborgen.

        $userlist2 = mysql_query("SELECT * FROM things ORDER BY id");

        while ($userlist = mysql_fetch_assoc($userlist2) )
        {
            $id = $userlist["id"];

            eval("if(isset($_POST['" . $id . "']));");
            {
                mysql_query("DELETE FROM `things` WHERE id='$id'");
            }
            echo $id;
        }
    }
    else
    {
        echo "Nee, dat is een fout wachtwoord!";
    }
}
?>
</body>
Is er een specifieke reden waarom je daar eval gebruikt?
Geen eval gebruiken, NOOIT, tenzij iedereen om je heen zegt dat het ECHT NIET ANDERS kan.

Jouw oplossing is dit:
if(isset($_POST[ $id ]))
Het werkt, bedankt. :D
Hipska BE op 17/06/2010 21:34:56

Is er een specifieke reden waarom je daar eval gebruikt?


Mijn vraag is er nog steeds..
Hipska BE op 17/06/2010 21:54:43

[quote="Hipska BE op 17/06/2010 21:34:56"]
Is er een specifieke reden waarom je daar eval gebruikt?


Mijn vraag is er nog steeds..
[/quote]

Ik dacht dat het zo niet zou werken if(isset($_POST[ $id ]))
Dus ging ik het maar zo proberen.
Werkte blijkbaar ook niet he. Waarom heb je dan je eerste idee niet geprobeerd?
Ik dacht dat dat niet zou werken, maar nu weet ik het: eerst proberen.
Robin van der Vliet op 17/06/2010 22:35:56

Ik dacht dat dat niet zou werken, maar nu weet ik het: eerst proberen.


Eigenlijk is er als je met eval aan de slag wilt, of denkt te moeten, wel een andere oplossing.

Reageren