01. juli 2004 - 21:13
Der er
18 kommentarer og 1 løsning
Endnu en kode der ikke virker!
HVad er nu galt, har siddet i over to timer og knoklet, men det rokker sig ikke! Koden er her: <? session_start(); include("sider.php"); $sesnavn = $_SESSION['navn']; $sess = $_SESSION['status']; if ( $sess != 'login' ) { print(" <script language='javascript'> location.href='login.php'; </script>"); } include("xx.php"); $query = "SELECT id, user, pass FROM login WHERE user = '".$_GET['bruger']."' AND pass= '".$_GET['kode']."'"; $result = mysql_query($query)or die("MySQL fejl: " . mysql_error()); $log = mysql_fetch_array($result); $bruger = $_GET['bruger']; $kode = $_GET['kode']; if ( $bruger = $log['user'] && $kode = $log['pass'] ) { include("xx.php"); $quer = ("DELETE FROM login WHERE user = '$bruger' LIMIT 1"); $goquer = mysql_query($quer)or die("MySQL fejl: " . mysql_error()); echo "<script type=\"text/javascript\">alert(\"Din bruger er fjernet, og logget af!!!\");</script>"; print(" <script language='javascript'> location.href='logoffs.php'; </script>"); exit; } else { echo "<script type=\"text/javascript\">alert(\"Bruger og kode passer ikke sammen!!!\");history.go(-1)</script>"; exit; } ?> Problemet er ikke så stort som det har været! Selve scriptet virker i sig selv, men den sletter ikke brugeren fra databasen. HVORFOR? DETTE STYKKE: $bruger = $_GET['bruger']; $kode = $_GET['kode']; if ( $bruger = $log['user'] && $kode = $log['pass'] ) { include("xx.php"); $quer = ("DELETE FROM login WHERE user = '$bruger' LIMIT 1"); $goquer = mysql_query($quer)or die("MySQL fejl: " . mysql_error()); echo "<script type=\"text/javascript\">alert(\"Din bruger er fjernet, og logget af!!!\");</script>"; print(" <script language='javascript'> location.href='logoffs.php'; </script>"); exit; }
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
$quer = ("DELETE FROM login WHERE user = '$bruger'");
ja det kan jeg godt se, men virker endnu ikke
der må han nu godt sætte LIMIT på, men mon ikke if ( $bruger = $log['user'] && $kode = $log['pass'] ) { skal være if ( $bruger == $log['user'] && $kode == $log['pass'] ) {
er der en grund til at du inkluderer filen xx.php to gange ? Det er næsten aldrig nødvendigt at inkludere en fil mere end een gang.
nej men gjorde det for sikkerheds skyld! erikjacobsen >> HVis jeg gør det så virker det ikke! Det er heller ikke problemet! Problemet er at den ikke sletter!
Jamen den med = er jo helt forkert, ikke? Men det er ganske overflødigt, for den if skal bare være if (mysql_num_rows($result)==1) { for du har jo checket på de 2 værdier i sql-sætningen allerede
Ja men den kommer ind i if sætningen, det virker fint! Det eneste den ikke foretager sig er dette! $quer = ("DELETE FROM login WHERE user = '$bruger' LIMIT 1"); $goquer = mysql_query($quer)or die("MySQL fejl: " . mysql_error());
Det er jo ikke spørgsmålet om den kommer ind, den skal jo komme derind på de rigtige tidspunkter. Fortæl mig: mener du at din version med = er korrekt, og i givet fald hvorfor?
Nej det virker på begge måder! Men det hjælper ikke! For det er det rigtige tidspunkT!
01. juli 2004 - 21:31
#10
har ændret lidt er sådan nu: include("acces.php"); $query = "SELECT id, user, pass FROM login WHERE user = '".$_GET['bruger']."' AND pass= '".$_GET['kode']."'"; $quer = ("DELETE FROM login WHERE user = '$bruger'"); $result = mysql_query($query)or die("MySQL fejl: " . mysql_error()); $log = mysql_fetch_array($result); $bruger = $_GET['bruger']; $kode = $_GET['kode']; if ( $bruger == $log['user'] && $kode == $log['pass'] ) { $goquer = mysql_query($quer)or die("MySQL fejl: " . mysql_error()); exit; } Men virker ikke, ingen fejl eller noget! den sletter bare ikke!
01. juli 2004 - 21:32
#11
Du skal i hvert fald ikke have $quer = ("DELETE FROM login WHERE user = '$bruger'"); før du putter noget i $bruger - vel?
01. juli 2004 - 21:33
#12
nu virker det! Jeg flyttede $bruger = $_GET['bruger']; $kode = $_GET['kode']; over include, her: $bruger = $_GET['bruger']; $kode = $_GET['kode']; include("acces.php"); $query = "SELECT id, user, pass FROM login WHERE user = '".$_GET['bruger']."' AND pass= '".$_GET['kode']."'";
01. juli 2004 - 21:34
#13
Nej nej fandt ud af det!, du virker lidt gnaven syns jeg!
01. juli 2004 - 21:35
#14
Lige så du ved det. JEg flyttede det lige før du skrev det!
01. juli 2004 - 21:37
#15
Jeg er da fløjtende ligeglad. Men kan du ikke se at du laver overflødigt arbejde. Brug fx $bruger og $kode i din sql-sætning, når du nu har dem. Og lav dit test om så du gør som foreslået: 21:24:10
01. juli 2004 - 21:40
#16
Du er godt nok ikke den mest høflige jeg har talt med, for det andet så vælger jeg vel selv hvad jeg gør!!!!! :( :( Du gør klogt i at snakke lidt mere høfligt, så er der flere der vil synes om dig, hvilket der da ikke kan være nu! Jeg ved ikke om du opfører dig sådan her bare fordi du er på top 10, og jeg vil heller ikke lyde sur, men tænk dig lige om hvad du siger. Du kan få folk til at føle sig fornærmede!
01. juli 2004 - 21:42
#17
Og jeg synes du reagerer besynderligt. Jeg tilbyder dig hjælp, uden at fornærme dig. Men selvfølgelig må du gøre hvad du vil.
01. juli 2004 - 21:46
#18
Jeg er da fløjtende ligeglad. Men kan du ikke se at du laver overflødigt arbejde. Brug fx $bruger og $kode i din sql-sætning, når du nu har dem. Og lav dit test om så du gør som foreslået: 21:24:10 I sær første linje er kritiserende! og også de andre hvad med: Godt du fandt ud af det :) HVis jeg var dig, så for at gøre det lodt lettere at holde styr på, så ville jeg bruge fx den $bruger og $kode i din sql sætning! Det ville også blive mere overskueligt hvis du ændrer det i 21:24:10 MEn det er selvfølgelig op til dig! :)
01. juli 2004 - 21:58
#19
Du er velkommen til at opfatte det som du vil.
Vi tilbyder markedets bedste kurser inden for webudvikling