我有这个mysqli查询,它从数据库中的表中返回一行。
$realName = mysqli_real_escape_string($con, $name);
$row = mysqli_fetch_array(mysqli_query($con, "SELECT * FROM " . $tbprefix . "table WHERE name = '" . $realName . "'")) ;
正如您所看到的,我在查询$tbprefix
和$realName
中有两个变量。我在$realName
变量上使用了 mysqli_real_escape_string(),但我不确定是否应该在另一个变量上使用它!。
这可能看起来像是一个愚蠢或愚蠢的问题,但我是php编程的新手,所以对我而言很复杂。
答案 0 :(得分:2)
一个例子:
$query = $mysqli->prepare('SELECT * FROM users WHERE username = s');
$query->bind_param('s', $_GET['username']);
答案 1 :(得分:0)
在PDO中使用预准备语句:
$sth = $pdo->prepare("SELECT * FROM ? WHERE name = ?");
$sth->execute( Array($tbprefix . "table", $realName) );