phpbar.de logo

Mailinglisten-Archive

[php] sql und php - unerklärliches verhalten

[php] sql und php - unerklärliches verhalten

Sebastian Mendel lists at sebastianmendel.de
Die Jul 31 07:59:54 CEST 2007


LB schrieb:
> Jan Piotrowski schrieb:
>>> tatsächlich muss es mit dem formular und utf-8 zusammenhängen, da - wenn ich die variablen neu definiere vor der konkatenation mit dem sql string gibt es auch kein problem.
>>>     
>> Wie hast du sie denn genau neu definiert? Ich tippe auf ein
>> Typenproblem der Variabeln.
>
> also wenn ich es so mache dass ich vor der zeile die variablen nochmals 
> manuell setze:
> 
> $output_num = 3;
> $preview_msg_length = 101;
> 
> $sql = "UPDATE avl_news_output_options SET n_output_num = '$output_num', n_preview_msg_length = '$preview_msg_length' WHERE project_id = 'avl'";

ich wandle grundsätzlich explizit nach int um bevor ich Variablen in ein SQL
einsetze, egal woher die kommen

$sql = "
   UPDATE avl_news_output_options
      SET n_output_num = " . (int) $output_num . ",
          n_preview_msg_length = " . (int) $preview_msg_length . "
    WHERE project_id = 'avl'";


> ..gibt es ja kein problem.

mach doch mal ein SHOW WARNINGS nach dem fehlerhaften SQL
Welche MySQL Version ist es eigentlich?


> eines ist mir gerade noch ins auge gefallen.
> die variablen aus dem formular werden vorher folgendermaßen in variablen umgesetzt:
> 
> $form_vars = array_merge($_GET,$_POST);

?

du kennst aber schon $_REQUEST?

ja, ich weiß da sind auch die Cookies drin, ich verwende deshalb immer extra
Arrays in meinen Formularen um die Sauber zu trennen und trotzdem überall
einfach $_REQUEST verwenden zu können


> foreach($form_vars as $key=>$value)
>   	${$key} = $value;
> 
> könnte da eine fehlerquelle sein?

also da^^ eigentlich nicht, wenn dann eher in PHP selber, welche Version
hast du denn?

-- 
Sebastian

php::bar PHP Wiki   -   Listenarchive