Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:15572 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 45446 invoked by uid 1010); 24 Mar 2005 11:19:14 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 45403 invoked from network); 24 Mar 2005 11:19:14 -0000 Received: from unknown (HELO pb1.pair.com) (127.0.0.1) by localhost with SMTP; 24 Mar 2005 11:19:14 -0000 X-Host-Fingerprint: 80.91.229.2 main.gmane.org Linux 2.4/2.6 Received: from ([80.91.229.2:40791] helo=ciao.gmane.org) by pb1.pair.com (ecelerity HEAD r(5268)) with SMTP id 01/5B-11954-132A2424 for ; Thu, 24 Mar 2005 06:19:13 -0500 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1DEQMg-0000ki-1R for internals@lists.php.net; Thu, 24 Mar 2005 12:19:03 +0100 Received: from 62.206.42.140 ([62.206.42.140]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 24 Mar 2005 12:19:02 +0100 Received: from thies by 62.206.42.140 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 24 Mar 2005 12:19:02 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: internals@lists.php.net Date: Thu, 24 Mar 2005 12:19:02 +0100 Lines: 33 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Gmane-NNTP-Posting-Host: 62.206.42.140 User-Agent: Unison/1.5.2 Sender: news X-Gmane-MailScanner: Found to be clean X-Gmane-MailScanner: Found to be clean X-MailScanner-From: php-php-dev@m.gmane.org X-MailScanner-To: internals@lists.php.net Subject: pdo: cannot send NULL values thru bound parameters. From: thies@thieso.net (Thies C . Arntzen) as we convert "incoming" zvals to strings in pdo_stmt.c "no matter what"... $stmt = $this->prepareStatement('insert into bla (name) values (:name)'); $name = NULL; var_dump($name); // $name is NULL $stmt->bindParam(':name', $name); var_dump($name); // $name is an empty string am i overlooking something obvious? attached patch "fixes" it for me (NULL is a valid "value" for a string)... re, tc Index: pdo_stmt.c =================================================================== RCS file: /repository/php-src/ext/pdo/pdo_stmt.c,v retrieving revision 1.94 diff -u -w -r1.94 pdo_stmt.c --- pdo_stmt.c 21 Mar 2005 00:29:06 -0000 1.94 +++ pdo_stmt.c 24 Mar 2005 11:13:31 -0000 @@ -253,7 +253,7 @@ } } - if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_STR && param->max_value_len <= 0) { + if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_STR && param->max_value_len <= 0 && ! ZVAL_IS_NULL(param->parameter)) { convert_to_string(param->parameter); }