我正在尝试在MYSQL SELECT WHERE查询中包含变量。我希望能够使用变量,以及错误符号"!="
例如:
select * from XXX
where id != '$id'
为什么这不起作用,我如何才能使它起作用?
最好使用mysqli-prepared语句或PDO,因为mysql_*函数在最近的PHP版本中已被弃用。使用mysqli准备的语句检查查询的外观。
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s'n", mysqli_connect_error());
exit();
}
$stmt = $mysqli->prepare("SELECT * XXX WHERE id != ?");
$stmt->bind_param( "d", $value);
// 'd' is a format integer, for string use 's'
$stmt->execute();
$stmt->bind_result($col1);
// then fetch and close the statement
当你问如何在mysql查询中传递变量id时,请检查下面,其他很多人已经回答了你的php等问题。
set @id=4;
select * from XXX
where id != @id;
如果您在php中使用此代码,则可以使用此
$query = "select * from XXX where id != {$id}";
或
$query = "select * from XXX where id != '".$id."'";
如果您试图在phpmyadmin中使用这些变量,我认为这是不可能的。