2015-11-05 25 views
1

<form method='post'>声明之前可以有if($_POST['submit']){}吗?

if($_POST['submit']){ 
    print_r($_POST['submit']); 
    $sql="Delete from db where value=2"; 
    mysqli_query($db,$sql); 
    } 
echo"<form method='post'><input type='text' name='text' value='hello!'> 
<input type='submit' name='submit' value='Submit!'></form>"; 

的问题是,我不能把任何SQL结果当if($_POST)是在窗体声明。

+0

是的,这是有效的。 – Daan

+0

任何理由认为这是无效的? – Ivar

+0

,因为我在if($ _ POST ['submit']){}中有一个sql语句,我必须刷新页面以查看sql结果。我认为提交后页面将自行刷新 – sotirios

回答

2

是的,它是有效的,但它会抛出这样的错误

Notice: Undefined index: submit

更好的做法是使用isset(),以检查变量后甚至存在。然后它看起来像这样

if(isset($_POST['submit'])){ 
print_r($_POST['submit']); 
} 
1

是的这是可能的。

由于POST发送到服务器并使用服务器端语言(如PHP)检索,所有PHP在发回给客户端之前都会被执行。所以放置PHP打印POST文件的位置并不重要。