Nieuws

  • Hallo allemaal,


    Ik heb nu een nieuwspagina op mijn index gezet.
    Werkt wel goed, alleen ik krijg het niet voor mekaar om de laatste 3 nieuwsberichten te tonen.


    Hier mijn script:


    PHP
    <?
    $query = mysql_query("SELECT * FROM nieuws WHERE id='".$_GET['nieuwsid']."'");
    $obj = mysql_fetch_object($query);
    begintabel("".$obj->titel." - Door ".gebruikersnaam($obj->wie)."");
    echo "<i>".$obj->datum."</i>,<br>";
    echo ubb($obj->bericht);
    eindetabel();
    ?>


    Als ik nu een nieuwsbericht wil lezen moet ik naar de directe link gaan.
    http://www.blabla.nl/nieuws.php?nieuwsid=1


    Ik wil dus, dat de laatste 3nieuwsberichten meteen getoond worden.
    Onder mekaar.


    Wie kan mij helpen??


    //Wsv-ruben

  • Guest, wil je besparen op je domeinnamen? (ad)

  • Hierbij gaat ie door totdat de 3 laatste velden zijn geechoed. Ik weet niet precies hoe je database eruit ziet, ben er maar vanuit gegaan dat je een auto_increment ID hebt :) Verder sta ik open voor verbeteringen of suggesties.

  • Beetje raar, want nu geeft ie deze error aan:
    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource ************* on line 4



    [offtopic]
    Alvast super bedankt, voor het helpen.
    En: Her snelle reageren van jullie!
    [/offtopic]


  • Sorry, als het goed is moet dit het doen :)


  • Eventjes wat aangepast, weet niet of hij het zo doet?
    Wat voor velden heb je in je tabel waarin je nieuwsberichten staan?

  • Hier mijn database:


    Helaas, werkt het nog niet..
    Snap er niets van..^o)

  • Hmm.. Ik zou het niet weten..

    PHP
    <?php
    $query = mysql_query("SELECT * FROM nieuws ORDER BY id ASC LIMIT 0,3 ") or die(mysql_error());
    while ($obj = mysql_fetch_object($query))
    {
    begintabel("".$obj->titel." - Door ".gebruikersnaam($obj->wie)."");
    echo "<i>".$obj->datum."</i>,<br>";
    echo ubb($obj->bericht);
    eindetabel();
    }
    ?>


    Probeer dit eens, kijken of hij nog wat meer zegt...

  • (Een portfolio)


    PHP
    <?php
    $query = mysql_query("SELECT * FROM nieuws ORDER BY id ASC LIMIT 0,3 ") or die(mysql_error());
    while ($obj = mysql_fetch_object($query))
    {
    begintabel("".$obj->titel." - Door ".gebruikersnaam($obj->wie)."");
    echo "<i>".$obj->datum."</i>,<br><br>";
    echo ubb($obj->bericht);
    eindetabel();
    }
    ?>


    Hoe zorg ik er nu voor, dat de berichten niet tegen elkaar aan staan.
    Maar met een enter ertussen?
    Toch met /n of <br>?


    Nu staan namelijk, de nieuwsberichten tegen elkaar aan.
    Als er een enter tussen zit, is het een stuk netter!:)

  • @TimD, je moet niet alle sprookjes gebruiken. Buiten het feit dat het niet logisch is om de data uit een MySQL-query in een object te pompen, is het niet slomer.


    [func]mysql_fetch_object[/func]:
    Note: Performance
    Speed-wise, the function is identical to mysql_fetch_array(), and almost as quick as mysql_fetch_row() (the difference is insignificant).


    Of terwijl: Netzo snel als mysql_fetch_array, en bijna zo snel als mysql_fetch_row (Insignificant moet je zo zien: Er is wel een verschil, maar de functie opzich is zo veel slomer dan het verschil, dat het in de praktijk niet uitmaakt).


    Vervolgens staat bij [func]mysql_fetch_assoc[/func]:
    Note: Performance
    An important thing to note is that using mysql_fetch_assoc() is not significantly slower than using mysql_fetch_row(), while it provides a significant added value.


    mysql_fetch_row is het snelst (Logisch), mysql_fetch_assoc is praktisch even snel als mysql_fetch_object. En mysql_fetch_array is slomer als mysql_fetch_assoc: Deze haalt de gegevens dubbel op, numeriek, en op kolomnaam.


    mysql_fetch_object is wel minder pratisch dan een array variant, maar niet slomer!

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!