hi leute,
wie schon im betreff geschrieben unterscheiden sich ja die null-werte.
ich wollte mal eine kleine session-verwaltung auf die beine stellen. hier die datenbanktabelle dazu:
nicht angemeldete benutzer bekommen in der dazugehörigen php-klasse den wert null: private $account_name=null;
mein insert, wenn eine neue session gestartet wird, sieht dazu so aus:
tja, $this->account_name ist php-null, aber mysql versucht einen leeren string einzutragen: "Duplicate entry '' for key 2"
wie bekomme ich nun php-null als mysql-null in die datenbank?
wie schon im betreff geschrieben unterscheiden sich ja die null-werte.
ich wollte mal eine kleine session-verwaltung auf die beine stellen. hier die datenbanktabelle dazu:
Code:
CREATE TABLE `user_session` ( `session_id` varchar(32) NOT NULL default '', `account_name` varchar(20) default NULL, `last_timestamp` varchar(10) NOT NULL default '', `session_data` text NOT NULL, PRIMARY KEY (`session_id`), UNIQUE KEY `account_name` (`account_name`) )
mein insert, wenn eine neue session gestartet wird, sieht dazu so aus:
PHP-Code:
$sql="INSERT INTO `user_session`
(`session_id`, `account_name`, `last_timestamp`, `session_data`)
VALUES
('".session_id()."', '$this->account_name', '".time()."', '".serialize($this->data)."')";
wie bekomme ich nun php-null als mysql-null in die datenbank?
Kommentar