问题代码如下:
<?php
    if($_POST['username']!=null){    
      echo $_POST['username'],$_POST['submit'];  
        }else{      
?> <form action="file.php" method="post">
  用户:<input type="text" size="20" name="username" /><br>
      <input type="submit" name="submit" value="发布留言"/>
  </form>
<?
   }
?>运行结果:
Notice: Undefined index: username in T:\PHPTest\test\file.php on line 2请教:
 1、怎么让用户未输入之前把 Notice: Undefined index: 隐藏。
 2、 $_POST['submit']输入的结果是  按钮的value值,这个起什么作用。

解决方案 »

  1.   

    if (isset($_POST['username']) && strlen($_POST['username']) > 0) {
    //..
    }
      

  2.   

    首先你的环境支持短标签吗?如果不支持,<?改为:<?php
    你这代码在我这边没提示错误啊。你在试试。
    $_POST['submit']一般用来判断用的。判断用户有没有点击提交。
      

  3.   

    先赋值再用赋值后的变量进行判断同时还可以过滤变量。如:  $name = $_POST['usrname'];
    if (!empty($name)) {
    //..
    }
      

  4.   

     if (isset($_POST['submit']) && strlen($_POST['submit']) > 0) {
        $sql="insert into message(username,titile,content)".
            "values('$_POST[username]','$_POST[title]','$_POST[content]')";
               mysql_query($sql);
               echo ('添加成功') ; 
            }
    这样的代码:为什么插入不了,是不是那儿还差参数、
      

  5.   

    数据库连接好了吗? 在phpmyamdin试试能成功吗?
      

  6.   

    那是因为你刚执行这段程序的时候,$_POST['username'],并没有传过来,利用isset函数判断,  $username = isset($_POST['username']) ? $_POST['username'] : null; 这样那个错误就会没有了,$_POST['submit'],一般是为了判断是否提交,如果有hash码的时候,可以根据hash判断唯一...
      

  7.   

    学了3天php,所有的疑问多亏各位大哥!喝杯水,幸苦了。