Avatar billede xsix Nybegynder
21. maj 2009 - 16:43 Der er 4 kommentarer og
1 løsning

Manglende række fra databaseudtræk

Hej Eksperter.
Jeg har et lille problem med noget kode.

Jeg henter nogle forskellige rækker fra min database, men den tager ikke den sidste nye række med, når den printer dem (lige meget hvor mange gange man opdaterer siden).

Min kode ser således ud:

$query2 = mysql_query("SELECT * FROM tables WHERE id='$_GET[id]'");
$tables_data = mysql_fetch_assoc($query2);

$query3 = mysql_query("SELECT * FROM posts WHERE tableid='$tables_data[id]' ORDER BY posttime DESC");

while($row = mysql_fetch_assoc($query3))
{
    echo "<tr><td bgcolor=\"808080\" align=\"left\" width=\"50\">".$row['writerid']."</td><td bgcolor=\"D3D3D3\" align=\"right\" width=\"500\">".$row['text']."</td></tr>";
    echo "<tr><td bgcolor=\"A9A9A9\" align=\"right\" width=\"200\">".$row['posttime']."</td></tr>";
}

På forhånd tak.

Mvh.
XsiX
Avatar billede aners Nybegynder
21. maj 2009 - 16:51 #1
Får du rækken hvis du ikke sorterer? (ORDER BY posttime)

Det er i øvrigt en rigtig dårlig ide at lave udtræk, baseret på $_GET
Avatar billede xsix Nybegynder
21. maj 2009 - 17:00 #2
Nope, det eneste der skete var at den ældste blev skiftet ud med den nyeste række fra databasen da jeg fjernede ORDER BY.

Det er også kun lige midlertidigt at jeg bruger $_GET :)
Avatar billede hmm10 Nybegynder
22. maj 2009 - 21:01 #3
Et lille spørgsmål..

Først henter du 'id' ud af 'tables', hvor $_GET['id'] er 'id'.
Deretfer henter du 'tableid', hvor 'tableid' også er 'id' ($_GET['id'])?

Hvad skal du bruge det første kald til?

"SELECT posts.* FROM posts WHERE posts.tableid  ='".trim($_GET['id'])."' ORDER BY posts.posttime DESC" kan vel gøre det?
Avatar billede xsix Nybegynder
23. maj 2009 - 16:19 #4
Det første kald bruger jeg til at hente alt fra tables.
Det andet kald bruger jeg til at hente alt fra posts.
Jeg bruger dataen fra tables andre steder i min også, derfor de to kald.

Prøvede at copy paste den kode du har skrevet, men der sker blot det samme.

Jeg har dog "løst" problemet på en lidt ubekvem måde, men det virker dog, har manuelt indsat en række under posts med en dato fra år 3000, så det altid vil være den der ikke bliver vist.
Avatar billede xsix Nybegynder
31. maj 2009 - 19:25 #5
Fandt ingen "rigtig" løsning.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester