怎么将表格中输入的数据反馈到数据库中,以下是有问题的代码:
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>"> id:   <input type="text" name="id"><br> name: <input type="text" name="name"><br> pass: <input type="text" name="pass"><br> rank: <input type="text" name="rank"><br> <input type="Submit" name="$submit" value=" 提交 "> 
<input type="Submit" name="$delete" value=" 删除 "> 
(删除时只需输入id。)
//表格
</form> <?php
$db = mysql_connect("localhost", "root","");
mysql_select_db("stu",$db);
if ($id) {
if ($submit) {
$sql = "UPDATE user SET id='$id',name='$name',
pass='$pass',rank='$rank' WHERE id=$id";}}
$result = mysql_query($sql);
?> 
//修改<?php
echo "<table border='1'>\n<thead><tr><th>id</th><th>name</th><th>pass</th><th>rank</th></tr></thead>\n</tbody>\n";
$db = mysql_connect("localhost", "root","");
mysql_select_db("stu",$db);
$result = mysql_query("SELECT * FROM user",$db);
if ($myrow = mysql_fetch_array($result)) {
do {
printf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%u</td></tr>\n", 
$myrow["id"], $myrow["name"], $myrow["pass"],$myrow["rank"]);
} while ($myrow = mysql_fetch_array($result));
} else {
echo " 对不起,没有找到记录! ";
}
echo "</tbody>\n</table>\n";
?>
</body>
</html> 
//输出数据库为 stu,表为user(id varchar(11),name varchar(20),pass varchar(30),rank enum('1','2','3','4')default4,primary key(id));

解决方案 »

  1.   

    图片链接:
    http://user.qzone.qq.com/447338871/infocenter
      

  2.   

    楼主首先你要搞清楚为什么数据库没记录?哪句是执行更新数据库的?为什么这句话没执行?为什么那个判断没进去?我觉得懂得怎么调试比直接告诉你哪里错更管用。一个个判断,一个个条件里面die信息出来,马上你就知道问题在哪
      

  3.   

    我是想问,输入网页表格中的数据怎么反馈到数据库中。$sql = "UPDATE user SET id='$id',name='$name',pass='$pass',rank='$rank' WHERE id=$id";如$id到底是不是在输入栏输入的id。
      

  4.   

    朋友,看来你对php还没有什么概念,所以我给你找了一个php的视频教程,你看一看之后以后就不会提出这样的疑问了.
    http://www.php100.com/html/shipinjiaocheng/PHP100shipinjiaocheng/list_20_8.html
      

  5.   

    update set name='.$name.' where id='.$id.'
      

  6.   

    <?php
    error_reporting(0);
    echo "<table border='1'>\n<thead><tr><th>id</th><th>name</th><th>pass</th><th>rank</th></tr></thead>\n</tbody>\n";
    $db = mysql_connect("localhost", "root","");
    mysql_select_db("stu",$db);
    $result = mysql_query("SELECT * FROM user",$db);
    if ($myrow = mysql_fetch_array($result)) {
    do {$arr[]=$myrow['id'];
    printf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%u</td></tr>\n", 
    $myrow["id"], $myrow["name"], $myrow["pass"],$myrow["rank"]);
    } while ($myrow = mysql_fetch_array($result));
    } else {
    echo " 对不起,没有找到记录! ";
    }
    echo "</tbody>\n</table>\n";
    ?>
    <form method="post" action=""> id:   <input type="text" name="id"><br> name: <input type="text" name="name"><br> pass: <input type="text" name="pass"><br> rank: <input type="text" name="rank"><br> <input type="Submit" name="submit" value=" 提交 "> 
    <input type="Submit" name="delete" value=" 删除 "> 
    (删除时只需输入id。)
    //表格
    </form> <?php
    if ($_POST[submit]) {
     {
     $id=$_POST[id];
     $name=$_POST[name];
     $pass=$_POST[pass];
     $rank=$_POST[rank];
    if(!is_null(in_array($id,$arr))){
    $sql = "UPDATE user SET id='$id',name='$name',
    pass='$pass',rank='$rank' WHERE id='$id'";}
    else  $sql = "insert into user values('$id','$name','$pass','$rank')";}
    }
    elseif($_POST[delete]){
     $id=$_POST[id];
    $sql="delete from user where id='$id'";
    }
    $result = mysql_query($sql);?> 应该符合你的本意了
      

  7.   

    我有做插入和删除两个功能,用户如果按提交按钮会先检查ID是否存在,如果存在就更改值,不存在就插入值,按删除按钮会删除该ID的值。你可以试试看就知道效果了
      

  8.   

    help!插入新的数据怎么不行。
      

  9.   

    希望大家帮忙看看,是不是这里的问题:$arr[]=$myrow['id'];