phpbar.de logo

Mailinglisten-Archive

[php] sql und php - unerklärliches verhalten

[php] sql und php - unerklärliches verhalten

LB BL lsblsb at gmx.de
Mon Jul 30 17:46:43 CEST 2007


hallo,

ich habe ein sehr seltsames problem, und keine ahnung wo ein fehler liegen könnte - viell. fällt euch was auf:
[...]
echo($output_num); //ausgabe: 3
echo($preview_msg_length); //ausgabe: 101

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

echo($sql);
//ausgabe: UPDATE avl_news_output_options SET n_output_num = '3', n_preview_msg_length = '101' WHERE project_id = 'avl'
		$q = mysql_query($sql,$this->conn);
[...]

---

nun geschieht folgendes:
trotz erfolgreicher query (wird überprüft) sieht die datenbank nachher aus wie davor, stattdessen werden die default-werte der datenbank abgespeichert.

wenn ich nun den string in $sql insofern ändere, dass feste zahlen hineinschreibe - ohne eine variablen-konkanetation, wird der datenbankeintrag vorgenommen! die zeile sieht dann so aus:
$sql = "UPDATE avl_news_output_options SET n_output_num = '$output_num', n_preview_msg_length = '101' WHERE project_id = 'avl'";

wie kann das sein???
das ganze kommt per utf-8 aus dem formular - aber kann das die ursache sein? - alle utf-8 spezifischen einstellungen sind allerdings beachtet. und  es handelt sich ja auch um zahlen..

---

die betroffene datenbank-tabelle sieht so aus:
(
project_id varchar(127) NOT NULL,
n_output_num smallint default 5,
n_preview_msg_length smallint default 100,
n_use_timestamp enum('yes','no') default 'no',
n_timestamp TIMESTAMP(19) default NULL,
PRIMARY KEY (project_id))

---

danke für jeden tipp!
-- 
GMX FreeMail: 1 GB Postfach, 5 E-Mail-Adressen, 10 Free SMS.
Alle Infos und kostenlose Anmeldung: http://www.gmx.net/de/go/freemail

php::bar PHP Wiki   -   Listenarchive