Avatar billede ofirpeter Nybegynder
21. marts 2004 - 19:41 Der er 11 kommentarer og
1 løsning

Fejl i login script

Jeg har lavet et login script, hvor man skal skrive et unikt kodeord for at logge ind på siden. Men jeg har et problem som jeg ikke rigtig kan overskue, når jeg indtaster en forkert kode, skriver den:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/web/gb1404/tilfreds/index.php on line 9

Hvordan for jeg den til at give en variabel noget tekst, som f.eks. $fejl= "forkert kode"

Jeg har forsøgt med med følgende:

$kode_tjek = mysql_query("SELECT kode FROM tilfreds_".$navnekode."_kode WHERE kode='$kode'");
if(mysql_num_rows($kode_tjek) != 0) {

    $raekke = mysql_fetch_array($kode_tjek);

    $_SESSION['kode'] =  $raekke['kode'];
    header("Location: index1.php");
    mysql_close($conn);
}else{
$fejl = "Du har indtastet en forkert kode";
}
Avatar billede thb Nybegynder
21. marts 2004 - 19:50 #1
du burde bare kunne skrive
$kode_tjek = mysql_query("SELECT kode FROM tilfreds_".$navnekode."_kode WHERE kode='$kode'");
if($r = mysql_fetch_row($kode_tjek)){
// passwordet findes
}else{
// passwordet findes ikk..
}

Thomas
Avatar billede ofirpeter Nybegynder
21. marts 2004 - 19:59 #2
Den giver mig samme fejlmeddelelse, nu ser koden altså sådan ud:

$kode_tjek = mysql_query("SELECT kode FROM tilfreds_".$navnekode."_kode WHERE kode='$kode'");

if($r = mysql_fetch_row($kode_tjek)){
    $raekke = mysql_fetch_array($kode_tjek);                   
    $_SESSION['kode'] =  $raekke['kode'];
    header("Location: index1.php");                             
}else{
    $fejl = "Du har indtastet en forkert kode";
}}
Avatar billede ofirpeter Nybegynder
21. marts 2004 - 19:59 #3
Med mindre jeg skriver noget rigtigt, så virker det fint..
Avatar billede thb Nybegynder
21. marts 2004 - 20:18 #4
når du bruger mysql_fetch_row() så skal du skrive $raekke[0], men det burde ikke være hoved problemet..

Jeg kan ikke lige se hvad problemet skulle være..

Thomas
Avatar billede ofirpeter Nybegynder
21. marts 2004 - 20:30 #5
Hvor skal jeg skrive $raekke[0] ? Over det hele?

Og efterlyser stadig en måde at få det hele til at virke på :0)
Avatar billede thb Nybegynder
21. marts 2004 - 20:37 #6
det er når man bruger mysql_fetch_row() så kommer resultat ud som array så når du siger "select kode from..." så skal du skrive $raekke[0], hvor du vil skrive $raekke['kode'] så skal du bruge mysql_fetch_array() som er begge dele, eller mýsql_fetch_assoc() som kun bruger $raekke['kode']

Håber at det gav lidt mening.. :)

Thomas
Avatar billede ofirpeter Nybegynder
21. marts 2004 - 20:40 #7
Jeg må indrømme jeg stadig ikke er med? Vil du prøve at indsætte det i min kode?
Avatar billede thb Nybegynder
21. marts 2004 - 21:44 #8
$raekke[0] istedet for $raekke['kode']

Thomas
Avatar billede domaz.dk Novice
22. marts 2004 - 09:42 #9
er du sikker på at du har en række i din mysql som hedder det der... tilfreds_".$navnekode."_kode.... for den fejl plejer jeg altid at få hvis jeg har kommet til at skrive en forkert række eller tabel som ikk findes i databasen...
Avatar billede heyde Nybegynder
22. marts 2004 - 11:26 #10
Prøv evt. at installere den nyeste version af php. Jeg har før haft problemer med login scripts, der blev løst ved at hente en nyere version fra php.net.
Avatar billede ofirpeter Nybegynder
22. marts 2004 - 15:53 #11
Jeg kørte spr. videre her, og fandt ud af det var mig der var på vildspor.
http://www.eksperten.dk/spm/480182
thb du er vist berettiget til point.
Avatar billede thb Nybegynder
22. marts 2004 - 21:43 #12
okay, men så ligger jeg bare et svar..

Thomas
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