Avatar billede Slettet bruger
08. juli 2007 - 00:30 Der er 8 kommentarer og
1 løsning

Tjekke om post med bestemt værdi findes i tabel

Hej eksperter!

Hvordan finder jeg ud af (i en PHP-kode) om der i en tabel findes en post med en bestemt værdi? Jeg skal bruge det til at tjekke om et brugernavn er optaget. Jeg har skrevet følgende linier:

if (mysql_result(mysql_query("SELECT * FROM users WHERE username='$USERNAME'"), 0))
{
    return "Fundet";
}
else
{
    return "Ikke fundet";
}

Hvilket virker fint, men der kommer en grim advarsel, når der intet findes. Hvordan undgås dette? Er der en god metode?
Avatar billede duuink Nybegynder
08. juli 2007 - 00:49 #1
hvilken fejlmeddelse får du?
Avatar billede gider_ikke_mere Nybegynder
08. juli 2007 - 00:56 #2
Prøv med if (mysql_result(mysql_query("SELECT * FROM users WHERE username=\"$USERNAME\""), 0))
Avatar billede duuink Nybegynder
08. juli 2007 - 01:03 #3
den metode hf2ke har brugt virker umiddelbart fin, sådan gør jeg i hvertfald altid og det virker. Men man har jo lov til at være heldig. :)

Prøv eventuelt at udskifte return med echo.
Avatar billede gider_ikke_mere Nybegynder
08. juli 2007 - 01:09 #4
Jeg har før oplevet problemer med metoden. Åbenbart serverafhængig. Det er i øvrigt en ide at prøve at splitte sætningen op, for at spore sig ind på linien hvor han får fejlen *****
Avatar billede coderdk Praktikant
08. juli 2007 - 01:27 #5
if (mysql_result(mysql_query("SELECT COUNT(*) FROM users WHERE username='$USERNAME'"), 0) > 0)
{
    return "Fundet";
}
else
{
    return "Ikke fundet";
}

?

Ellers:

if (@mysql_result(mysql_query("SELECT * FROM users WHERE username='$USERNAME'"), 0))
{
    return "Fundet";
}
else
{
    return "Ikke fundet";
}
Avatar billede Slettet bruger
08. juli 2007 - 02:48 #6
Jeg får en advarsel om, at der ingen tilsvarende data kan findes i tabellen - hvilket metoden jo netop skal teste.
coderdk's svar ser rigtig godt ud - jeg kikker lige på det i morgen.
Avatar billede showsource Seniormester
08. juli 2007 - 07:44 #7
Hvis der kun kan være et af samme, kan du evt. lade det være UNIQUE, og hvis en INSERT fejler, så findes det allerede
Avatar billede Slettet bruger
08. juli 2007 - 12:26 #8
Wheee nu virker det :)
Bare smid et svar, coderdk, dit foreslag var det mest logiske - og det fungerer perfekt.
Avatar billede coderdk Praktikant
08. juli 2007 - 12:43 #9
(c:
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