Vraag & Antwoord

Webprogrammeren & scripting

Foto's uit database halen met php/mysql

1 antwoord
  • Hallo, Ik ben nog steeds met met de site bezig en het gaat de goede kant op, maar nu loop ik tegen een aantal problemen aan met de foto pagina. [quote:aceb595877="de foto pagina"] 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> [color=red:aceb595877]<? mysql_pconnect("localhost","user","password"); mysql_select_db("racingte"); $result = mysql_query("select * from gallery WHERE zichtbaar=ja ORDER BY gallery DESC"); ?>[/color:aceb595877] [color=red:aceb595877]<? while($r=mysql_fetch_array($result)) { $gallery = $r["gallery"]; $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>"; } ?>[/color:aceb595877]</table> </td> </tr> </table> [/quote:aceb595877] Bovenstaande pagina haalt zijn gegevens uit een tabel foto's en een tabel gallery. Tabel foto's ======= id = een uniek nummer wordt automatisch verhoogd.... gallery = het nummer van de betreffende fotoserie. filenaam = de bestandsnaam omschrijving = de omschrijving van de foto. Wat is er te zien op de foto? Tabel gallery ======== gallery = het nummer van de betreffende fotoserie circuit = naam van circuit omschrijving = omschrijving van de fotoserie dir = directory waar de foto's zich bevinden zichtbaar = zichtbaar op de fotopagina ja/nee Als ik een nieuwe fotoserie wil plaatsen op de site doe ik het volgende: -Ik maak een nieuwe gallery aan in de tabel gallery -Als ik dat gedaan heb weet ik het gallerynummer. -Ik vul bij zichtbaar ja/nee in. Als ik ja kies dan worden de gegevens toegevoegd aan de fotopagina. Er wordt dus een link gemaakt, waar je op kunt klikken om zo de gallery te openen. Als ik nee invul betekent dit dat ik de foto's op andere pagina's ga gebruiken. -Vervolgens voeg ik de foto's toe aan de tabel foto's [quote:aceb595877="de pagina thumbs"] [color=red:aceb595877]<?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"> <!--hier begint de php code--> <center> <table border=0> <tr> <?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.gallery, fotos.filenaam, fotos.omschrijving, gallery.dir FROM fotos, gallery WHERE fotos.gallery=$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(); ?>[/color:aceb595877]</tr> </table></center> <!--Hier eindigt de php code--> <!--DWLayoutEmptyCell--> </td> </tr> </table> [/quote:aceb595877] Wat gaat er nu verkeerd? Als ik een gallery aanmaak en voeg de foto's toe gaat alles goed (heb 1 gallery er in staan). Ga ik nu in de map waar de foto's staan een submap aanmaken dan is het net of hij in de eerste gallery ook foto's uit de submap wil halen. Ik krijg dan afbeeldingen met een rood kruisje (ze kunnen niet weergegeven worden). Ik heb die submap weer verwijderd en alles is weer goed. Ook heb ik in de de tabel gallery een veld zichtbaar ja/nee ingevoegd. Had ik dat niet gedaan dan kwamen alle fotoseries op de fotopagina te staan en dat is niet de bedoeling. De bedoeling om voor andere pagina's ook foto's uit de tabel foto's te halen. Anders krijg je immers redundantie. Ik krijg nu op de fotopagina die online staat niets meer te zien terwijl bij zichtbaar toch ja is ingevuld. Als ik de pagina opvraag op mijn eigen pc krijg ik onderstaande foutmelding: [i:aceb595877]Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Xitami\webpages\rds\site\fotos.php on line 28[/i:aceb595877] Weet iemand hoe ik deze 2 problemen op kan lossen? Alvast bedankt voor de moeite. URL naar de site: [url]http://www.racingteamdesikken.nl[/url]

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.