-
Mahlzeit miteinander habe oben beschriebenes Problem,
hier der Code:
hier noch die safe_query function:PHP-Code:function getSetting($setting){
$res=mysql::safe_query("SELECT value FROM `settings` WHERE setting=".$setting."");
while($row=mysql_fetch_row($res)){
echo $row[0];
}
}
habe schon alles mögliche ausprobiert aber es hilft einfach nix -.-PHP-Code:function safe_query($query){
mysql_query(mysql_real_escape_string($query));
}
bin für jede hilfe dankbar
-
Entweder ist dein Prefix falsch oder du hast eine Spalte angegeben die nicht vorhanden ist.
Oder Probiere es mal so :
PHP-Code:function getSetting($setting){
$res=mysql::safe_query('SELECT value, setting FROM `settings` WHERE setting="'.$setting. '"');
while($row=mysql_fetch_row($res)){
echo $row[0];
}
}
-
funktioniert leider auch nicht habe echt schon alles durch verzweifel hier langsam
-
Da die diese Art von Fragen sehr oft kommt, habe ich mal ein Tutorial geschrieben wie man am besten auf Fehlersuche geht.
[PHP] [MySQL] Debug Queries
Geh es doch mal durch und falls du die Lösung nicht findest, poste mal das ausgegebe SQL-Statement ins Forum.
Du wirst sehen, dass dein mysql_real_escape_string() auf das ganze SQl alle deine Anfüuhrungszeichen innerhalb des SQL-Strings escapt. Damit kann MySQL nix mehr anfangen. mysql_real_escape_string() verwendet man auf die einzelnen Werte, nicht aber auf das ganez SQL.---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Was willst du eigendlich damit bewirken ? $res=mysql::safe_query
Warum sind da zwei doppel Punkte ?
Versuch es mal nochmal so :
Und hast du eine Verbindung zu Datenbank erstellt ?PHP-Code:function getSetting($setting){
$res=mysql::safe_query('SELECT value, setting FROM `settings` WHERE setting = "'.$setting. '"');
while($row=mysql_fetch_row($res)){
echo $row[0];
}
}
-
@Fanseite:
Mit 2 : ruft er eine statische Methode seiner Klasse mysql auf. Ich seh jedoch zwar in der Definition der Methode das Wort static nicht.....
Ansonsten wie oben geschrieben. Das Problem liegt hier:
Du wirst sehen, dass dein mysql_real_escape_string() auf das ganze SQl alle deine Anfüuhrungszeichen innerhalb des SQL-Strings escapt. Damit kann MySQL nix mehr anfangen. mysql_real_escape_string() verwendet man auf die einzelnen Werte, nicht aber auf das ganez SQL.---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Also müsste er es so machen :
PHP-Code:function getSetting($setting){
$setting = mysql_real_escape_string($_GET oder $_POST['setting']);
$res=mysql::safe_query("SELECT value FROM `settings` WHERE setting=".$setting."");
while($row=mysql_fetch_row($res)){
echo $row[0];
}
}
function safe_query($query){
mysql_query($query);
}
-
Jepp. Und die Methode safe_query() müsste statisch sein
PHP-Code:static function safe_query($query){
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
So im groß und ganzen machen es mal so :
PHP-Code:function getSetting($setting){
$setting = mysql_real_escape_string($_GET oder $_POST['setting']);
$res=mysql::safe_query(' SELECT value, setting FROM `settings` WHERE setting = "'.$setting.'" ');
while($row=mysql_fetch_row($res)){
echo $row[0];
}
}
static function safe_query($query){
mysql_query($query);
}
-
Dann braucht er diesen Part aber auch nicht mehr:
dafür kann er dann:Code PHP:1
mysql::safe_query
nutzen.Code PHP:
Quasi so:
Code PHP:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
function getSetting( $setting ) { $setting = mysql_real_escape_string( $setting ); $res = mysql_query(" SELECT value, setting FROM settings WHERE setting = '$setting'; "); while( $row = mysql_fetch_array( $res, MYSQL_ASSOC ) ) { // mach was mit $row['value'] und $row['setting'] } }
GrußGeändert von Raisch (03.02.12 um 12:49 Uhr)
-
EIn Tipp an Rande. Rein aus Debugging-Gründen und der Lesbarkeit zuliebe rate ich dir, anzugewöhnen den SQL-Code und die SQL-Ausführung zu trennen.
Siehe dazu auch [PHP] [MySQL] Debug QueriesPHP-Code:$sql="
SELECT
value,
setting
FROM
settings
WHERE
setting = '{$setting}';";
$res = mysql_query($sql);
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Okay Vielen danke das werde ich auch brauchen denk ich
-
-
danke an allen aber es geht damit immer noch nicht
die query abfrage is aber auch richtig
SELECT value FROM `settings` WHERE setting="title"Geändert von Slain (03.02.12 um 13:55 Uhr)
-
03.02.12 14:00 #15
- Registriert seit
- Mar 2009
- Beiträge
- 171
Ähnliche Themen
-
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource
Von Hattrix im Forum PHPAntworten: 30Letzter Beitrag: 29.07.10, 15:39 -
Verzweiflung: supplied argument is not a valid MySQL result resource...
Von SonMiko im Forum PHPAntworten: 9Letzter Beitrag: 14.09.08, 20:22 -
mysql_fetch_row(): supplied argument is not a valid MySQL result resource in
Von fvosgerau im Forum PHPAntworten: 9Letzter Beitrag: 22.04.08, 10:58 -
mysql_num_fields(): supplied argument is not a valid MySQL result resource
Von Mavericklp im Forum PHPAntworten: 4Letzter Beitrag: 21.09.07, 11:53 -
mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource
Von 3dsmaxer im Forum PHPAntworten: 3Letzter Beitrag: 18.05.07, 13:12



2Danke

Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren