Gå til innhold

Rart problem i PHP


Anbefalte innlegg

Jeg holder på med et CMS, men jeg har møtt på et problem.

 

Table 'ud.user' doesn't exist

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\Daniel\Mine dokumenter\UngeDesignere CMS\include\functions.php on line 123

 

 

takelogin.php

Klikk for å se/fjerne innholdet nedenfor

<?php
//// Required files ////
require_once "include/functions.php";
//// END Require ////

opendb();

$promtedusername = $_REQUEST["username"];
$promtedpassword = $_REQUEST["password"];

$dbresource = sqltoarray("SELECT * FROM users WHERE username = '" . $promtedusername . "';");

if ($dbresource) {

 if (md5($promtedpassword) == $dbresource["password"]) {
 	$now = date("Y-m-d H:i:s");
 	cookieset("username", $promtedusername, getoneweekdatetime());
 	cookieset("datetime", $now, getoneweekdatetime());

 	mysql_query("INSERT INTO sessions (userid, ip, sessionstart, sessionend, loggedin) VALUES ('" . getuserid($promtedusername) . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" .  $now . "', '" . getoneweekdatetime($now) . "', '1');");

 }else{
 	//Add 1 try to banlist.
 	header("Location: ?page=login&error=2");
 }

}else{
 header("Location: ?page=login&error=1");
}


closedb();

?>

 

 

Linje 121 til 125 i functions.php

Klikk for å se/fjerne innholdet nedenfor
	function sqltoarray($querystring){
 $result = mysql_query($querystring) or print mysql_error();
 $result = mysql_fetch_array($result, MYSQL_ASSOC);
 return $result;
}

 

Noen som har noen aning?

 

Tar jeg vekk "mysql_query("INSERT INTO sessions (userid, ip, sessionstart, sessionend, loggedin) VALUES ('" . getuserid($promtedusername) . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . $now . "', '" . getoneweekdatetime($now) . "', '1');");" i takelogin.php virker det (uten å gjøre det det skal), og erstatter jeg "mysql_query" på den samme med print, kommer samme feil.

 

Takk på forhånd :)

 

Mvh; ze5400

Endret av ze5400
Lenke til kommentar
Videoannonse
Annonse

Men saken er at jeg aldri refererer til "user", når jeg referer er det til "users"...

 

Og som jeg sa, når jeg fjerner koden som setter inn i sessions tabellen, så virker det...

 

Og angående det du sier om setcookie() isteden for cookieset(), så vet jeg det, men for å gjøre det enklere, har jeg laged funksjonen cookieset() i functions.php, så modifiserer den litt på inputen, før den kaller setcookie().

 

 

Takk for svaret likvel, selv om det ikke løste noe :)

 

Håper noen andre har noe som kan hjelpe meg.

 

Mvh: ze5400.

Lenke til kommentar

Legg til i funksjonen og si hva du får ut av det:

function sqltoarray($querystring){
$result = mysql_query($querystring) or print "FEIL: $querystring <br>". mysql_error();
$result = mysql_fetch_array($result, MYSQL_ASSOC);
return $result;
}

 

EDIT: Det jeg urer på, er hva feilmeldingen blir når du har denne funksjonen. Da får du også med spørringen ved en feil.

Endret av kakkle
Lenke til kommentar

Jeg får:

 

FEIL: SELECT id FROM user WHERE username = 'haXXa';

Table 'ud.user' doesn't exist

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\Daniel\Mine dokumenter\UngeDesignere CMS\include\functions.php on line 127

 

Men jeg ber jo (som du kan se fra koden min) aldri etter user, jeg ber jo om users... Og jeg klarer heller ikke å se en sammenheng mellom "INSERT INTO"en min, og "SELECT"...

 

 

Er ikke dette rart så vet ikke jeg...

Lenke til kommentar

Det er ikke i getuserid($promtedusername) funksjonen feilen ligger, da ?

Det vil også forklare hvorfor det fungerer dersom du fjerner INSERT INTO saken.

Prøv å legg inn noen echo "jalla" for å se hvor feilen oppstår.

 

Se litt på getuserid funksjonen. Det står kanskje SELECT * FROM user der ?

Lenke til kommentar
Det er ikke i getuserid($promtedusername) funksjonen feilen ligger, da ?

Det vil også forklare hvorfor det fungerer dersom du fjerner INSERT INTO saken.

Prøv å legg inn noen echo "jalla" for å se hvor feilen oppstår.

 

Se litt på getuserid funksjonen. Det står kanskje SELECT * FROM user der ?

7647307[/snapback]

 

 

Der traff du spikeren på huet!

 

Tusen takk!

 

 

 

 

Fy faen å dum jeg er :wallbash::wallbash::wallbash:

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...