谁能指出我如何保存默认密码,如果它是空白的?这是更新的问题。当用户更新他们的个人资料时,我正在制作一个更新页面。这是一个很长的个人资料信息。我没有把它都贴在这里,因为我唯一的问题是密码字段。即使它是空的,它仍然更新数据库上的字段。我使用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();
}
在构建查询时添加if条件
$sql = "UPDATE userstest SET username = '$desire'";
if($password) {$sql += ",password='$password',confirmpassword='$passconfirm'";}
$sql += " WHERE id=1";
然后运行查询mysql_query($sql);
如果password
或confirmpassword
列为空,则不更新这些列。在这种情况下,不要将它们添加到SQL查询中。
顺便问一下,你为什么要保存confirmpassword
?这不应该总是和password
一样吗?它通常只在PHP脚本的if
语句中使用,以查看用户没有输入错误。