我在PHP上运行时遇到错误

时间:2014-09-26 12:09:47

标签: php

$submit = $_POST['submit'];

$fullname = strip_tags($_POST['fullname']);

$username = strip_tags($_POST['username']);

$password = strip_tags($_POST['password']);

$repeatpassword = strip_tags($_POST['confirmpassword']);

$date = date ("Y-m-d");

i get **"Notice: Undefined index"**
but when i do this

if(isset($_POST['submit']))
{

$submit = $_POST['submit'];

$fullname = strip_tags($_POST['fullname']);

$username = strip_tags($_POST['username']);

$password = strip_tags($_POST['password']);

$repeatpassword = strip_tags($_POST['confirmpassword']);

$date = date ("Y-m-d");
}

未定义的索引得到修复,但注意:未定义的变量:提交是我的新错误,为什么会这样?

5 个答案:

答案 0 :(得分:1)

它的注意因为你想使用未设置的变量你可以通过用isset()函数检查它来修复它

$submit = null;

if(isset($_POST['submit'])
   $submit = $_POST['submit'];

或语法短

$submit = isset($_POST['submit']) ? $_POST['submit'] : null;

同样适用于通过$ _POST传递的其他变量

答案 1 :(得分:1)

尝试

$submit = isset ( $_POST ['submit'] ) ? $_POST ['submit'] : null ;

答案 2 :(得分:1)

变化:

if(isset($_POST['submit']))

在:

if(isset($_POST) && isset($_POST['submit']))

答案 3 :(得分:0)

这是因为提交'通过POST传递。 在将其值分配给变量之前,请检查$ _POST [' submit']是否为空。

答案 4 :(得分:0)

你的表格是否

<input type = 'submit' name = 'submit' />

如果您只放置了

  <input type = 'submit' /> 

它不起作用

将其更改为以此

开头
<?php

 if(isset($_POST['submit']) != "")
 {

   $submit = $_POST['submit'];
   ......

 }

 ?>