2010-04-05 122 views
0

好的,我正在为我的网站进行注册。将信息存储在PostgreSQl数据库问题中

首页询问一些个人信息

 if($error==false) { 

     $query = pg_query("INSERT INTO chatterlogins(firstName, lastName, gender, password, ageMonth, ageDay, ageYear, email, createDate) VALUES('$firstNameSignup', '$lastNameSignup', '$genderSignup', md5('$passwordSignup'), $monthSignup, $daySignup, $yearSignup, '$emailSignup', now());"); 
     $query = pg_query("INSERT INTO chatterprofileinfo(email, lastLogin) VALUES('$emailSignup', now());"); 
     $userNameSet = $emailSignup; 
     $_SESSION['$userNameSet'] = $userNameSet; 
     header('Location: signup_step2.php'.$rdruri); 

    } 

第一查询工作。第二个查询工作,但不保存电子邮件...

会话不工作,但头作品,并送我到下一个页面

即使我注释掉头

我没有得到任何错误

下一页

@session_start(); 

$conn = pg_connect("host=localhost dbname=brittains_db user=brittains password=XXXX"); 

$signinCheck = false; 
$checkForm = ""; 

if(isset($_SESSION['$userName'])) { 

    $userName = $_SESSION['$userName']; 
    $signinCheck = true; 
    $query = pg_query("UPDATE chatterprofileinfo SET lastLogin='now()' WHERE email='$userName'"); 

} 

if(isset($_SESSION['$userNameSet'])) { 

    $userName = $_SESSION['$userNameSet']; 
    $signinCheck = true; 
    $query = pg_query("UPDATE chatterprofileinfo SET lastLogin='now()' WHERE email='$userName'"); 

} 

这取决于如果你的登录或无法启动会话顶部。

那么,如果我在这里的信息输入,并把它通过这个

if($error==false) { 

    $query = pg_query("UPDATE chatterprofileinfo SET aboutSelf='$aboutSelf', hobbies='$hobbies', music='$music', tv='$tv', sports='$sports', lastLogin='now()' WHERE email='$userName'") or exit(pg_last_error()); 
    //header('Location: signup_step3.php'.$rdruri); 

} 

什么也不显示了从本我的数据库。

我不知道我哪里错了

该网站是

http://opentech.durhamcollege.ca/~intn2201/brittains/chatter/

回答

0

对于初学者来说,不要把事情是不是在单引号这样的字符串。 'now()'意思是一个字符串“now()”

另外,如果你正在更新数据库,你最好使用预处理语句来防止sql注入。在你的情况,请参阅http://www.php.net/manual/en/function.pg-prepare.php

+0

kk谢谢我应该知道那个时刻>< – MrEnder 2010-04-05 01:28:10

+0

或去寻找pg_query_params(),这是查询中安全输入的最简单解决方案。当你重复查询时,http://nl2.php.net/pg_query_params pg_prepare是很好的。 – 2010-04-05 08:15:40