在php中使用mysql可以用$var替换$var吗?

在这里搜索了同名的主题,但我没有发现任何与我的相关的东西.我按照教程和sql

$sql .= "WHERE event_id = :id LIMIT 1"

我看到作者使用过:id.我以为应该是$id.我不知道这个PHP表示法.请有人告诉我发生了什么事?谢谢.

解决方法:

这称为参数绑定.目的是防止sql注入.

例:

<?PHP
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::ParaM_INT);
$sth->bindParam(':colour', $colour, PDO::ParaM_STR, 12);
$sth->execute();
?>

http://php.net/manual/en/pdostatement.bindparam.php

这是一个很好的解释:
How can I prevent SQL injection in PHP?

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...