奇怪的变量/ Mysql问题

时间:2012-06-21 23:48:06

标签: php mysql database variables

我只是不知道该怎么做,也不知道如何搜索这个奇怪的问题。这是:

页面上的所有连接都正常工作,以防万一:

我有此代码更新数据库上的电子邮件

$fUsername = mysql_real_escape_string($_GET['user']);
$fPassword = mysql_real_escape_string($_GET['senha']);
$fEmail = mysql_real_escape_string($_POST['fEmail']);

$sql = "UPDATE usuario SET email='$fEmail ' WHERE username = '$fUsername' and senha = '$fPassword'";
$result=mysql_query($sql);

现在,问题:

此查询不是更新BD上的“电子邮件”字段。它只是使该字段为空。

如果我回显$ sql var,我得到这个:   更新usuario SET email='teste@gmail.com'WHERE username ='teste1'和senha ='e10adc3949ba59abbe56e057f20f883e'

如果我在mySQL上手动运行此查询,它会像我想要的那样更新字段。

如果我手动将值传递给$ fEmail var( $ fEmail =“teste@gmail.com” )。它运作得很好。

唯一不起作用的方法是从表单中获取值。

有没有人有这方面的解决方案? d:

2 个答案:

答案 0 :(得分:3)

您使用$_GET作为用户名和密码,使用$_POST作为电子邮件。检查您的form实际提交方法,并修复相关数据提取。

答案 1 :(得分:1)

如果通过GET发送表单数据,则应使用$_GET['fEmail']。在这种情况下,$_POST['fEmail']没有定义,这可以解释你所看到的行为。