Fehler beim auslesen einer DB
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
argument
beitrag
error
fehler
fehlermeldung
folgende fehlermeldung
folgende zeile
funktion
global schreiben
klappe
not
null
prinzip
quelltext
resource
result
schreibe
stehen
versuch
zeile
-
Moin moin,
ich wollte mal meinen Downloadbreich mit meinem Forum verkn?pfen, dass problem ist nur dass mir mein Script - warum auch immer - ein Strich durch die Rechnung macht:
Das ist das Script:
require "_data.inc.php"; $user_id=$HTTP_COOKIE_VARS['user_id']; $user_password=$HTTP_COOKIE_VARS['user_password']; echo $user_id . "<br>" . $user_password; $db = @MYSQL_CONNECT($mysqlhost,$mysqluser,$mysqlpassword); @mysql_select_db("$mysqldb",$db); function online() { $result = mysql_query("SELECT * FROM bb".$n."_user_table WHERE userid='$user_id'"); while($row = mysql_fetch_object ($result)) { $res[] = $row -> userpassword; $res[] = $row -> rang; } if ($result) { $v.="-DB ausgelesen\n"; if($res[0]==$user_password) { $on_off = $res[1]; } } return $on_off; }
Und so wird das ganze ausgef?hrt:
require "online.php"; echo online();
Und dann kommt folgende Fehlermeldung
1
83de708f52826ee20930ea446889e9ad
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/webpages/lima-city/butzlumbejunky/html/forum/online.php on line 15
Das Komische daran ist dass die UserID ganz normal ausgegeben werden kann aber dann wenn die DB ausgelesen werden soll nicht mehr funzt.
Kann mir da einer Weiterhelfen, wo mein Fehler liegt? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
$user_id=$HTTP_COOKIE_VARS['user_id'];
$user_password=$HTTP_COOKIE_VARS['user_password'];
Schreib mal lieber folgendes, denn es ist einfacher! ;)
$user_id = $_COOKIE['user_id'];
$user_password = $_COOKIE['user_password'];
@mysql_select_db("$mysqldb",$db);
Tja, das sieht ein bi?chen merkw?rdig aus!
Versuchs mal so
@mysql_select_db($mysqldb,$db);
Jetzt das eingetliche Problem :
In einer Funktion stehen keine Varibalen vom "Hauptquelltext" zur Verf?gung!
Du musst alle Variablen ?ber "global $var;" "globalisieren", dann kannst du auch in der Funktion darauf zugreifen.
-
lucas9991 schrieb:
$user_id=$HTTP_COOKIE_VARS['user_id'];
$user_password=$HTTP_COOKIE_VARS['user_password'];
Schreib mal lieber folgendes, denn es ist einfacher! ;)
$user_id = $_COOKIE['user_id'];
$user_password = $_COOKIE['user_password'];
Das ist ja vom Prinzip her egal, das funzt ja.
@mysql_select_db('$mysqldb',$db);
Tja, das sieht ein bi?chen merkw?rdig aus!
Versuchs mal so
@mysql_select_db($mysqldb,$db);
Auch das geht so wie es ist(mach ich schon immer so).
Jetzt das eingetliche Problem :
In einer Funktion stehen keine Varibalen vom 'Hauptquelltext' zur Verf?gung!
Du musst alle Variablen ?ber 'global $var;' 'globalisieren', dann kannst du auch in der Funktion darauf zugreifen.
Dh ich schreibe einfach vor das $result ein global und dann sollte das gehen oder wie ist das zu verstehen?
Thx schonma
EDIT:
a nee ich muss vor $user_id und $user_password ein global schreiben meinte ich.
EDIT(2):
Nun kommt diese Fehlermeldung:
Parse error: parse error, unexpected '=', expecting ',' or ';' in /home/webpages/lima-city/butzlumbejunky/html/forum/online.php on line 4
Beitrag ge?ndert am 13.07.2005 22:42 von butzlumbejunky -
lucas9991 hat das so gemeint:
Ganz oben in deinen Quelltext folgende Zeile:
$result = NULL;
Dann in der Funktion Online() das hier reinmachen am Anfang:
global $result;
Dann sollte es klappen. Das gleiche gilt nat?rlich auch f?r die anderen in Funktionen benutzten Variablen, die auch global und nicht nur in der Funktion selbst verwendet werden. -
Also mein Quelltext sieht jetzt so aus:
require "_data.inc.php"; $user_id=$HTTP_COOKIE_VARS['user_id']; $user_password=$HTTP_COOKIE_VARS['user_password']; echo $user_id . "<br>" . $user_password; $db = @MYSQL_CONNECT($mysqlhost,$mysqluser,$mysqlpassword); @mysql_select_db("$mysqldb",$db); $userid = $user_id; function online() { global $user_id, $user_password;
Und an der Fehlermeldung hat sich ausser der Zeile nichts ge?ndert...
Was nun -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage