Прям досада какая то. 500 ошибка. =( Код (Text): <?php error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); //Отключим вывод системных ошибок error_reporting(7); //Начинаем обработку формы регистрации //Проверяем не пусты ли наши поля if (!$_POST['name']) { echo "Вы не заполнили форму имя!"; } else { $name =($_POST['name']); } echo "<br>"; if (!$_POST['email']) { echo "Вы не заполнели форму E-mail"; //Предлагаем пользователю заполнить имя else { $email=($_POST['email']); } echo "<br>"; if($_POST["email"]&& !ereg("^[^@]+@([a-z\-]+\.)+[a-z]{2,4}$",$_POST["email"])) { echo "Введите корректный формат электронной почты"; //Предлагаем пользователю заполнить имя } echo "<br>"; if(!$_POST['pass']) { echo "Вы не заполнили форму Пароль"; } else { $pass =($_POST['pass']); echo "<br>"; if(!$_POST['age']) { echo "Вы не заполнили форму возраст"; } else { $age =($_POST['age']); echo "<br>"; if(!$_POST['sex']) { echo "Вы не заполнили форму пол"; } else { $sex =($_POST['sex']); echo "<br>"; if(!$_POST['vopros1']) { echo "Вы не заполнили форму vopros1"; } else { $vopros1 =($_POST['vopros1']); echo "<br>"; if(!$_POST['vopros2']) { echo "Вы не заполнили форму vopros2"; } else { $vopros2 =($_POST['vopros2']); echo "<br>"; if(!$_POST['vopros3']) { echo "Вы не заполнили форму vopros3"; } else { $vopros3 =($_POST['vopros3']); echo "<br>"; if(!$_POST['vopros4']) { echo "Вы не заполнили форму vopros4"; } else { $vopros4 =($_POST['vopros4']); echo "<br>"; if(!$_POST['vopros5']) { echo "Вы не заполнили форму vopros5"; } else { $vopros5 =($_POST['vopros5']); echo "<br>"; //Подключаем конфигурационный файл include ('config.php'); //Если все вышеописанные проверки прошли успешно, добавляем пользователя в нашу БД $result = mysql_query("INSERT INTO user(name,email,pass,age,sex,vopros1,vopros2,vopros3,vopros4,vopros5) VALUES ('$name','$email','$pass','$age','$sex','$vopros1','$vopros2','$vopros3','$vopros4','$vopros5')"); //Проверяем заполнились ли введенные данные в БД if ($result == 'true') { //Устанавливаем кодировку СР-1251 по умолчанию mysql_query("SET NAMES cp1251"); //Обрабатуем корректность данных $qresult=mysql_query("INSERT INTO user (name,email,pass,age,sex,vopros1,vopros2,vopros3,vopros4,vopros5) VALUES ('".mysql_real_escape_string($name)."', '".mysql_real_escape_string($email)."', '".mysql_real_escape_string($pass)."' '".mysql_real_escape_string($age)."' '".mysql_real_escape_string($sex)."' '".mysql_real_escape_string($vopros1)."' '".mysql_real_escape_string($vopros2)."' '".mysql_real_escape_string($vopros3)."' '".mysql_real_escape_string($vopros4)."' '".mysql_real_escape_string($vopros5)."' )"); //Выводим сообщение после регистрации echo "Спасибо регистрация прошла успешно!"; } else { echo "<b><font color=red>Извините произошла ошибка при добавлении БД!</b>"; } } ?>
Ошибка HTTP 500 (Internal Server Error): Непредвиденная ситуация была обнаружена в то время как сервер пытался выполнить запрос. Я знаю, ты телепат, просто скромничаешь))
я понял что ты про это, но я ж могу ошибаться. Начну давать советы об одном, а у тебя другое - ацтой. Это может случаться в разных случаях. Один из них - долго сервак ждал ответа от пхп скрипта, не дождался и забил. Скрипт выполняется долго или быстро?
Менее секунды. Добавлено спустя 1 минуту 2 секунды: Может допустил ошибку с Код (PHP): $result = mysql_query("INSERT INTO user(name,email,pass,age,sex,vopros1,vopros2,vopros3,vopros4,vopros5) VALUES ('$name','$email','$pass','$age','$sex','$vopros1','$vopros2','$vopros3','$vopros4','$vopros5')"); //Проверяем заполнились ли введенные данные в БД if ($result == 'true') { //Устанавливаем кодировку СР-1251 по умолчанию mysql_query("SET NAMES cp1251"); //Обрабатуем корректность данных $qresult=mysql_query("INSERT INTO user (name,email,pass,age,sex,vopros1,vopros2,vopros3,vopros4,vopros5) VALUES ('".mysql_real_escape_string($name)."', '".mysql_real_escape_string($email)."', '".mysql_real_escape_string($pass)."' '".mysql_real_escape_string($age)."' '".mysql_real_escape_string($sex)."' '".mysql_real_escape_string($vopros1)."' '".mysql_real_escape_string($vopros2)."' '".mysql_real_escape_string($vopros3)."' '".mysql_real_escape_string($vopros4)."' '".mysql_real_escape_string($vopros5)."' )");
эм. а начерта ты два раза одно и то же вставляешь? По ошибке - хз =) Используй exit(); Ставь его на вторую строку, потом на третью и так пока не дойдешь до ошибки 500. Тогда ясно будет что именно его порождает.
Ничего нет до <?php . Сейчас на первой строке. Добавлено спустя 6 минут 9 секунд: Если код такой Код (Text): <?php error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); if (!$_POST['name']) { echo "Вы не заполнили форму имя!"; } else { $name =($_POST['name']); } echo "<br>"; ?> Тогда так Notice: Undefined index: name in /var/www/register.php on line 6 Р’С‹ РЅРµ заполнили форму РёРјСЏ! Если добавить например так : Код (Text): if(!$_POST['pass']) { echo "Вы не заполнили форму Пароль"; } else { $pass =($_POST['pass']); echo "<br>"; Тогда 500
во втором случае скобка не закрыта. ты в лог пхп смотришь? там может быть всякое, типа "не могу спарсить".
Хорошая идея, осталось только их найти Добавлено спустя 13 минут 8 секунд: эммм... А не подскажите как файл назывется? error_log? не могу найти. ubuntu 12.04 lamp Добавлено спустя 10 минут 11 секунд: [Tue Jul 17 14:26:55 2012] [error] [client 127.0.0.1] PHP Parse error: syntax error, unexpected T_ELSE in /var/www/register.php on line 23 =))))
ты найди php.ini или как он там называется в убунте. он скорее всего в каойниить /etc лежит. там будет указан путь к логу ошибок. лог ошибок хорошо смотреть командой tail с ключем на follow.
Спасибо добрый человек =)) Ошибка была в последней скобке "}", в логах все хорошо описывается) Пойду дальше ковыряться. Добавлено спустя 8 минут 20 секунд: Кстати, я где чего вставил 2 раза?
Код (PHP): $result = mysql_query("INSERT INTO user(name,email,pass,age,sex,vopros1,vopros2,vopros3,vopros4,vopros5) VALUES ('$name','$email','$pass','$age','$sex','$vopros1','$vopros2','$vopros3','$vopros4','$vopros5')"); //Проверяем заполнились ли введенные данные в БД if ($result == 'true') { //Устанавливаем кодировку СР-1251 по умолчанию mysql_query("SET NAMES cp1251"); //Обрабатуем корректность данных $qresult=mysql_query("INSERT INTO user (name,email,pass,age,sex,vopros1,vopros2,vopros3,vopros4,vopros5) VALUES ('".mysql_real_escape_string($name)."', '".mysql_real_escape_string($email)."', '".mysql_real_escape_string($pass)."' '".mysql_real_escape_string($age)."' '".mysql_real_escape_string($sex)."' '".mysql_real_escape_string($vopros1)."' '".mysql_real_escape_string($vopros2)."' '".mysql_real_escape_string($vopros3)."' '".mysql_real_escape_string($vopros4)."' '".mysql_real_escape_string($vopros5)."' )"); Добавлено спустя 36 секунд: один и тот же запрос. два раза.
Сам не пойму... Всеравно если верхний закоментировать, то в базу не пишет =( Почему так может быть? Код (PHP): CREATE TABLE IF NOT EXISTS `USERS` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(40) CHARACTER SET cp1251 NOT NULL, `email` varchar(40) CHARACTER SET cp1251 NOT NULL, `pass` varchar(40) CHARACTER SET cp1251 NOT NULL, `age` varchar(40) CHARACTER SET cp1251 NOT NULL, `sex` varchar(40) CHARACTER SET cp1251 NOT NULL, `vopros1` varchar(40) CHARACTER SET cp1251 NOT NULL, `vopros2` varchar(40) CHARACTER SET cp1251 NOT NULL, `vopros3` varchar(40) CHARACTER SET cp1251 NOT NULL, `vopros4` varchar(40) CHARACTER SET cp1251 NOT NULL, `vopros5` varchar(40) CHARACTER SET cp1251 NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Проверил соединение с бд, все ок. Вывел ошибку Код (PHP): or die(mysql_errno().". ".mysql_error()); получил что не находит таблицу users. В mysql записана таблица как USERS... =)