Ребят! Помогите, пожалуйста! Проблема следующая - я написал форму заказа, под нее обработчик, который должен отправлять письмо с данными. Все делал по инструкции, но когда проверяю на своем сайте при переходе на обработчик выдает ошибку 500. Вот код формы: Код (Text): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Заказ</title> </head> <body> <script language="JavaScript" type="text/javascript"> <!-- JavaScript function pr(form) { //Если не заполнено поле if((form.familia.value=="")||(form.name.value=="")||(form.otchestvo.value=="")||(form.email.value=="")||(form.phone.value=="")||(form.adress.value=="")||(form.post-index.value=="")) { //Выводим грозное сообщение alert("Внимание! Все поля должны бать заполнены!"); //Возвращаем ложь return false; } //Если заполнены все поля else //Возвращаем правду return true; } // - JavaScript - --> </script> <center><table align="center"><center> <table width="618" border="3" align="center" bordercolor="#FF9933" bgcolor="#FFFFFF"> <tr> <td><form action="send.php" method="post" enctype="multipart/form-data" name="order" onSubmit="return pr(order)"> <div align="center"><br> Введите Вашу Фамилию: <br> <input type="text" name="familia" size="40"> <br> <br> Введите Ваше Имя:<br> <input type="text" name="name" size="40"> <br> <br> Введите Ваше Отчество:<br> <input type="text" name="otchestvo" size="40"> <br> <br> Введите Ваш e-mail:<br> <input type="text" name="email" size="40"> <br> <br> Ваш контактный телефон:<br> <input type="text" name="phone" size="40"> <br> <br> Введите полный адрес доставки (город, улица, дом...):<br> <input type="text" name="adress" size="100"> <br> <br> Введите Ваш почтовый индекс:<br> <input type="text" name="post-index" size="40"> <br> </div> <p align="center"> <center><input type="submit" value="Заказать!"> </p> <p align="center">Внимание! Все поля обязательны для заполнения! </p> <p align="center"/> </form></td> </tr> </table> </body> </html> а вот код обработчика send.php: Код (Text): <?php if (isset($_POST['familia'])) $familia = $_POST['familia']; if (isset($_POST['name'])) $name = $_POST['name']; if (isset($_POST['otchestvo'])) $otchestvo = $_POST['otchestvo']; if (isset($_POST['email'])) $email = $_POST['email']; if (isset($_POST['phone'])) $phone = $_POST['phone']; if (isset($_POST['adress'])) $adress = $_POST['adress']; if (isset($_POST['post_index'])) $post_index = $_POST['post_index']; $address = 'nickalvares@yandex.ru'; $sub = "Заказ с моего сайта"; $mes = "Заказчик назвался: $familia $name $otchestvo \nУказал свой e-mail: $email \nДоставка в: $adress \nИндекс: $post_index \nКонтактный телефон: $phone"; $sendmail = mail ($address,$sub,$mes,"Content-type:text/plain; charset = utf-8\r\nFrom:$email"); if ($sendmail == 'true') { echo Спасибо! Ваш заказ принят!; } else { echo Извините, но вы заполнили не все поля! Пожалуйста, вернитесь и заполните форму правильно! } ?>
из значения переменной пост вычесть значение константы индекс поэтому и 500. очевидная же ошибка. головой не думаем, журналы не читаем, ога...
А как теперь ругается? А Код (PHP): $e-mail тоже исправил? Добавлено спустя 1 минуту 6 секунд: И в JavaScript такое тоже не правильно: Код (Text): form.e-mail.value==""
а... ну тогда конечно, это вам в техподдержку вордпресса тогда нужно слать жалобы... вы наверное даже и не подозревали, что ваш вордпресс писан на неком языке программирования, который обрабатывается и выполняется интерпретатором этого языка. если запрос идет из браузера пользователя то в 99.9% прослойкой между вашим скриптом и браузером является веб-сервер. и если что-то не так происходит на стадии выполнения - интерпретатор складирует ошибки в STDERR. но в случае с вэб-сервером этот поток чаще всего перехватывается и складируется в журналы ошибок веб-сервера. помидор красный, а у трактора дверь открывается. понимаете? ошибки в журнале веб-сервера какие?
Огромное спасибо за эту тему!!! Давно копаюсь, но редко встречал работающие коды. но здесь всё встало на места. По теме - после оператора echo надо ставить кавычки и потом закрывать их, да и ещё в конце поставить (. Выводимое сообщение ограничивается двойными кавычками("), а если нужно внутри прописать какие-то атрибуты, то это делается с помощью одинарных кавычек('), например: echo "сообщение отправлено.<br />Нажмите <a href='index.php' title='вернуться на главную'>сюда</a>чтобы вернуться на главную.";