WHERE werkt niet
webstab - 25/09/2004 16:00
PHP ver gevorderde
dit is mijn code
<?php
echo "$_GET[id]";
$_GET[id] = $nieuwsid;
$sql = "SELECT * FROM nieuws WHERE id='$nieuwsid'";
$query = mysql_query("SELECT * FROM nieuws");
while ($obj = mysql_fetch_object($query)) {
$bericht = htmlspecialchars($obj->bericht);
$bericht = nl2br($bericht);
$bericht = wordwrap($bericht, 60, "\n", 1 );
?>
<table><tr><td>
<font size=+0.4 color=#FFF3C5><b><?php echo"$obj->onderwerp"; ?></b></font>
</td></tr><tr><td>
<?php echo"$bericht"; ?></td></tr>
<tr><td>Gepost door <a href="?pag=leden&actie=profiel&id=<?php echo"$obj->userid"; ?>"><?php echo"$obj->naam"; ?></a> op <?php echo"$obj->datum"; ?></td></tr></table>
<?php }
$query=mysql_query("SELECT * FROM nieuwscomments WHERE nieuwsid='$_GET[id]'") or die(mysql_error());
while($obj= mysql_fetch_object($query)) {
$bericht = htmlspecialchars($obj->bericht);
$bericht = nl2br($bericht);
$bericht = wordwrap($bericht, 60, "\n", 1 );
$aantal=mysql_num_rows($query);
if ($aantal > 0) {
?>
<table class=mtabel>
<tr>
<td valign=top>></td>
<td>
<font size="2"><?php echo"$bericht"; ?></font>
<br>Gepost door <a href="?pag=leden&actie=profiel&id=<?php echo"$obj->userid"; ?>"><?php echo"$obj->naam"; ?></a> op <?php echo"$obj->datum - $obj->tijd"; ?>
</td>
</tr>
</table>
<br>
<?php
}
}
if (@$_SESSION['gIngelogd'] == true && $_SESSION['gacti'] != 0) {
echo ("<hr color=#FFF3C5 width=90% align=center height=10%>");
$datum = date("d/m/Y");
$tijd = date("H:i");
if(isset($_POST['action']) && $_POST['action'] == "submit") {
$error = "";
if ($_POST['berichtreactie'] == "")
$error = "Je moet een bericht invullen";
if (!$error) {
$query ="INSERT INTO nieuwscomments (naam, tijd, datum, bericht,
nieuwsid, userid) VALUES ('".$_SESSION['gNaam']."', '$tijd', '$datum', '$_POST[berichtreactie]',
'$_GET[id]', '".$_SESSION['gId']."')";
mysql_query($query) or die (mysql_error());
header("location:$_SERVER[REQUEST_URI]");
}
?>
<font color="red"><?php echo"$error"; ?></font>
<?php } ?>
<form method="post" action="">
<table border=0><tr><td valign=top>
Je reactie: </td><td><textarea name="berichtreactie" cols="30" rows="5"></textarea></td></tr><tr><td></td><td>
<input type="image" src="post.gif">
<input type="hidden" name="action" value="submit">
</td></tr></table>
</form>
<?php
}
else {
echo "je moet ingelogd zijn om een reactie te posten.";
} ?>
<?php
$_GET [ id] = $nieuwsid ;
$sql = "SELECT * FROM nieuws WHERE id='$nieuwsid '" ;
$bericht = nl2br ( $bericht ) ; $bericht = wordwrap ( $bericht , 60 , "\n " , 1 ) ; ?>
<table><tr><td>
<font size=+0.4 color=#FFF3C5><b>
<?php echo "$obj->onderwerp " ; ?> </b></font>
</td></tr><tr><td>
<?php echo "$bericht " ; ?> </td></tr>
<tr><td>Gepost door <a href="?pag=leden&actie=profiel&id=
<?php echo "$obj->userid " ; ?> ">
<?php echo "$obj->naam " ; ?> </a> op
<?php echo "$obj->datum " ; ?> </td></tr></table>
<?php }
$bericht = nl2br ( $bericht ) ; $bericht = wordwrap ( $bericht , 60 , "\n " , 1 ) ; if ( $aantal > 0 ) {
?>
<table class=mtabel>
<tr>
<td valign=top>></td>
<td>
<font size="2">
<?php echo "$bericht " ; ?> </font>
<br>Gepost door <a href="?pag=leden&actie=profiel&id=
<?php echo "$obj->userid " ; ?> ">
<?php echo "$obj->naam " ; ?> </a> op
<?php echo "$obj->datum - $obj->tijd " ; ?> </td>
</tr>
</table>
<br>
<?php
}
}
if ( @ $_SESSION [ 'gIngelogd' ] == true && $_SESSION [ 'gacti' ] != 0 ) {
echo ( "<hr color=#FFF3C5 width=90% align=center height=10%>" ) ;
if ( isset ( $_POST [ 'action' ] ) && $_POST [ 'action' ] == "submit" ) { $error = "" ;
if ( $_POST [ 'berichtreactie' ] == "" )
$error = "Je moet een bericht invullen" ;
if ( ! $error ) {
$query = "INSERT INTO nieuwscomments (naam, tijd, datum, bericht,
nieuwsid, userid) VALUES ('" . $_SESSION [ 'gNaam' ] . "', '$tijd ', '$datum ', '$_POST[berichtreactie] ',
'$_GET[id] ', '" . $_SESSION [ 'gId' ] . "')" ;
header ( "location:$_SERVER[REQUEST_URI] " ) ;
}
?>
<font color="red">
<?php echo "$error " ; ?> </font>
<?php } ?>
<form method="post" action="">
<table border=0><tr><td valign=top>
Je reactie: </td><td><textarea name="berichtreactie" cols="30" rows="5"></textarea></td></tr><tr><td></td><td>
<input type="image" src="post.gif">
<input type="hidden" name="action" value="submit">
</td></tr></table>
</form>
<?php
}
else {
echo "je moet ingelogd zijn om een reactie te posten." ; } ?>
Hij geeft gewoon alles weer wat in de database zit.
je kunt het bekijken op http://driesv.f...e&id=2 en http://driesv.f...e&id=2
of via de homepage en dan op doorklikken.
9 antwoorden
Gesponsorde links
SickBoy - 25/09/2004 16:09
MySQL beginner
logisch:
WHERE id='".$nieuwsid."'
...
WHERE nieuwsid='".$_GET['id']."'
enzovoorts
webstab - 25/09/2004 16:11
PHP ver gevorderde
<?php
echo "$_GET[id]";
$_GET[id] = $nieuwsid;
$sql = "SELECT * FROM nieuws WHERE id='".$nieuwsid."'";
$query = mysql_query("SELECT * FROM nieuws");
while ($obj = mysql_fetch_object($query)) {
$bericht = htmlspecialchars($obj->bericht);
$bericht = nl2br($bericht);
$bericht = wordwrap($bericht, 60, "\n", 1 );
?>
<table><tr><td>
<font size=+0.4 color=#FFF3C5><b><?php echo"$obj->onderwerp"; ?></b></font>
</td></tr><tr><td>
<?php echo"$bericht"; ?></td></tr>
<tr><td>Gepost door <a href="?pag=leden&actie=profiel&id=<?php echo"$obj->userid"; ?>"><?php echo"$obj->naam"; ?></a> op <?php echo"$obj->datum"; ?></td></tr></table>
<?php }
$query=mysql_query("SELECT * FROM nieuwscomments WHERE nieuwsid='".$_GET[id]."'") or die(mysql_error());
while($obj= mysql_fetch_object($query)) {
$bericht = htmlspecialchars($obj->bericht);
$bericht = nl2br($bericht);
$bericht = wordwrap($bericht, 60, "\n", 1 );
$aantal=mysql_num_rows($query);
if ($aantal > 0) {
?>
...
<?php
$_GET [ id] = $nieuwsid ;
$sql = "SELECT * FROM nieuws WHERE id='" . $nieuwsid . "'" ;
$bericht = nl2br ( $bericht ) ; $bericht = wordwrap ( $bericht , 60 , "\n " , 1 ) ; ?>
<table><tr><td>
<font size=+0.4 color=#FFF3C5><b>
<?php echo "$obj->onderwerp " ; ?> </b></font>
</td></tr><tr><td>
<?php echo "$bericht " ; ?> </td></tr>
<tr><td>Gepost door <a href="?pag=leden&actie=profiel&id=
<?php echo "$obj->userid " ; ?> ">
<?php echo "$obj->naam " ; ?> </a> op
<?php echo "$obj->datum " ; ?> </td></tr></table>
<?php }
$bericht = nl2br ( $bericht ) ; $bericht = wordwrap ( $bericht , 60 , "\n " , 1 ) ; if ( $aantal > 0 ) {
?>
...
er is nog steeds niet veranderd
SickBoy - 25/09/2004 16:15
MySQL beginner
ah, ik had enkel naar de where dingen gekeken
er staat trouwens nog steeds $_GET[id]
=> $_GET['id']
uw eerste echo mogen de aanhalingstekens weg
Thomas - 25/09/2004 16:27
Moderator
Kijk eens welke query je uitvoert ?
Dat is niet $sql...
DRUNK - 25/09/2004 16:31
PHP gevorderde
lol, weer een topic voor niets
SickBoy - 25/09/2004 16:36
MySQL beginner
eigelijk zit je code vol fouten:
<?php
...
while($obj= mysql_fetch_object($query)) {
$bericht = htmlspecialchars($obj->bericht);
$bericht = nl2br($bericht);
$bericht = wordwrap($bericht, 60, "\n", 1 );
$aantal=mysql_num_rows($query);
if ($aantal > 0) {
...
?>
<?php
...
$bericht = nl2br ( $bericht ) ; $bericht = wordwrap ( $bericht , 60 , "\n " , 1 ) ; if ( $aantal > 0 ) {
...
?>
waarom zou je mysql_fetch_object gebruiken als het het aantal niet groter is dan nul?
je zet dit beter nadat je ze getelt hebt, de database een beetje sparen he!
dan nog in het form: action=""
=> action = "<?php echo $_SERVER['PHP_SELF']; ?>"
webstab - 25/09/2004 17:03
PHP ver gevorderde
merci,allemaal
Gesponsorde links
Dit onderwerp is gesloten .