LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1492|回复: 8

php为什么不能插入数据到mysql

[复制链接]
发表于 2003-8-14 09:45:46 | 显示全部楼层 |阅读模式
php为什么不能插入数据到mysql
而从mysql的表中显示是可以的?
数据库:UserInfo  表名:UserInfo
数据库中的字段          字段类型        描述的用户信息
Id                      tinyint        用户信息的唯一标志
UserName                varchar(50)    用户的登入名
Password                varchar(50)    用户的密码
Name                    varchar(50)    用户的姓名

SQL语句
create table UserInfo(Id tinyint default '0' not null auto_increment,UserName varchar(50) not null,Password varchar(50), Name varchar(50),primary key (Id),index (Id),unique(Id))
总共两个文件UserInfoinput.htm,UserInfo.php。
**UserInfoinput.htm**
<HTML>
<HEAD>
        <TITLE>用户登录系统</TITLE>
        <script language="JavaScript">
        <!--
                function validateForm()
                {
                        if (document.UserInfo.UserName.value == "")
                        {
                                window.alert("请输入您的登录名");
                                return false;
                        }
                }
        //-->
        </script>                       
</HEAD>

<BODY BACKGROUND="./images/backgr8.gif">
        < ALIGN="CENTER">
                请输入您的信息
        </P>
        <FORM NAME="UserInfo" METHOD="OST" ACTION="UserInfo.php"

onSubmit="JavaScript:return validateForm(this.form);">
                <DIV ALIGN="CENTER">
                        登录名称:<INPUT TYPE="TEXT" NAME="UserName"><BR><BR>
                        登录密码:<INPUT TYPE="TEXT" NAME="assword"><BR><BR>
                        真实姓名:<INPUT TYPE="TEXT" NAME="Name"><BR><BR>
                        <INPUT TYPE="SUBMIT" VALUE="提交">
                        <INPUT TYPE="RESET" VALUE="重填">
                </DIV>
        </FORM>
</BODY>
</HTML>
**下面是UserInfo.php文件**
<?
        $connect = mysql_pconnect("localhost","root","");
        mysql_select_db("UserInfo", $connect);
       
        if ($UserName)
        {
                //判断当前记录已经使用的ID的最大值
                $query = "select * from UserInfo";
                $result = mysql_query($query);
                $rows = @mysql_num_rows($result);
                $a_row = @mysql_affected_rows($result);
                $id = 0;
                for($i=0; $i<$rows; $i++)
                {
                        @mysql_data_seek($result, $i);
                        $data = @mysql_fetch_array($result);
                        if ($data[ID] > $id)
                        {
                                $id = $data[ID];
                        }
                }
               
                //向数据库中添加记录
                $id++;
                $query = "insert into UserInfo

values('".$id."','".$UserName."','".$Password;
                $query = $query."','".$Name."')";
                echo "$query";
                $result = mysql_query($query);
        }
        mysql_close($connect);
?>

我输入数据后, 再看mysql的数据库UserInfo中的表UserInfo中没有填加新的记录
这到底是什么原因,请教呀????真是急??
发表于 2003-8-16 11:03:29 | 显示全部楼层

兄弟! 解决没!!

我也遇到过这种情况!!??
 楼主| 发表于 2003-8-16 13:59:13 | 显示全部楼层

没有解决

好象没有人来回答我帮我解决这个问题!
Post把表单传给了UserInfo.php
这里$UserName是不是表单中的 UserName
他们是怎么传递的?
发表于 2003-8-16 17:24:53 | 显示全部楼层
mysql_query('INSERT INTO Mydata (Id,UserName) VALUES ("100","llcspring");');

仔细看看区别,我可是成功了呕
 楼主| 发表于 2003-8-16 20:22:16 | 显示全部楼层

插入字符的话我也可以

直接insert emloyees  values("1","mingzi","assword" )
就是表单的话就有点问题
问题就在表单的username和 php中定义的$username是不是就是一个变量
发表于 2003-8-16 20:45:08 | 显示全部楼层
是php.ini中的register_global设置的问题,按你的程序,register_global应该设置为on,默认为off

或者在Userinfo.php中使用$_POST[]来访问POST过来的变量,比如你的UserName就应该为$_POST["UserName"]
发表于 2003-8-17 06:12:23 | 显示全部楼层
是啊,而且如果和关键字冲突的话,最好不要使用。
 楼主| 发表于 2003-8-17 07:09:19 | 显示全部楼层

是这样呀

我试试
 楼主| 发表于 2003-8-17 12:12:54 | 显示全部楼层

好了

现在好了
谢谢aboutagirl
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表