Что может быть когда обработчик формы ввода на хосте стоит а по нажатию на кнопку - не удается найти файл?
Пути к обработчику в коде указаны верные? B .htaccess нет ли записи которая соответствует маской адресу обработчика. (например перенаправлять с [a-z).php на .html и т.д
фаил обработчика проверь хорошо.. У меня было как-то что по каким-то причинам при ошибке он выдавал 404 not found Открой в разных браузерах.. У оперы было 404 а у мозилы белый экран. или код обработчика в студию =)
В опере как раз и тестируется. код обработчика Code: <?php $name=$_POST["name"]; $family=$_POST["family"]; $parent=$_POST["parent"]; $date=$_POST["date"]; $passport=$_POST["passport"]; $emai=$_POST["emai"]; $home=$_POST["home"]; $mobile=$_POST["mobile"]; $index=$_POST["index"]; $adress=$_POST["adress"]; $profa=$_POST["profa"]; $message = "$name\$family\$parent\$date\$passport\$email\$home\$mobile\$index\$adress\$profa"; $message = wordwrap($message, 70); mail('xxxxx@gmail.com', 'Новая регистрация', $message); ?>
1. И какой же файл не может найти функция mail()? Уверены, что дали правильный код? 2. Зачем вы эскейпите знаки долларов в двойных кавычках?
krypt3r, дело не в функции. Когда нажимается кнопка - отправить данные, вызывается по идее этот mail.php, но браузер выдает 404. Насчет кавычек, сейчас погуглю, скорей всего моя оплошность)
Code: h2 class="subtitle"><span>Введите ваши данные</span></h2> <form method="POST" action="mail.php"> <p>Введите Ваше имя :<br><input type="text" name="name" size="20"> <br>Введите Вашу фамилию :<br><input type="text" name="family" size="20"> <br>Введите Ваше отчество :<br><input type="text" name="parent" size="20"> <br>Дата рождения (ДД/ММ/ГГГГ) :<br><input type="text" name="date" size="20"> <br>Серия и номер паспорта :<br><input type="text" name="passport" size="20"> <br>Ваш E-mail (будьте внимательны при заполнении) :<br><input type="text" name="email" size="20"> <br>Телефон домашний (с кодом города) :<br><input type="text" name="home" size="20"> <br>Телефон мобильный (пример +7 926 5551177) :<br><input type="text" name="mobile" size="20"> <br>Индекс :<br><input type="text" name="index" size="20"> <br>Адрес проживания (Улица. Дом.Корпус. Квартира) :<br><textarea rows="2" name="adress" cols="20"></textarea> <br>Профессия :<br><input type="text" name="profa" size="20"><br> <br><input type="submit" value="Отправить" name="B1"> <input type="reset" value="Очистить форму" name="B2"></p></form>
0. Точно ли mail.php лежит в том же каталоге, что и форма, его вызывающая? 1. Попробуйте указать в action полный путь к скрипту относительно корня сайта Code: action="/mail.php" action="http://www.site.ru/mail.php" 2. Правильный ли регистр имени файла? 3. Проверьте права, должны быть 0644. 4. Загляните в логи веб-сервера. 5. Отснифайте запрос, куда на самом деле ломится форма.
krypt3r : 0. Лежит точно. 1. Уже указывал, результат прежний. 2. Регистр указал верно. 3. Права стоят 644, тестил и с 777, результата нет. 4. Посмотрел, ни одно запроса к этому файлу 5. Отснифал. Как не странно, все заработало. На мыло пришло Следовательно скрипт словил только первое поле. Слегка исправил скрипт, заменил слеши запятыми, текст из полей не приходит.
вот что приходит на мыло. $name, $family, $parent, $date, $passport, $email, $home, $mobile, $index, $adress, $profa
попробуй так: $message = "{$name}\{$family}\{$parent}\{$date}\{$passport}\{$email}\{$home} \{$mobile}\{$index}\{$adress}\{$profa}";
-=Zhenek=-, последовал Вашему совету, впринципе заработало, но судя по полученному мейлу, можно сделать вывод что }\{ там не требуется дело я так понял было в кавычках "
просто вот так работать не будет: '$name' а вот так будет '{$name}' В одинарных кавычках переменные не обрабатываются.. В двойных обрабатываются
PHP: $message = implode ('\\', array ($name, $family, $parent, $date, $passport, $email, $home, $mobile, $index, $adress, $profa)); // или $message = "$name\\$family\\$parent\\$date\\$passport\\$email\\$home\\$mobile\\$index\\$adress\\$profa";