在循环不起作用时使用变量异地

时间:2018-07-01 07:23:57

标签: php variables while-loop

<?php
$sqlsess = "SELECT * FROM userinfo WHERE user_name='$session_name'";
$resultsess = mysqli_query($con, $sqlsess);
$usoneid = "";
while ($rowsess = mysqli_fetch_assoc($result)) {
    global $usoneid;
    $usoneid = $rowsess['User_Id'];
}
var_dump($usoneid);
echo $usoneid;
?>

如何在$usoneid循环之外使用while变量?上面的代码回显oneproduct.php:132:string '' (length=0),但我想回显变量的值,而不是null。

1 个答案:

答案 0 :(得分:1)

这是假设您已经为$con的结果分配了mysqli_connect()。看来您误解了mysqli_fetch_assoc()的输出,这是一个菜鸟错误。这就是我通常这样做的方式。如果要保存MySQLi结果类型,请确保始终执行mysqli_free_result(),然后mysqli_close()连接。

<?php
$sqlsess = "SELECT * FROM userinfo WHERE user_name='$session_name'";
$resultsess = mysqli_query($con,$sqlsess);
$usoneid = "";
$rows = array();
while ($row = mysqli_fetch_assoc($result)) {
    $rows[] = $row;
}
$usoneid = $rows[0]["User_Id"];
echo $usoneid;

mysqli_free_result($result);
mysqli_close($con);
?>