php - php dot 和 mysql dot 不匹配
问题描述
嗨,我有一个看起来像这样的表:
| vend | prod_name | price | qty |
|----------|---------------|-----------|---------|
| vend1 | red wine | 15.00 | 3 |
|----------|---------------|-----------|---------|
| vend1 | nike tg. 42 | 70.00 | 10 |
|----------|---------------|-----------|---------|
下面代码的问题是,当我为红酒更新 qty 时一切正常,但是当我对 nike 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 变量,它正是 nike tg。42
解决方案
使用这样的查询
update prodotti set qty = '11' where vend = 'vend1' and prod_name = 'nike tg. 42';
我只想显示使用您在单引号中获得的值我给出的上述查询对我来说效果很好我认为mysqli_stmt_bind_param()
导致错误bcos你无法使用它获取单引号尝试直接查询并获取值本身尝试如果有任何错误,请回复
推荐阅读
- ibm-cloud - 在 API Connect CLI 中发布产品时面临的问题
- groovy - Groovy - 处理异常 - 如何获取 Oracle 错误代码
- python - 在 Python 中使用 PyPDF2 将 PDF 写入密码保护 PDF 时出现问题
- c++ - 为什么 CPP 代码的输出以“832564823476”作为输入失败?
- python - 在带有参数的列表中插入函数并使用它们
- django - Celery 无法在“utf-8”中记录字符串错误。Unicode解码错误
- python - 使用 interp1d 时,数组末尾的 NaN 正在蔓延
- python - Python 包作为应用程序和 lib
- ember.js - 如何使文件在顶级根目录下可访问?
- sql - 使用日期差异的第 90 个百分位数