Veröffentlicht 26. Februar 200520 j Hi zusammen, ich habe da ein kleines Problem unszwar bekomme ich immer diese Fehlermeldung. Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in P:\apachefriends\xampp\htdocs\Projekte\MyWeb\admin\basicfunktions.php on line 96 Could not successfully run query () from DB: [/PHP] leider weis ich nicht was hier falsch ist [PHP] function generateinternmenu($user2){ /* Datenbankserver */ $db_server = "localhost"; /* Datenbankname */ $db_name = "Web"; /* Datenbankuser */ $db_user = "Web"; /* Datenbankpasswort */ $db_passwort = "Web"; /* Erstellt Connect zu Datenbank her */ $db_menu2 = @MYSQL_CONNECT($db_server,$db_user,$db_passwort); mysql_select_db("Web",$db_menu2); --> $menu = mysql_query("select m.name from recht r, tuser u, menuintern m, user_menuintern_recht umr where umr.rechtid = r.rechtid and umr.userID = u.userID and umr.menuinternID = m.menuinternID and u.name = '%s' order by m.menuinternID", mysql_real_escape_string($user2)); <-- if (!$menu) { echo "Could not successfully run query ($sql) from DB: " . mysql_error(); exit; } if (mysql_num_rows($menu) == 0) { echo "No rows found, nothing to print so am exiting"; exit; } $menu_count = mysql_num_rows($menu); for($x=0;$x<7;$x++){ $menu_row=mysql_fetch_assoc($menu); $menu_name=$menu_row[0]; $menu_link=$menu_row[1]; menulayout($menu_link,$menu_name); } }; Kann mir jemand helfen ?
26. Februar 200520 j /* Erstellt Connect zu Datenbank her */ $db_menu2 = @MYSQL_CONNECT($db_server,$db_user,$db_passwort); Kann mir jemand helfen ? Warum unterdrückst du Fehlermeldungen mit dem @?
26. Februar 200520 j Warum unterdrückst du Fehlermeldungen mit dem @? Naja das sollte man in som Fall nicht unterdrücken sondern abfangen mit nem die(mysql_error()) dann wärest vllt. schlauer, wieso das nicht geht-
26. Februar 200520 j oh ups wusste ich nicht das dadurch fehler unterdrückt werden hatte das aus nem beispiel. aber ich hätte noch ne andere frage da ich einen internen bereich am basteln bin. Wie kann ich die Werte aus dem Login FOrmular weiter geben? Post und get ist soweit klar nur habe ich das Problem das ich die Werte nur an die 1. seite bekomme. wenn ich von dort aus einen anderen link aufrufe bekomme ich die daten nicht mehr. Was kkann ich da machen?
26. Februar 200520 j oh ups wusste ich nicht das dadurch fehler unterdrückt werden hatte das aus nem beispiel. aber ich hätte noch ne andere frage da ich einen internen bereich am basteln bin. Wie kann ich die Werte aus dem Login FOrmular weiter geben? Post und get ist soweit klar nur habe ich das Problem das ich die Werte nur an die 1. seite bekomme. wenn ich von dort aus einen anderen link aufrufe bekomme ich die daten nicht mehr. Was kkann ich da machen? Du solltes PHP Funtkionen auch nicht unbedingt in Grossbuchstaben schreiben. Konstanten werden eigentlich gross geschrieben. Du könntest die Daten in eine Session packen. http://de2.php.net/session
26. Februar 200520 j Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in P:\apachefriends\xampp\htdocs\Projekte\MyWeb\admin\basicfunktions.php on line 96 Could not successfully run query () from DB: [/PHP] Wenn dein mysql_connect() keine Fehlermeldung bringt, liegt das Problem wahrscheinlich beim DB-Server. Es kann sein, dass zu viele Verbindungen offen sind, damit kann keine neue geöffnet werden und es kommt zu dem oben stehenden Fehler. Eine Möglichkeit könnte das zwischenzeitliche Schliessen der Verbindung, das Verwenden einer DB-Wrapper-Klasse, oder im schlimmsten Fall eine globale Verbindung sein. Post und get ist soweit klar nur habe ich das Problem das ich die Werte nur an die 1. seite bekomme. wenn ich von dort aus einen anderen link aufrufe bekomme ich die daten nicht mehr. Was kkann ich da machen? Du hängst entsprechende Werte an den Link oder nimmst eben die Session.
26. Februar 200520 j Cool danke das erste problem hat sich erledigt irgend wie hate der den String Falsch eingefügt. Wegen dem 2. Prob hab ich hier ne geniale anleitung gesehen. Allerdings frage ich mich ob diese methode sicher ist? Was könnt ihr mir dazu sagen da ja immer nur abgefragt wird ob die id gesetzt ist oder nicht?
26. Februar 200520 j Da die Session auf dem Server gespeichert ist, kann man den Inhalt der Sessions nicht so einfach verändern. Also ist es relativ sicher. Man sollte zusätzlich noch die IP Adresse mit einbauen. Und prüfen ob die Client IP Adresse noch zu der IP Adrsse past mit der die Session angelegt wurde. Frank
26. Februar 200520 j Nachteil ist jedoch auch, dass man Sessions weitergeben kann. Wobei es dann durch die IP, wie es pal vorgeschagen hat schwieriger wird
1. März 200520 j Hi ich bins nochmal hab soweit alles hinbekommen. Allerdings hab ich jetzt ein problem bei der Rechte abfrage. das bekomme ich ausgegteben. Admin HOME root SELECT * from recht r, tuser u, menuintern m, user_menuintern_recht umr where umr.rechtid = r.rechtid and umr.userID = u.userID and umr.menuinternID = m.menuinternID and u.name = 'root' and m.name = 'HOME' and r.name ='Admin' Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in P:\apachefriends\xampp\htdocs\Projekte\MyWeb\test\test.php on line 38[/PHP] das ist der Source [PHP]<?php session_start (); include ("../admin/funktionen/chekuser.php"); include ("../admin/funktionen/basicfunktions.php"); /* Datenbankserver */ $db_server = "localhost"; /* Datenbankname */ $db_name = "Web"; /* Datenbankuser */ $db_user = "Web"; /* Datenbankpasswort */ $db_passwort = "Web"; /* Erstellt Connect zu Datenbank her */ $db = mysql_connect($db_server,$db_user,$db_passwort); mysql_select_db("Web",$db); echo $rechtname='Admin'; echo'<br>'; echo $seite='HOME'; echo'<br>'; echo $_SESSION["user_nickname"]; echo'<br>'; $sql="SELECT * from recht r, tuser u, menuintern m, user_menuintern_recht umr where umr.rechtid = r.rechtid and umr.userID = u.userID and umr.menuinternID = m.menuinternID and u.name = '".$_SESSION["user_nickname"]."' and m.name = '".$seite."' and r.name ='".$rechtname."'"; echo $sql; $recht = mysql_query($sql); if($row=mysql_fetch_array($menu)) { echo 'geht' ; } echo mysql_error(); ?> wobei ich anstelle von mysql_fetch_array schon mysql_fetch_row getestete hab und bei beidem kommt die selbe fehlermeldung. Den select kann ich auf der DB ausführen und bekomme genau eine zeile zurück. was mache ich falsch
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.