Ik heb hier een script maaar het werkt wel als je een topic wil verwijderen dat kan ook maar dan krijg je een lijst Maar daar zou dan dus de namen van de topics moeten komen maar ik krijg dit:
okeee het vorige bericht is vernield ik weet niet hoe dat komt maar zo moest het zijn:
Ik heb hier een script maaar het werkt wel als je een topic wil verwijderen dat kan ook maar dan krijg je een lijst Maar daar zou dan dus de namen van de topics moeten komen maar ik krijg dit:
Op die lege plek zou dan dus de naam van het forum moeten komen staan maaar... als ik 1 van die lege vakjes aanklik dan verwijderd het script wel 1 van die topics zou iemand mij kunnen helpen?
Script:
<?php
include("connect.php");
?>
<?
if(isset($_GET['del'])) {
// Verwijderen
if(is_numeric($_GET['del'])) {
// Verwijderenuitvoeren
$sql = "DELETE FROM topics WHERE id='".$_GET['del']."'";
$query = mysql_query($sql);
if($query == TRUE) {
echo "Het topic ".$_GET[ 'del']." is succesvol verwijderd.<br />\n<a href=\"admins.php\">« Terug naar het beheer</a>";
}else{
echo "Er is iets fout gegaan bij het verwijderen van userID ".$_GET['del'].". <br />\n<a href=\"admins.php\">« Terug naar het beheer</a>";
}
}else{
// Lijst
?>
<HTML>
<BODY>
Welk topic wil je verwijderen?<br />
<form method="get" action="admins.php">
<table>
<tr>
<td><select name="del" size="1">
<option value=""> </option>
<?
$sql = "SELECT id,titel,datum FROM topics ORDER BY id DESC";
$query = mysql_query($sql);
while($rij = mysql_fetch_object($query)) {
$id = htmlspecialchars($rij->id);
$naam = htmlspecialchars($rij->naam);
echo "<option value=\"".$id."\">".$naam."</option>\n";
}
?></select>
</td>
<td><input type="submit" value="Verwijderen" /></td>
</tr>
</table>
</form>
</BODY>
</HTML>
<?
}
}else{
// Keuzelijst
?>
Wat wil je doen?<br />
<ul>
<li><a href="admins.php?edit=do">Bericht bewerken</a></li>
<li><a href="admins.php?del=do">Topic verwijderen</a></li>
</ul>
<?
}
A) Voer deze SQL uit in phpmyadmin en kijk wat het oplevert.
B) Gebruik liever geen shorttags ( <? en ?> ) want deze kun je verwarren met xml tags. Gebruik liever dit: <?php ?>
C) Probeer dit eens:
<?php
$sql = "SELECT id,titel,datum FROM topics ORDER BY id DESC";
$query = mysql_query($sql) or die (mysql_error());
while($rij = mysql_fetch_assoc($query)) {
echo '<option value="'.$rij['id'].'">'.$rij['naam'].'</option>'.PHP_EOL;
}
?>
[edit]Oké dat je geen fouten krijgt is in ieder geval mooi... :-)[/edit]
[edit]Ja sorry dat is inderdaad fout ik gebruik zelf <? ?> maar dat was omdat ik copy-pastete ;-) :-P (A)[/edit]
Ja he ? :P okeej maar je zegt gebruik liever
<?php ?>
<?
$sql = "SELECT id,titel,datum FROM topics ORDER BY id DESC";
$query = mysql_query($sql) or die (mysql_error());
while($rij = mysql_fetch_assoc($query)) {
echo '<option value="'.$rij['id'].'">'.$rij['naam'].'</option>'.PHP_EOL;
}
?>
Kijk nog eens naar je startpost, edit hem, zodat je kan zien wat ik verandert heb. Dit forum heeft namelijk niets vernield, jij had gewoon verkeerde UBB tags gebruikt. Ook wil ik vragen of je in het vervolg [ignore]
[/ignore] tags wilt gebruiken. Zoals ik in je berichten heb aangepast. Zo is het voor iedereen een stuk duidelijker te lezen.
En het feit waarom het niet werkt is iets heel simpels, maar wat je snel over het hoofd ziet. In je query vraag je naam niet op.
<?php
$sql = "SELECT id,naam,titel,datum FROM topics ORDER BY id DESC";
$query = mysql_query($sql) or die (mysql_error());
while($rij = mysql_fetch_assoc($query)) {
echo '<option value="'.$rij['id'].'">'.$rij['naam'].'</option>'.PHP_EOL;
}
?>
Maar ik zou wel willen weten hoe je die error_reporting hebt neergezet, aangezien je een notice had moeten krijgen dat $rij['naam'] niet bestaat.