2012-06-21 3 views
1

Я просто не знаю, что делать, и не знаю, как искать эту странную проблему. Вот это:Weird Variable/Mysql Issue

Все соединения на странице работают правильно, только в случае, если:

У меня есть этот код, чтобы обновить скрыто на базе данных

$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 вар, я получаю это: UPDATE SET email='[email protected] Новичок 'WHERE имя пользователя = 'teste1' и senha = 'e10adc3949ba59abbe56e057f20f883e'

Если я выбежала вручную это запрос на mySQL, он обновляет поле, как я хочу.

Если я вручную передать значение переменной по $ Femail ($ Femail = "[email protected]"). Он работает отлично.

Единственный способ, который не работает, - это когда я принимаю значение от Форма.

У кого-нибудь есть решение для этого? D:

+0

Спасибо за помощь вам обоим. Теперь работает! –

ответ

3

Вы используете $_GET для имени пользователя и пароля и $_POST для электронной почты. Проверьте действительный метод отправки form и исправьте соответствующие данные.

+0

Моя форма Отправить методы POST. я использую получить из-за URL-Frinedly сайта: http://christinagrimmiebr.com/enviaemail/teste1/e10adc3949ba59abbe56e057f20f883e/ Итак, первым GET получает «teste1», а второй получает HASH. И через POST я получаю электронное письмо. Возможно ли это/разрешено? –

+0

Вы уверены в этом? и проверьте свой атрибут 'input'' name' и убедитесь, что это фактически 'fEmail'. Помимо этого, ничто иное не может помешать результатам. Убедитесь, что у вас нет опечаток в атрибуте 'name'. –

+0

Спасибо, я проверю! :) –

1

Вы должны использовать $_GET['fEmail'], если данные формы отправляются через GET. $_POST['fEmail'] не определяется в этом случае, что объясняет поведение, которое вы видите.