php - 如何在 php 的 mysql 查询中使用占位符

标签 php mysql mysqli

我正在尝试制作一个像这样的准备好的查询:

$stmt=$mysqli->prepare("SELECT zonasrepartoid, calle, municipio, codigopostal FROM zonasreparto WHERE municipio like concat('%',:m,'%')")
                $stmt->bind_param(':m',$incity);
                $stmt->execute();

我曾多次尝试以不同的方式使用%,但我对如何使用它没有更多的想法,只是为了让它发挥作用。如果有人能告诉我出了什么问题,我将不胜感激。

提前谢谢您!

最佳答案

这让我想知道你从哪里得到在原始 mysqli 中使用“:letter”占位符的想法。

在手册中找不到这样的语法。你的其余方法都可以。

$sql = "SELECT zonasrepartoid, calle, municipio, codigopostal FROM zonasreparto 
        WHERE municipio like concat('%',?,'%')"
$stmt=$mysqli->prepare($sql);
$stmt->bind_param('s', $incity);
$stmt->execute();

真的、真的、真的需要通过手动示例进行练习,而不是盲目地使用随机语法。这是你的主要也是唯一的问题。

关于php - 如何在 php 的 mysql 查询中使用占位符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23873706/

相关文章:

javascript - 外部弹出窗口 onclick 每个 session 仅打开一次

mysql - 有什么方法可以隐藏 MySQL 备份恢复代码中的连接字符串吗?

php - mySQL 日期时间和时间戳

php - 为什么wpdb插入sql显示错误?

php - 为什么 Apache 打印我的 PHP 文件的内容而不是将它们传递给 PHP-FPM?

php - 单击超链接时提交表单

javascript - HTML5 Canvas 图像上传 - 上传空白图像或被破坏

MySQL:搜索并替换为具有换行符/回车符的目标?

mysql - 设计每个用户都有收藏夹列表的数据库

php - 将数据插入MYSQL表时出错