麻辣堂|资源主站|开发论坛|在线手册
首页 Apache Linux Java MySQL 注册帮助 
PHP项目开发组是PHP开发资源网于2007组年建成立的项目开发团队,目前核心开发成员有27人, 项目协作成员8名.下设7个开发组,主要承接大/中型网站项目开发任务。

    由于开发任务较多,人员比较紧张,现面向社会招聘全职或者兼职开发人员,不管你是在校大学生,还是全职开发人员,以及SOHO都可以联系本站,我们可以长期合作,并为您带来丰厚的报酬。
  您现在的位置:PHP开发资源网 > 麻辣堂 > 详细资料
待解决
能看一下这个代码哪里出题
悬赏分:20 - 2007年08月14日

插入记录时id号为空 ----------------------------------------------------------- 这里有三个文件注册.检验.公用函数文件 我做了几天都做不出来. 主要问题是在up.php reg函数中加入记录时id号为空,这是一个论谈, 原文件只有5个字段, 这是我添加字段后的程序, 请看错在哪里? 代码为: list($id) = mysql_fetch_row($result); 不知道是什么意思; 主页登录新用户注册 ___________________________________________________________________________________________________ +++++++++++++++++++++ register.php +++++++++++++++++++++ 注册文件 +++++++++++++++++++++ ___________________________________________________________________________________________________ <?php if($need == "mod") { require "up.php"; //当$need == "mod" 时,是修改自己的信息,调用userlib.php文件 if (empty($name)) //修改自己的信息,不允许用户名为空 { $error="您还没有登录,请先"; $error=$error."登录"; include "../error.php"; exit; } $resself = search_people($name,"dif"); //查询用户名 if (!empty($resself)) { $info_self = mysql_fetch_array($resself); //查询:单位名称,email信箱 } $company= $info_self["company"]; $email= $info_self["email"]; } ?> 新用户注册 <script language="JavaScript"> </script>
中华村良种交易
新 用 户 注 册

用户ID号: *

用户密码: *
确认密码: *
公司名称: *
联系信箱: *
联系电话: *
公司网址:
公司地址: *
主要品种: *
公司简介:
___________________________________________________________________________________________________ +++++++++++++++++++++ check.php +++++++++++++++++++++ 检验文件 +++++++++++++++++++++ ___________________________________________________________________________________________________ 本程序为[PHP程序设计导学]一书论坛改写过来的,运行原程序时正常.当我将注册字段增加时,出现问题, ID号为空,其它添加字段都可以.用户登录没问题, 在UP.PHP中 reg 函数中 list($id) 不知道是什么意思? 代码为: list($id) = mysql_fetch_row($result); 用什么方法解决添加记录空的问题. <?php require "up.php"; //$need用来区别是新登录,还是注册或修改自己的信息 if (!empty($need)) { $self_info = check($name, $passwd); if ($need == "login") { if (is_array($self_info)) { $cryptname = update_online("enter", $name, "", ""); //新登录,则更新在线用户 header("location:ch.php?cryptname=$cryptname"); } else { $error = "没有此用户或密码出错"; $msg = "history"; } } if ($need == "reg" || $need == "mod") { $name = string_dowith($name); $passwd = string_dowith($passwd); $result = reg($name, $passwd, $company, $email, $phone, $webinfo, $address, $mostly, $userinfo, $need); if ($result == "success") { if ($need == "reg") { $cryptname = update_online("enter", $name, "", ""); } include "infouser.php"; exit; } //在注册和修改信息时,都不允许输入的用户名有重复情况 else { $error = "已经存在的用户名"; } } } if (!empty($error)) { include "../error.php"; exit; } ?> ___________________________________________________________________________________________________ +++++++++++++++++++++++++++ up.php +++++++++++++++++++++++++++ 公用文件 +++++++++++++++++++++++++++ ___________________________________________________________________________________________________ 问题1: 代码为: list($id) = mysql_fetch_row($result); //是否与增加ID号有关系 问题2: 更新在线用户中这是什么意思? if (!result) <?php require "../lib.php"; $db = db_connect(); //检查用户是否存在,如果存在返回一个数组(存储用户的id) function check($name, $passwd) { global $db; $sql = "select id from seeduser where name='$name'"; //如果输入信息中有密码(如登录),则进一步检查密码 if (!empty($passwd)) { $sql = $sql." and passwd='$passwd'"; } $result = mysql_query($sql, $db) or db_error(); if ($result) { $self_info = mysql_fetch_array($result); return $self_info; } } function reg($name, $passwd, $company, $email, $phone, $webinfo, $address, $mostly, $userinfo, $need) { global $db; $msg = ""; //$msg为成功,即用于添加和修改后的一种表示 if ($name != "" && $passwd != "") { $name = string_dowith($name); $sql = "select id from seeduser where name='$name'"; $result = mysql_query($sql, $db) or db_error(); list($id) = mysql_fetch_row($result); //$need用来区别不同的操作 if ($need != "") { //如果是新注册的用户 if ($need == "reg" && empty($id)) { $nowtime = date("Y-m-d H:i:s"); $reg_sql = "insert into seeduser (id,name, passwd, company, email, phone, webinfo, address, mostly, userinfo)"; $reg_sql = $reg_sql." values ('$id', '$name', '$passwd', '$company', '$email', '$phone', '$webinfo', '$address', '$mostly','$userinfo')"; } //如果更改自己的注册信息 if ($need == "mod" && !empty($id)) { $reg_sql = "update seeduser set passwd='$passwd', company='$company', email='$email', phone='$phone', webinfo='$webinfo', address='$address', mostly='$mostly',userinfo='$userinfo' where id=$id"; } } // if (!empty($reg_sql))为以注册用户修改表中的信息,而进行判断. if (!empty($reg_sql)) { $passwd = string_dowith($passwd); $email = string_dowith($email); $result = mysql_query($reg_sql, $db) or db_error(); if ($result) { $msg = "success"; } } } return $msg; } //更新在线用户,添加新登录的用户,删除已离线的用户 function update_online($state_user, $name, $cryptname, $logintime) { global $db; //$state_user用于标志用户的状态 //如果是新登录的用户 if ($state_user == "enter") { $sql = "delete from online where name='$name'"; $result = mysql_query($sql, $db) or db_error(); $cryptname = md5($name); //md5()的功能就是计算字符串$name的杂凑 $nowtime = date("Y-m-d H:i:s"); $sql = "insert into online (name, cryptname, nowtime)"; $sql = $sql." values ('$name', '$cryptname', '$nowtime')"; $result = mysql_query($sql, $db) or db_error(); if (!result) { return ""; } else { return $cryptname; } } //如果是已离线用户 if ($state_user == "leave") { $sql = "delete from online where cryptname='$cryptname'"; $result = mysql_query($sql, $db) or db_error(); if (!$result) { return ""; } else { return "success"; } } } //查询用户的信息(通过用户名) function search_people($name, $need) { global $db; //$need区别查找的方式:模糊查找(返回简单的用户信息)和准确查找(返回详细的用户信息) if ($need == "ease") //模糊查找 { if ($name != "") { $sql = "select id,name from seeduser where name like '%$name%'"; } else { $sql = "select id,name from seeduser where name!=''"; } } elseif ($need == "dif") //准确查找 { $sql = "select id,name,passwd, company,address,email,mostly from seeduser where name='$name'"; } $result = mysql_query($sql, $db) or db_error(); if ($result) { return $result; } } ?>

提问者:sbabc   08-14 11:11
答复
路过。。。顺便帮顶:)
回答者:玉米づ冰冻可乐 - 瓦岗村民 8-22 09:10
我也来回答:
不管你有没有帮助我们,瓦岗寨8万村民将感谢你。。。。。

为防止灌水,您需要计算一道数学题: 答案:
41 + 28 = ? 请将计算结果填在上面

 
[]
©2007 PhpRes.COM