php更新密码或保存默认值(如果为空)

时间:2011-07-11 07:02:39

标签: php

有人可以指出我如何保存默认密码,如果它是空白的? 这是一个更新问题。我在用户更新其个人资料时制作更新页面。 它的长篇资料。我没有在这里发布所有因为我唯一的问题是密码字段。 即使它是空白,它仍然更新数据库上的字段。我使用md5进行加密。下面是代码。请添加代码,代码。谢谢。

id = 1,因为我只是测试它。我只在userstest表中有一个数据。

    $desire= $_POST['desired'];//username field
    $password = md5(trim(mysql_prep($_POST['password'])));//password field
    $passconfirm = md5(trim(mysql_prep($_POST['confirmpassword']))); //confirmpasswor field
    $sql = mysql_query("UPDATE userstest SET username = '$desire',password='$password',confirmpassword='$passconfirm' WHERE id=1");
    if(mysql_affected_rows()==1){
    echo "Update Successfull";
    }else{
    echo "Update Failed" . mysql_error();
    }

2 个答案:

答案 0 :(得分:1)

在构建查询时添加if条件

$sql = "UPDATE userstest SET username = '$desire'"; 
if($password) {$sql += ",password='$password',confirmpassword='$passconfirm'";}
$sql += " WHERE id=1";

然后运行查询mysql_query($ sql);

答案 1 :(得分:0)

如果这些字段为空,请勿更新passwordconfirmpassword列。在这种情况下,只是不要将它们添加到SQL查询中。

顺便问一下,你为什么要保存confirmpassword?这不应该始终与password相同吗?它通常仅用于PHP脚本中的if语句,以查看用户没有输入错字。