php提示错误Notice: Undefined index: submit in D:\WWW\add.php on line 5

php提示错误
Notice: Undefined index: submit in D:\WWW\add.php on line 5
Notice: Undefined variable: sql in D:\WWW\add.php on line 12
最近刚刚学习PHP。在学做一个留言板的时候,就出现这样的错误了,研究好久都不知道怎么解决,而且数据不能插入到数据库,请高手指点指点....
代码如下:

add.php
<?php
include("conn.php");
if(($_POST['submit'])){
$sql="insert into message (id,user,title,content,lastdate) values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())";

}

mysql_query($sql);
?>
<form action="add.php" method="post">
<p>用户名:
<label for="user"></label>
<input type="text" name="user" id="user">
</p>
<p>标题:
<label for="title"></label>
<input type="text" name="title" id="title">
</p>
<p>内容: </p>
<p>
<label for="textfield3"></label>
<label for="content"></label>
<textarea name="content" id="content" cols="45" rows="5"></textarea>
</p>
<p>
<input type="submit" name="submit" id="submit" value="发布留言" />
</p>
</form>

---------------------------------------------------------------------------
conn.php
<?php
$conn = @ mysql_connect("localhost", "root", "root") or die("数据库链接错误");
mysql_select_db("new", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
?>

第一次加载页面时没有收到$_POST['submit'],因此会报错,所以前面加个判断

<?php
 include("conn.php");

/******这里加判断******/

 
  if (!isset($_POST['submit'])){
  return;
  }
/*********above***********/

if(($_POST['submit'])){
$sql="insert into message (id,user,title,content,lastdate) values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())";

}
mysql_query($sql);
?>
<form action="add.php" method="post">
<p>用户名:
<label for="user"></label>
<input type="text" name="user" id="user">
</p>
<p>标题:
<label for="title"></label>
<input type="text" name="title" id="title">
</p>
<p>内容: </p>
<p>
<label for="textfield3"></label>
<label for="content"></label>
<textarea name="content" id="content" cols="45" rows="5"></textarea>
</p>
<p>
<input type="submit" name="submit" id="submit" value="发布留言" />
</p>
</form>
--------------------------------
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-01-01
Notice: Undefined index: submit in D:\WWW\add.php on line 5
Notice: Undefined variable: sql in D:\WWW\add.php on line 12
报错的这两行没什么关系,因为你刚开始请求的时候,还没有提交表单,所以$_POST[submit]和$sql都没有定义,点击表单提交按钮以后才会定义。

数据没有插入的话,建议你先在mysql_query($sql);这句之前打印一下$sql看看,把sql语句复制到phpmyadmin里面执行一下,就知道有没有错误了
第2个回答  推荐于2018-04-13
if(($_POST['submit'])){ 应写成 if(isset($_POST['submit'])){

mysql_query($sql); 放到前面的if的花括号里面去本回答被提问者采纳
第3个回答  2013-01-01
  if (!isset($_POST['submit'])){
  sql语句错误,
  echo $sql;看看能出现什么。记得$_POST[]不用加‘’的
  php中有now();函数吗??

Notice:Undefined index:submit in 是怎么回事
您好,我来为您解答: 解决方法: 1.将条件语句改为if(isset($_POST['submit']) && $_POST['submit']). 2.修改一下php.ini,搜索error_reporting,原值为:E_ALL,把它修改成E_ALL & ~E_NOTICE就行了,然后重启apache. 希望我的回答对你有帮助。

【求助】PHP程序中的 Notice: Undefined index:
方法3:每个文件头部加上:error_reporting(0); 如果不行,只有打开php.ini,找到display_errors,设置为display_errors = Off。以后任何错误都不会提示。方法4 :做判断:isset($_GET["page"]) if-else判断 或者加上’@'表示这行如果有错误或是警告不要输出 如:@$page=$_GET["page"]方法5:...

【PHP错误】Notice: Undefined index: 1 in E:\\wwwroot\\www\\oxybas...
1. 首先,notice错误也是可以避免的。如利用is_array,array_key_exists之类的函数判断一下。2. 页面打开以后空白一般都是页面编码错误。 比如页面文件本身的编码是utf8,而你声明的html流的编码是gb2312,就会空白。这个时候需要将页面的编码和html流编码改为一致。将html编码声明改成 或者 这要看...

...Notice: Undefined index: sessionuser in 错误
提示你程序编码错误:F:\\phpnow\\htdocs\\inc\\menus.php on line 45 如果确认程序无错,就重新安装phpnow吧!!全部默认,不要自定义操作,再测试!!

Notice:Undefined index:submit in 是怎么回事
修改php.ini,将error_reporting = E_ALL改为error_reporting = E_ALL & ~E_NOTICE;并重启server就解决了 改成这样 if(isset($_POST['submit']) && $_POST['submit']) { ...}

php提示Undefined index怎么回事
出现上面这些是 PHP 的提示而非报错,PHP 本身不需要事先声明变量即可直接使用,但是对未声明变量会有提示。一般作为正式的网站会把提示关掉的,甚至连错误信息也被关掉。解决方法:方法1:服务器配置修改 修改 php.ini 中的 error配置下错误显示方式:将error_reporting = E_ALL 修改为 error_reporting...

undefined是什么意思PHPUndefinedindex报错的修复方法
方法1:修改服务器配置 通过修改`php.ini`文件中的`error_reporting = E_ALL & ~E_NOTICE`,可以过滤掉警告级别的错误信息。方法2:对变量进行初始化 对所有的变量进行初始化,如使用默认值,可以避免访问未定义的变量。这需要对大量的变量进行修改,操作繁琐。方法3:每个文件头部加上错误过滤 在文件...

...表单中的值传不过去,而是出现Notice: Undefined index提示...
Notice: Undefined index 警告:未定义的索引号 从提示信息来看,你需要检查下传递的表单各参数值是否设置正确。===补充回答:从给出的代码来看,有三种用到的超全局数组:(1) $_POST 比如:input name="video_title"(2) $_GET 比如:backstage_ac.php?action=video"(3) $_FILES 比...

网页出现Notice: Undefined index:,好多东西显示不出来
这是最轻量级的php提示:未定义索引为q的数组变量。不是什么错误信息,一般可以屏蔽掉 用error_reporting(E_ALL ^ E_NOTICE);\/\/显示除去 E_NOTICE 之外的所有错误信息 不过最好的方法就是再用一个变量之前先判断是否存在,然后在使用,那样的话就不会出现这个错误了 if(isset($arr['q'])){ echo...

PHP 出现这个错误:undefined index
17行是这个吧:scenicArray[$i]['Secenic_Id']=$row['Secenic_Id'];Undefined index错误的程序里面的数组下标不存在,你这里$row['Secenic_Id']错,没有下标'Secenic_Id',因为你的查询语句是“$query = "select Scenic_Id”,查询的第一个字段是Sc,你使用的是Sec,有区别。

相似回答