Avatar billede telesde Nybegynder
19. juni 2004 - 16:16 Der er 15 kommentarer

Hentning af data i mysql.

Hej mednørder.


måske en meget enkelt ting men kan ikke lige hit ud af den :s

Jeg har en mysql database med små 600 personer.

jeg er igang med at lave en side der kun viser alle medlemmerne. (Alle der har indtastet deres fødselsdagsdato er medlem)

Alle personerne samt medlemmerne står i samme tabel.

min query ser således ud:
mysql_query("select * from users ORDER BY ".$_REQUEST["sortering"]);

Men så viser den alle 600 personer, hvad skal jeg skrive for at den kun viser dem der har noget ståede i deres fødselsdagsdato?

På forhånd tak.
Avatar billede jaw Nybegynder
19. juni 2004 - 16:18 #1
mysql_query("select * from users WHERE fodselsdag != '' ORDER BY ".$_REQUEST["sortering"]);
Avatar billede telesde Nybegynder
19. juni 2004 - 16:37 #2
min kolonne hedder born så jeg skrev det:
mysql_query("select * from users WHERE fodselsdag != " ORDER BY ".$_REQUEST["sortering"]);

så siger den nederstående: (men hvis jeg fjerner " foran ORDER viser den siden men den viser så stadig alle personer)
Parse error: parse error, unexpected T_STRING in /web/www.hlparty.dk/www/users.php on line 42
Avatar billede telesde Nybegynder
19. juni 2004 - 16:38 #3
mysql_query("select * from users WHERE born != " ORDER BY ".$_REQUEST["sortering"]);

sådan skrev jeg.
Avatar billede jaw Nybegynder
19. juni 2004 - 16:39 #4
Det skal ikke være " - men '...'
Avatar billede telesde Nybegynder
19. juni 2004 - 16:45 #5
ahh damn fik lige lavet en fejl håber du stadig gider og kan hjælpe mig.
Du skal ihverfald have de 60point aligevel da du har svaret på spørgsmålet, kan man ikke gøre det så det er omvent at den kun viser alle dem der ikke har noget indtastet i feltet born.
Avatar billede jaw Nybegynder
19. juni 2004 - 16:46 #6
Jow da, så er det jo bare:
mysql_query("select * from users WHERE born = '' ORDER BY ".$_REQUEST["sortering"]);
Avatar billede telesde Nybegynder
19. juni 2004 - 16:53 #7
så skriver den alle sammen. både dem der har og ikke har tænkte på så den kun skrev dem der ikke har indtastet noget.
Avatar billede jaw Nybegynder
19. juni 2004 - 16:56 #8
Ja, den forstod jeg også... Når jeg kører den der, får jeg kun de rækker hvor feltet "born" er tomt og intet andet. Så ved ikke helt, hvor det galt for dig :/
Avatar billede telesde Nybegynder
19. juni 2004 - 17:06 #9
mysql_query("select * from users WHERE born = ' ' ORDER BY ".$_REQUEST["sortering"]);

^^ sådan ser den ud hos mig. er det ikke sådan den skulle være?
Avatar billede thedeathart Nybegynder
19. juni 2004 - 17:08 #10
jeg vil nu bruge

mysql_query("SELECT * FROM user WHERE born = "" ORDER BY ".$REQUEST['sortering'] ") or die(mysql_error();
Avatar billede jaw Nybegynder
19. juni 2004 - 17:10 #11
Feltet born er tomt når brugeren ikke har indtastet noget, ikke?
Avatar billede thedeathart Nybegynder
19. juni 2004 - 17:11 #12
lidt bedre.

$sort = $REQUEST['sortering'];
mysql_query("SELECT * FROM user WHERE born = "" ORDER BY $sort ") or die(mysql_error();

man bør heller ikke lave ny variabler inde i en query
Avatar billede telesde Nybegynder
19. juni 2004 - 17:19 #13
nice nu virker det :) smid lige et svar så du kan få points : )

mange tak for hjælpen.
Avatar billede jaw Nybegynder
19. juni 2004 - 17:21 #14
Erh, no problem :)

Men følg også lige thedeathart's forslag, for det er bestemt en god ide at bruge: or die(mysql_error)); jeg husker det bare aldrig når jeg skriver herinde...
Avatar billede telesde Nybegynder
19. juni 2004 - 17:25 #15
ok thx i will do :9
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