Vraag & Antwoord

Webprogrammeren & scripting

Foto's worden niet correct weergegeven (php/mysql)

2 antwoorden
  • Ik heb op mijn site en fotopagina in php. Deze werkt als volgt: -Ik heb 2 tabellen foto's en gallery Tabel foto's ======= id galerij filenaam omschrijving Tabel gallery ======== zichtbaar circuit omschrijving dir galerij [code:1:621d40ec5c] <?php $titel = $_GET ['titel']; ?> <table width="600" border="0" cellpadding="0" cellspacing="0"> <!--DWLayoutTable--> <tr> <td width="600" height="67" valign="top"><p align="center"><br> <span class="style4"><?php echo htmlspecialchars($titel); ?></span><br> <img src="layout/oranjebalk.gif" width="600" height="1"></p></td> </tr> <tr> <td height="409" valign="top"> <center> <table border=0> <tr> <!--hier begint de php code--> <?php //verbind met de database-server en kies database include 'connect.php'; $gallery2 = $_GET['gallery']; //doorgegeven gallery waarde op halen //haal rijen uit de tabel fotos en selecteer op pagina en sorteer of id $result = mysql_query("SELECT fotos.id, fotos.galerij, fotos.filenaam, fotos.omschrijving, gallery.dir FROM fotos, gallery WHERE fotos.galerij=$gallery2 ORDER BY id ASC") or die(mysql_error()); $aantal_rijen = mysql_num_rows($result); $j = 0; //teller j op nul zetten // als er rijen gevonden zijn... if ($aantal_rijen > 0) { // alle rijen een voor een aflopen... for ($i = 0; $i < $aantal_rijen; $i++) { $j++; $id = mysql_result ($result, $i, 'id'); $gallery = mysql_result ($result, $i, 'gallery'); $filenaam = mysql_result ($result, $i, 'filenaam'); $omschrijving = mysql_result ($result, $i, 'omschrijving'); $dir = mysql_result ($result, $i, 'dir'); //hier begint de tabel // foto afbeelden op 100 x 68 pixels $filenaam = $dir.$filenaam; if ($j < 6) { echo "<td width=100 valign=top><a href=javascript:popup(\"toonfoto.php?&waarde=$filenaam\")> <img src=\"$filenaam\" height=75 width=100 border=3 bordercolor=#FF0000 hspace=1></a><br><font size=2 color=red><center>$omschrijving</center></font></td>"; } else { echo "</tr>"; $j = 0; } } // einde alle rijen afgelopen } // einde als er rijen gevonden zijn mysql_free_result($result); mysql_close(); ?> </tr> </table></center> <!--Hier eindigt de php code--> <!--DWLayoutEmptyCell--> </td> </tr> </table> [/code:1:621d40ec5c] Bovenstaande code haalt foto's uit de tabel en geeft ze weer. Als ik 1 record in m'n tabel gallery heb staan is er niets aan de hand, maar als ik een record toevoeg aan m'n tabel gallery dan worden alle foto's van de 1e gallery in eens dubbel weer gegeven. De dubbele foto's blijken dan de bestandslocatie te hebben van de net aangemaakte gallery. Hoe los ik dit op? Mocht het niet duidelijk zijn kijk dan even op http://www.racingteamdesikken.nl [code:1:621d40ec5c] <table width="600" border="0" cellpadding="0" cellspacing="0"> <!--DWLayoutTable--> <tr> <td width="600" height="67" valign="top"><p align="center"><br> Foto's<br> <img src="layout/oranjebalk.gif" width="600" height="1"></p></td> </tr> <tr> <td height="409" valign="top"> <table width="400" align="center"> <tr> <td>Gallery</td><td>Circuit</td><td>Omschrijving</td> </tr> <? mysql_pconnect("localhost","racingte","2mpRhc6k"); mysql_select_db("racingte"); $result = mysql_query("select * from gallery WHERE zichtbaar='ja' ORDER BY galerij DESC"); ?> <? while($r=mysql_fetch_array($result)) { $gallery = $r["galerij"]; $circuit = $r["circuit"]; $omschrijving = $r["omschrijving"]; $dir = $r["dir"]; $zichtbaar = $r["zichtbaar"]; echo "<tr>"; echo "<td align=left>$gallery</td>"; echo "<td align=left>$circuit:</td>"; echo "<td align=left><a href=?page=thumbs&gallery=$gallery&titel=$omschrijving>$omschrijving</a></td>"; echo "</tr>"; } ?> </table> </td> </tr> </table> [/code:1:621d40ec5c] Ik had gallery als tabel en als veldnaam. Dit heb ik reeds gewijzigd door het veld gallery te veranderen in galerij.
  • volgens mij moet SELECT fotos.id, fotos.galerij, fotos.filenaam, fotos.omschrijving, gallery.dir FROM fotos, gallery WHERE [color=red:eb110168be]fotos.galerij=$gallery2[/color:eb110168be] ORDER BY id ASC" zijn: SELECT fotos.id, fotos.galerij, fotos.filenaam, fotos.omschrijving, gallery.dir FROM fotos, gallery WHERE [color=green:eb110168be]fotos.galerij=gallery.gallerij AND gallery.gallerij='$gallery2'[/color:eb110168be] ORDER BY id ASC"

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.