2010-11-22 3 views
0

У меня есть форма, которая выводит URL строку как:Отправка почты в PHP

address=someaddress&title=Title&name=Author&mail=authorsmail&message=Somemessage 

(я делаю это с помощью функции JQuery AJAX)

$.ajax({ 
     type: "POST", 
     url: "send.php", 
     data: myString, 
(...) 

В любом случае, есть что-то не так с мой файл send.php, потому что я пытаюсь и пытаюсь, и я не могу получить почту.

$mailTo = Trim(stripslashes($_GET['address'])); 
$subject = Trim(stripslashes($_GET['title'])); 
$name = Trim(stripslashes($_GET['name'])); 
$emailFrom = Trim(stripslashes($_GET['mail'])); 
$message = Trim(stripslashes($_GET['message'])); 

$Body = $message; 

$success = mail($mailTo, $subject, $Body, "From: <$emailFrom>"); 

Это не работает, когда я меняю все $ _POST на $ _GET.

Что случилось?

Спасибо.

+0

Нет, не работает. – fomicz 2010-11-22 21:04:30

+0

вы установили myString в параметре данных в строку запроса, которая была в вашем URL-адресе? можете ли вы попробовать установить его как объект javascript вместо строки запроса? – jellyfishtree 2010-11-22 21:07:42

+0

данные установлены в jQuery, он показывает все отлично, когда я показываю его с помощью предупреждения. – fomicz 2010-11-22 21:09:19

ответ

0

если вы меняете опубликовать, чтобы вы должны изменить переменную PHP $_POST в $_GET , например

Trim(stripslashes($_POST['address'])); 

в

Trim(stripslashes($_GET['address'])); 
1

Или вы можете использовать $ _REQUEST, который работает как с POST или ПОЛУЧИТЬ.

0

Я думаю, что что-то не так с вашим вопросом.

Вы говорите, что ваш скрипт AJAX приводит к строке URL, такой как address=someaddress&title=Title&name=Author&mail=authorsmail&message=Somemessage, но для вашего типа AJAX установлено значение POST, что не приведет к такому URL. Вы уверены, что ваш JavaScript работает правильно? Вы уверены, что ваш JavaScript останавливает отправку фактической формы?

Смежные вопросы