为什么我的注册信息写不到数据库表中

刘岩 发布于 2010/12/13 21:34
阅读 534
收藏 1

我的savereg.php页面如下:

<?php
session_start();
include("admin/conn.php");
$name=$_POST[usernc];
$pwd1=$_POST[p1];
$pwd=md5($_POST[p1]);
$email=$_POST[email];
$truename=$_POST[truename];
$sfzh=$_POST[sfzh];
$tel=$_POST[tel];
$qq=$_POST[qq];
if($_POST[ts1]==1)
  {
  $tishi=$_POST[ts2];
  }
else
 {
 $tishi=$_POST[ts1];
 }
$huida=$_POST[tsda];
$dizhi=$_POST[dizhi];
$youbian=$_POST[yb];
$regtime=date("Y-m-j");
$lastlogintime=$regtime;
$logincishu=1;
$ip=getenv("REMOTE_ADDR");
$dongjie=0;
$sql=mysql_query("select * from user where name='".$name."'",$conn);
$info=mysql_fetch_array($sql);
if($info==true)
 {
   echo "<script>alert('该昵称已经存在!');history.back();</script>";
   exit;
 }
 else
 {  
    mysql_query("insert into user (name,pwd,dongjie,email,truename,sfzh,tel,qq,ip,tishi,huida,dizhi,youbian,regtime,lastlogintime,logincishu,pwd1) values ('$name','$pwd','$dongjie','$email','$truename','$sfzh','$tel','$qq','$ip','$tishi','$huida','$dizhi','$youbian','$regtime','$lastlogintime','$logincishu','$pwd1')",$conn);
    
    session_register("username");
    $username=$name;
        session_register("producelist");
    $producelist="";
    session_register("quatity");
    $quatity="";
    echo "<script>alert('恭喜,注册成功!');window.location='index.php';</script>";
 }
?>

在注册页面输入信息显示注册成功,但是表里没有记录。

我的conn.php内容如下(连接数据库shop,没密码)

<?php
           $conn=mysql_connect("localhost","root","") or die("数据库服务器连接错误".mysql_error());
           mysql_select_db("shop",$conn) or die("数据库访问错误".mysql_error());
           mysql_query("set character set gb2312");
           mysql_query("set names gb2312");
?>

我的表结构如下

CREATE TABLE `shop`.`user` (
`id` INT( 4 ) NOT NULL ,
`name` VARCHAR( 25 ) NULL ,
`pwd` VARCHAR( 50 ) NULL ,
`dongjie` INT( 4 ) NULL ,
`email` VARCHAR( 25 ) NULL ,
`sfzh` VARCHAR( 25 ) NULL ,
`tel` VARCHAR( 25 ) NULL ,
`qq` VARCHAR( 25 ) NULL ,
`ip` VARCHAR( 25 ) NULL ,
`tishi` VARCHAR( 50 ) NULL ,
`huida` VARCHAR( 50 ) NULL ,
`dizhi` VARCHAR( 100 ) NULL ,
`youbian` VARCHAR( 25 ) NULL ,
`regtime` VARCHAR( 25 ) NULL ,
`lastlogtime` VARCHAR( 25 ) NULL ,
`logincishu` INT( 4 ) NULL ,
`truename` VARCHAR( 25 ) NULL ,
`pwd1` VARCHAR( 50 ) NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;

 

我感觉好像没什么问题,就是不行,求大牛解决,灰常感谢!!!!急急急!!!!!!!明天交系统,最后的机会了!!!!大牛帮忙啊!

加载中
0
G.
G.

echo your sql;

0
刘岩
刘岩

引用来自#2楼“G”的帖子

echo your sql;

我加了这行,返回页面显示 resource id# 是什么意思。。。。

0
changboter
changboter

引用来自#3楼“刘岩”的帖子

引用来自#2楼“G”的帖子

echo your sql;

我加了这行,返回页面显示 resource id# 是什么意思。。。。

 让你 echo sql 的意思是打印一下sql语句

不是直接去 echo sql了

0
G.
G.

引用来自#4楼“常焱”的帖子

引用来自#3楼“刘岩”的帖子

引用来自#2楼“G”的帖子

echo your sql;

我加了这行,返回页面显示 resource id# 是什么意思。。。。

 让你 echo sql 的意思是打印一下sql语句

不是直接去 echo sql了

楼上说得在理!

resource id#...

这是"资源号".

PHP所外部的东西称为资源.

如果你成功连接到 mysql 的话,你将到得一个"资源号", 有点类似 C 语言中的 "指针", 通过这个ID,程序就可以自动取得所要的数据和更多的功能...

0
路阳
路阳

2楼的意思是 echo "insert into user (name,pwd,dongjie,email,truename,sfzh,tel,qq,ip,tishi,huida,dizhi,youbian,regtime,lastlogintime,logincishu,pwd1) values ('$name','$pwd','$dongjie','$email','$truename',

'$sfzh','$tel','$qq','$ip','$tishi','$huida','$dizhi','$youbian','$regtime','$lastlogintime')";

不换行,在这里就显示不出来,代码里就不要换行了

0
G.
G.

引用来自#6楼“路阳”的帖子

2楼的意思是 echo "insert into user (name,pwd,dongjie,email,truename,sfzh,tel,qq,ip,tishi,huida,dizhi,youbian,regtime,lastlogintime,logincishu,pwd1) values ('$name','$pwd','$dongjie','$email','$truename',

'$sfzh','$tel','$qq','$ip','$tishi','$huida','$dizhi','$youbian','$regtime','$lastlogintime')";

不换行,在这里就显示不出来,代码里就不要换行了

嗯...我的意思其实是: 把SQL显示出来看看有没有错误...

0
刘岩
刘岩

灰常感谢大家

0
刘岩
刘岩

我发现了sql语句的问题,少了个分号!!!灰常感谢大家的热情!

0
net ljx
net ljx

mysql_query("insert into user (name,pwd,dongjie,email,truename,sfzh,tel,qq,ip,tishi,huida,dizhi,youbian,regtime,lastlogintime,logincishu,pwd1) values ('$name','$pwd','$dongjie','$email','$truename','$sfzh','$tel','$qq','$ip','$tishi','$huida','$dizhi','$youbian','$regtime','$lastlogintim

这个语句貌似少了个)和 '

还有就是你输出变量,看是否post值过来了,

返回顶部
顶部