ID:               36143
 User updated by:  lvm99 at mail dot ru
 Reported By:      lvm99 at mail dot ru
-Status:           Feedback
+Status:           Open
 Bug Type:         PDO related
 Operating System: Windows
 PHP Version:      5.1.2
 New Comment:

Here You can fild "working" test base and script
http://converters.ru/PHP_TEST_PDO.ZIP

On my PC script inserts all fields to :id 

and updates all fields to :id


Previous Comments:
------------------------------------------------------------------------

[2006-01-24 14:53:04] [EMAIL PROTECTED]

Thank you for this bug report. To properly diagnose the problem, we
need a short but complete example script to be able to reproduce
this bug ourselves. 

A proper reproducing script starts with <?php and ends with ?>,
is max. 10-20 lines long and does not require any external 
resources such as databases, etc.

If possible, make the script source available online and provide
an URL to it here. Try to avoid embedding huge scripts into the report.



------------------------------------------------------------------------

[2006-01-24 14:41:20] lvm99 at mail dot ru

Description:
------------
ODBC connection to MSSQL

$sql = "UPDATE sources_test SET title=:title, name=:name WHERE
id=:id";
$sth = $db->prepare($sql);

$params = array(':title'=>'updated with params', 
':name'=>'new name', ':id'=>'9586850')

$isOk = $sth->execute($params);         

all param's fields (title, name) filling with ':id' value i.e.
'9586850'

If I bind just 'id' as param UPDATE works right
or 
If I bind 'title' and 'name' but not id  UPDATE works right
or
If I connect throut MSSQL interface everything is OK

Reproduce code:
---------------
//MSSQL Server 2000
$dsn ='server';
$database = 'testbase';
$login ='us';
$password = 'us';
//...
$db = new PDO("odbc:Driver={SQL Server}; Server=".$dsn.";
Database=".$database, $login, $password,  array(PDO::ERRMODE_EXCEPTION
=> true));
//...
$sql = "UPDATE sources_test SET title=:title, name=:name WHERE
id=:id";

$sth = $db->prepare($sql);

$params = array(':title'=>'updated with params', 
':name'=>'new name', ':id'=>'9586850')

$isOk = $sth->execute($params); 

Expected result:
----------------
Fields have to be set to 
name = 'new name'
title='updated with params'

Actual result:
--------------
name = '9586850'
title= '9586850'


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=36143&edit=1

Reply via email to