07. marts 2005 - 21:11
Der er
10 kommentarer og 1 løsning
Overførsel af variable
Jeg er ved at lave et login system med MySQL og PHP. I PHP laver jeg en forspørgsel på hele min bruger tabel således: while ($rs = mysql_fetch_array($resultat)) { extract($rs); } Indenfor de to tuborg kan jeg se alle rækker fra min tabel, men når jeg går udenfor tuborg kan jeg kun se sidste rækken i tabbellen. Længere ned i min kode har jeg bruge for at få alle værdierne fra tabbellen for at lave en sammenligning. Hvordan får jeg lagt alle resultaterne i en variabel som jeg kan bruge udenfor tuborg??
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
07. marts 2005 - 21:14
#1
Lav en: <? while ($rs = mysql_fetch_array($resultat)) { extract($rs); ?> (Dine ting her) <? } ?>
07. marts 2005 - 21:20
#2
Hhhhhmmmm Det medvirker jo bare at (Dine ting her) bliver til alm. html kode og bliver skrevet ud i browseren.
07. marts 2005 - 21:26
#3
Jaaahh.. Er det ikke bare noget med din din mysql_query ska du bruge ORDER BY id eller noget ?? ellers ved jeg ikke rigtig hva du mener :/
07. marts 2005 - 21:32
#4
Nej det er ikke det jeg mener. while ($rs = mysql_fetch_array($resultat)) { extract($rs); echo "$Bruger"; echo "$Pass"; } Hvis jeg laver ovenstående får jeg alle rækker i databasen. while ($rs = mysql_fetch_array($resultat)) { extract($rs); } echo "$Bruger"; echo "$Pass"; Laver jeg derimod den får jeg kun sidste rækken. Alle reslutaterne ligger altså indenfor tuborg, men de må kunne flyttes ud af tuborg.
07. marts 2005 - 22:03
#5
Hvis du skal bruge resultatet et andet sted på siden kan du gemme det i en variabel: $out = ''; while ($rs = mysql_fetch_array($resultat)) { extract($rs); $out .= "$Bruger"; $out .= "$Pass"; } // længere nede i scriptet: echo $out;
Slettet bruger
07. marts 2005 - 22:06
#6
for ($i = 1; $row = mysql_fetch_assoc($resultat); $i++) { $dbdata[$i] = $row; } Så kan du udskrive fx brugernavnet i 3 række med echo $dbdata[3]['bruger']; og passworded fra 23. række: echo $dbdata[23]['pass'];
07. marts 2005 - 22:23
#7
Tak for hjælpen. Jeg giver detox point hvis han ligger et svar. Jeg lige et lille problem med min samligning, hvis I kan hjælpe. while ($rs = mysql_fetch_array($resultat)) { extract($rs); $out1 .= "$Bruger"; $out2 .= "$Pass"; } $bruger1 = $_POST["bruger"]; $pass1 = $_POST["pass"]; if ($out1 == $bruger1 && $out2 == $pass1) { print "Hej"; exit; } else { print "Ingen adgang"; exit; } Jeg får altid Ingen adgang
07. marts 2005 - 22:39
#8
Denne konstruktion: $out1 .= "$Bruger"; gør at alle dine bugere bliver lagt i en lang tekststreng. Du skal hellere lave det på den her måde: $bruger1 = $_POST["bruger"]; $pass1 = $_POST["pass"]; $res = mysql_query("SELECT * FROM tabel WHERE Bruger='$bruger1' AND Pass='$pass1'"); if (mysql_num_rows($res)>0) { print "Hej"; exit; } else { print "Ingen adgang"; exit; }
07. marts 2005 - 22:58
#9
Den giver warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\Inetpub\wwwroot\adgang.php on line 23 Ingen adgang
07. marts 2005 - 23:00
#10
Jeg har fundet fejl, glemte at åbne øjnene :-) Men der point til dig hvis du er interresret. Mange tak for hjælpen.
07. marts 2005 - 23:01
#11
Jo da, velbekommen :O)
Vi tilbyder markedets bedste kurser inden for webudvikling