Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
没有结果的PHP MySQL对象stmt_Php_Mysql_Mysqli - Fatal编程技术网

没有结果的PHP MySQL对象stmt

没有结果的PHP MySQL对象stmt,php,mysql,mysqli,Php,Mysql,Mysqli,正在尝试更新以避免来自此服务器的SQL注入 $codigo=$_POST['voucher']; $resultado = mysql_query('SELECT * FROM vale WHERE codigo=\''.$codigo.'\''); $row=mysql_fetch_assoc($resultado); 对此 $mysqli = new mysqli($host,$username,$passdb,$db_name); $stmt = $mysqli->prepare(

正在尝试更新以避免来自此服务器的SQL注入

$codigo=$_POST['voucher'];
$resultado = mysql_query('SELECT * FROM vale WHERE codigo=\''.$codigo.'\'');
$row=mysql_fetch_assoc($resultado);
对此

$mysqli = new mysqli($host,$username,$passdb,$db_name);
$stmt = $mysqli->prepare('SELECT usuario,creditos FROM vale WHERE codigo=?');
$stmt->bind_param("s", $codigo);
$stmt->execute();
$stmt->bind_result($usuariocodigo,$creditoscodigo);
First可以工作,但易受攻击,mysql_查询被降级。第二个不会有任何结果。什么都试过了。有什么想法吗

谢谢


$rows将以数组形式包含数据

是否运行提取?bind_结果仅将列与变量关联。仍然需要调用fetch来迭代结果集。e、 g.虽然$stmt->fetch{printf%s%s\n,$usuariocodigo,$creditoscodigo;}您如何确定第二个正确版本不会产生任何结果?请注意,仅一行新的mysqli是不够的。当$stmt->fetch{code}工作正常时,有很多事情需要做,而其他任何答案都无法工作。谢谢@user3783243我打赌你应该保留一行fetch,以匹配过时的mysql\u fetch\u assocversion@Your常识抱歉,我不明白你的意思未定义的方法mysqli\u stmt::get\u result,我可能还有其他东西missing@will您使用的是什么PHP版本?什么操作系统?
$mysqli = new mysqli($host,$username,$passdb,$db_name);
$stmt = $mysqli->prepare('SELECT usuario,creditos FROM vale WHERE codigo=?');
$stmt->bind_param("s", $codigo);
$stmt->execute();
$result = $stmt->get_result();
$rows = $result->fetch_all(MYSQLI_ASSOC);
$stmt->free_result();
$stmt->close();