是否可以在header()
中添加行ID?我试图将header()
置于if
语句中,但我总是收到以下消息:
解析错误:语法错误,意外'' (T_ENCAPSED_AND_WHITESPACE),期望标识符(T_STRING)或变量(T_VARIABLE)或数字(T_NUM_STRING)
这是我的代码:
$result = mysqli_query($db_con,$query);
$target="Admin/upload/otherPic/".basename($_FILES['image']['name']);
if ($result){
if(move_uploaded_file($_FILES['image']['tmp_name'], $target)){
echo "<script>
alert('Record updated successfully!');
</script>";
header("Location: admin-viewacc.php?id='$result['id'];'");
}
else{
echo "Error updating record: " . mysqli_error($db_con);
}
}
答案 0 :(得分:1)
尝试使用,
header("Location: admin-viewacc.php?id=" . $result['id']);
最好在exit
之后使用header($string)
语句,因为它有时会变得有些混乱。
header("Location: admin-viewacc.php?id=" . $result['id']);
exit;
答案 1 :(得分:1)
您需要fetch
记录集(假设它是select
查询)并且标题字符串中的ID周围不需要额外的单引号。
这容易出错 - 如果在调用某些PHP函数之前输出任何html,空格等,则会触发错误。为此,请不要添加javascript代码 - 而是在下一页显示消息。
if( $result ){
if( move_uploaded_file( $_FILES['image']['tmp_name'], $target ) ){
$result = mysqli_query( $db_con, $query );
while( $rs=$result->fetch_object() )$id=$rs->id;
$target = 'Admin/upload/otherPic/' . basename( $_FILES['image']['name'] );
echo "
<script>
alert('Record updated successfully!');
</script>";
header( "Location: admin-viewacc.php?id={$id}" );
} else{
echo "Error updating record: " . mysqli_error( $db_con );
}
}