hallo allemaal ik heb een vraagje over mijn query hoe kan ik zorgen
als g.atventaarid 0 is dus niet beschikbaar is tog gewoon door gaat met uit lezen ?



$sql = "SELECT b.van, b.bid, b.onderwerp, b.bericht,
DATE_FORMAT(b.datum, '%Y-%m-%d on %H:%i:%s') AS date_formatted,
a.atventaar, a.id, s.sigmature, s.id, g.naam, g.sigmatureid,
g.atventaarid ,
DATE_SUB(NOW(),INTERVAL 5 MINUTE) <= g.lastactive AS online
FROM berichten AS b, atventaar AS a, sigmature AS s,
gebruikers AS g WHERE b.van = g.id AND b.van = g.id AND a.id =
g.atventaarid AND s.id = g.sigmatureid AND b.naar = ".$_SESSION
['user_id']." ORDER BY b.datum
DESC LIMIT ".$begin.", ".$eind."";
Heb je ook gezien dat ik de plaats van de LEFT JOIN heb verplaatst?
ja heb ik ook geprobeerd maar wil ook niet.
Mischien is het makelijker als ik alles even post.
Dit is een scriptje voor het uitlezen van bericten.
Op dit moment kunnen ze alleen wat posten als ze een atventaar en een sigmature hebben, dat is natuurlijk niet pertig en dat zou ik graag anders willen maar weet niet hoe.

<?php
$sql = "SELECT
b.van, b.bid,
b.onderwerp,
b.bericht,
DATE_FORMAT(b.datum, '%Y-%m-%d on %H:%i:%s') AS date_formatted,
a.atventaar,
a.id,
s.sigmature,
s.id,
g.naam,
g.sigmatureid,
g.atventaarid ,
DATE_SUB(NOW(),INTERVAL 5 MINUTE) <= g.lastactive AS online FROM
berichten AS b,
atventaar AS a,
sigmature AS s,
gebruikers AS g
LEFT JOIN g.atventaarid ON (a.id = g.atventaarid); WHERE
b.van = g.id AND
s.id = g.sigmatureid AND
b.naar = ".$_SESSION['user_id']." ORDER BY
b.datum DESC LIMIT ".$begin.", ".$eind."";
if(!$res = mysql_query($sql))
{
trigger_error(mysql_errno().': '.mysql_error().'. In de query: '.$sql);
}
while ($row = mysql_fetch_array($res)) {

$row['bericht'] = wordwrap($row['bericht'], 85, '<br>');

$row['bericht'] = smiley($row['bericht']);

echo '<table class="bericht" align="center" cellspacing="0" cellpadding="0">';
echo '<td background="../../image/balk.gif" height="26" colspan="2">From: <a href="../../profiel.php?mid='.$row['naam'] . '">'.$row['naam'] . '</a> Subject: '.$row['onderwerp'] .' Date: '.$row['date_formatted'] .'</td>';
echo '</tr>';
echo '<tr>';
echo '<td width="100" height="100" rowspan="2" valign="top">';
if($row['atventaarid'] == 0){
echo 'bump<br><center>';
}else{
echo '<img src="../atventaar/'.$row['atventaar'] .'" width="100" height="100"/><br><center>';
}
if($row['online'] == 1){
echo '<a class="online">Online';
}else{
echo '<a class="offline">Offline';
}
echo '</center></td><td class="bericht1" width="800" valign="top">'.$row['bericht'].'</td>';
echo '</tr>';
echo '<tr>';
echo '<td width="500" height="85"><img src="../sigmature/'.$row['sigmature'].'"/></td>';
echo '</tr>';
echo '<tr>';
echo '<td class="bericht2" colspan="2"><a href="re.php?re='.$row['bid'].'"><img border=0 src="../../image/replay.gif" width="61" height="15"></a> <a href="?delete='.$row['bid'] . '"><img border=0 src="../../image/delete.gif" width="61" height="15"></a> <a href="berichtedit.php?edit='.$row['bid'] . '"><img border=0 src="../../image/edit.gif" width="61" height="15"></a></td>';
echo '</tr>';
echo '</table><br>';
}
?>
Ik zie in jou query nergens die JOIN terug in je code, die moet er wel in staan. En je moet uit de WHERE van je query weghalen waar: "a.id=g.atventaarid"

Dit geeft aan dat die alleen records selecteerd waar wel een atventaarid van bekend is, dus alleen de JOIN en dat stukje weg uit je WHERE
bedankt robert nu heb ik wel de goede er op staan sorry had de oude geplaats.
Maar op deze manier werkt hij dus ook niet. :(
wat doet die puntkomma hier?
LEFT JOIN g.atventaarid ON (a.id = g.atventaarid); WHERE
die is niet nodig denk ik maar als ik hem weg haal doet hij het nog niet
helemaal geen dat is het probleem
;) Notice: 1146: Table 'g.atventaarid' doesn't exist. In de query: SELECT b.van, b.bid, b.onderwerp, b.bericht, DATE_FORMAT(b.datum, '%Y-%m-%d on %H:%i:%s') AS date_formatted, a.atventaar, a.id, s.sigmature, s.id, g.naam, g.sigmatureid, DATE_SUB(NOW(),INTERVAL 5 MINUTE) <= g.lastactive AS online FROM berichten AS b, atventaar AS a, sigmature AS s, gebruikers AS g LEFT JOIN g.atventaarid ON (a.id = g.atventaarid) WHERE b.van = g.id AND s.id = g.sigmatureid AND b.naar = 1 ORDER BY b.datum DESC LIMIT 0, 10 in C:\Program Files\xampp\htdocs\community\blok\berichten\berichten.php on line 35

Reageren