php点和mysql点不匹配

时间:2018-09-03 21:14:13

标签: php mysql

嗨,我有一个看起来像这样的表:

|   vend   |   prod_name   |   price   |   qty   |
|----------|---------------|-----------|---------|
|   vend1  |   red wine    |   15.00   |    3    |
|----------|---------------|-----------|---------|
|   vend1  |  nike tg. 42  |   70.00   |    10   |
|----------|---------------|-----------|---------|

以下代码的问题是,当我为红酒更新数量时,一切正常,但是当我用耐克tg做同样的事情时。 42更新不起作用。我认为问题是无法删除的点。数据库的默认字符集为latin1,排序规则为latin1_general_cs。

 $connection = mysqli_connect($host, $DBuser, $Dbpass, $databaseName);
 $query = 'update prodotti set qty = ? where vend = ? and prod_name = ?';
 $st = mysqli_prepare($connection, $query);
 mysqli_stmt_bind_param($st, 'iss', $value, $_SESSION['NomeUtente'], $key);
 mysqli_stmt_execute($st);
 mysqli_stmt_close($st);

请注意,我已经打印了$ key变量,它就是耐克tg。 42

1 个答案:

答案 0 :(得分:0)

使用这样的查询

update prodotti set qty = '11' where vend = 'vend1' and prod_name = 'nike tg. 42';

我只想显示您在单引号中获得的值,我上面给出的查询对我来说效果很好,我认为mysqli_stmt_bind_param()会导致错误bcos,您无法取得单引号并尝试直接查询并获得本身的价值,并尝试返回错误

相关问题