Gå til innhold

Nyhet system.


Anbefalte innlegg

Hei,

 

Jeg har en tabbel som heter "news" og inni den har jeg "id", "topic", "melding", "dato", "nick" og så lurte jeg på:

Hvordan skal jeg klare å hente ut informasjonen fra tabellen, sånn at jeg bare henter den nyeste nyheten. Og så få printet den inn i denne tabbellen:

<table border="0" cellspacing="1">
 <tr>
   <td><? echo ($topic); ?> </td>
   <td><? echo "Dato: <b>".$dato."</b>" ?></td>
 </tr>
</table>
<table border="0" cellspacing="1">
 <tr>
   <td><? echo($nyhet); ?></td>
 </tr>
 <tr>
   <td align="right"><? echo ($nick); ?></td>
 </tr>
</table>

 

-wacie

Lenke til kommentar
Videoannonse
Annonse

Du må først koble til mySQL så kjøre spørring.

$sporring = "SELECT id, topic, melding, dato, nick FROM news ORDER BY dato DESC LIMIT 1";
$resultat = mysql_query($sporring);
$news = mysql_fetch_array($resultat);

$topic = $news[topic];
$dato = $news[dato];
$nyhet = $news[melding];
$nick = $news[nick];

 

Du trenger ikke "id" med i spørringen, men men.

Dette plasserer du over din kode, så skal det fungere.

Endret av sim
Lenke til kommentar

$sporring = "SELECT id, topic, melding, dato, nick FROM news ORDER BY dato DESC LIMIT 1";

 

Hvorfor ikke forenkle spørringen litt, og gjøre den slik:

 

$sporring = "SELECT * FROM news ORDER BY id DESC LIMIT 1";

 

Forutsetter selvfølgelig at trådstarter har auto_increment på. Slipper kluss hvis serverklokken skulle gå feil.

Lenke til kommentar

Fordi * ikke angir noe om rekkefølge eller antall attributter som hentes ut. Si at databasetabellen/view'et blir endre, da må du garantert ut å endre på spørringen eller koden som håndrere resultatsettet :)

 

Men, først og fremst så er det stygt, og gjør koden mindre lesbar :)

Lenke til kommentar

dersom tabellstrukturen blir endra så man inn å endre spørringen uansett da, hvertfall i dette tilfellet. På en såpass liten spørring, så ser jeg ingen grunn til å ikke bruke *, og order by id

 

Det handler sikkert om hva du "liker" å gjøre i en spørring og da... hipp som happ egentlig.

Lenke til kommentar

Ikke engi :)

 

Si at du velger å legge til et par attributter i tabellen, og du i samme slengen finner ut at du vil endre rekkefølgen på attributtene. Ops, plutselig slutter spørringen å fungere. Hvis du har beholdt navnen på de opprinnelige attributtene, og har navngitt disse i spørringer får du fremdeles samme resultat :)

 

Programmering handler mye om å skrive lesbar kode, og * er som sagt ikke mye lesbart og kan fort bli kilden til rare feil.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...