Avatar billede Slettet bruger
15. januar 2006 - 13:54 Der er 3 kommentarer og
1 løsning

Forkert respons på sql-forespørgsel

Jeg har følgende kode:

$username_check = "keld";
$admin_id      = 1;

$sql_username_check = ("SELECT username
                        FROM users
                        WHERE username='$username_check'
                        AND id!='$admin_id'
                      ");

open_sql();
$query_username_check = mysql_query($sql_username_check) or die (mysql_error());
close_sql();

if (mysql_num_rows($query_username_check) > 0)
  {
    echo "Brugernavnet er i brug.";
  }
else
  {
    echo "Brugernavnet er ikke i brug.";
  }

Jeg har en bruger der hedder "keld" og id for "keld" er "1".

Når brugeren så trykker gem, skal den checke om brugernavnet er i brug, dog uden at kigge på brugerens egen række i databasen, idet vedkommende selvfølgelig gerne må bruge sit brugernavn.
Avatar billede Slettet bruger
15. januar 2006 - 13:55 #1
Den skriver at brugernavnet er i brug, selvom der ikke er andre end brugeren selv der bruger navnet.
Avatar billede well_r Nybegynder
15. januar 2006 - 14:03 #2
prøv evt at printe mysql_num_rows() ud.. såldes du kan se hvor mange der egentligt har det.
samtidigt kan du også få den til at printe din sql-sætning ud..
så kan du jo være helt sikker på at det du forespørger er rigtigt
Avatar billede cpufan Juniormester
15. januar 2006 - 14:14 #3
går ud fra at id er defineret som tal,
og så skal sql ændres til:

AND id <> $admin_id

hvis id er tekst prøv da:


AND id <> '$admin_id'
Avatar billede Slettet bruger
15. januar 2006 - 14:25 #4
cpufan...> Det løste problemet.
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