Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

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

Anoniem
rolla
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–>&nbsp;</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

Beantwoord deze vraag

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