Klein foutje?
Ik ben nog niet zo begaan met PHP, langzaam probeer ik het wat te leren.
Soms loop ik tegen problemen aan die ik niet kan oplossen.
Bijvoorbeeld deze.
> Ik heb een adminscript voor een nieuwssysteem gedownload en deze probeer ik hier en daar wat om te bouwen (aangezien sommige dingen niet werkten).
Als ik in de admin op 'Verwijderen' klik dan kom ik op deze pagina. Hier volgt een bevestiging of men wel of niet het nieuwsartikel (de 'id') wil verwijderen.
Alleen ik zie dan een grijze pagina, wat kan de oorzaak zijn?
(Zal wel een domme fout zijn..)
Bedankt alvast voor de hulp!
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
include ('config.php');
if (!$_POST['Ja']) {
mysql_query("DELETE FROM nieuws WHERE id = '$id'");
mysql_query("DELETE FROM nieuwscomments WHERE nieuwsid='$id'")
}
?>
include ('config.php');
if (!$_POST['Ja']) {
mysql_query("DELETE FROM nieuws WHERE id = '$id'");
mysql_query("DELETE FROM nieuwscomments WHERE nieuwsid='$id'")
}
?>
<div align="center">
<table width="50%" border="1" cellspacing="2" cellpadding="2" bordercolor="#999999" bgcolor="#666666">
<tr bgcolor="#999999">
<td colspan="2" height="43">
<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="-1"><b>Ben
je zeker dat je het nieuws wilt verwijderen ?</b></font></div>
</td>
</tr>
<tr bgcolor="#CCCCCC">
<td valign="middle" width="50%" height="75">
<div align="center">
<form action="admin.php" method="post">
<input type="submit" name="Nee" value="Nee, ik wil het niet verwijderen">
</form>
</div>
</td>
<td valign="middle" width="50%" height="75">
<div align="center">
<form action="admin.php" method="post">
<input type="submit" name="Ja" value="Ja, ik wil het verwijderen">
</form>
</div>
</td>
</tr>
<tr valign="bottom" bgcolor="#999999">
<td width="50%" height="33"><font size="-1" face="Verdana, Arial, Helvetica, sans-serif">[
Terug naar <a href="admin.php">admin</a> pagina ]</font></td>
<td width="50%" height="33">
<div align="right"><font size="-1" face="Verdana, Arial, Helvetica, sans-serif">[
Terug naar <a href="admin.php">nieuws</a> pagina ]</font></div>
</td>
</tr>
</table>
</div>
Dus als $_POST['Ja'] false is (of niet bestaat, want dan geeft hij ook false terug) voert hij de queries uit.
Ik denk dat dat dus iets in de zin van if(isset($_POST['Ja'])){ moet zijn.
Daarbij stuurt hij die vraag naar admin.php (of beter gezegd, het antwoord op die vraag) maar je wil het antwoord in deze pagina afhandelen. Dus form="" moet wijzen naar de huidige pagina.
En als je ja, of nee uberhaupt al drukt, merk je ewr niets van, omdat of de pagina niet stopt met laden, je wordt niet doorverwezen en er wordt ook geen melding gegeven. Misschien dat dat ook voor verwaring kan zorgen.
Het is gelukt, verder zag ik ook nog dat er een " te veel stond, maar dat is verholpen.