PHP代码:if ($_POST['new_name'] and $_POST['new_pn'])        
{  $link_ID = mysql_connect("localhost","root");                        mysql_select_db("contact");                      
 mysql_query("insert into list
                    (name, pn)
                     values
                    ('{$_POST['new_name']}','{$_POST['new_pn']}');"
                         ,$link_ID);              mysql_close($link_ID);

解决方案 »

  1.   

    呵呵~~看来楼主对register_globals这玩意还是不太清楚哦~~
      

  2.   

    遇到这种情况,可以echo一下该SQL语句,看看其中的变量可否被替换成所需的值,如果不能,再查找相应原因
      

  3.   

    php在4.2.2以后的版本中就不能直接使用表单传过来的变量名了。应该用netvt(唯她)的方法比如用GET方式传过来的表单就用$_GET["表单变量名"]用POST方式传过来的表单就用$_POST["表单变量名"]
      

  4.   

    是的, php 4.2以后的版本则要用,$_POST['new_name'] and $_POST['new_pn']
    以前的版本不用,
      

  5.   

    $_POST['new_name']
    $_POST['new_pn']
      

  6.   

    mysql_query("insert into list
                        (name, pn)
                         values
                        ('$new_name','$new_pn');"
                             ,$link_ID);              这句应改为
    mysql_query("insert into list
                        (name, pn)
                         values
                        ('$new_name','$new_pn')"
                             ,$link_ID);              你多了一个分号,仔细看看