Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2010, 12:20   #1
Denim
Пользователь
 
Аватар для Denim
 
Регистрация: 16.12.2010
Сообщений: 12
По умолчанию Регистрация

Делаю регистрацию на свой сайт...
PHP код:
if(empty($_POST['login']))
{echo 
'Введите Логин<br>';        $stop =1;}
if(empty(
$_POST['password']))
{echo 
'Введите пароль<br>';        $stop =1;}
if(empty(
$_POST['password2']))
{echo 
'Подтвердите пароль<br>';        $stop =1;}
if(empty(
$_POST['email']))
{echo 
'Введите e-mail<br>';        $stop =1;}
if(
$_POST['password']!=$_POST['password2'])
{echo 
'Пароли не совпадают<br>';        $stop =1;}
if(
stop!=1)
{
include(
'config.php');
mysql_query("INSERT INTO `users` (`login`,`pass`,`email`,`site`)VALUES('{$_POST['login']}','".md5($_POST['password'])."','{$_POST['email']}','{$_POST['site']}}');"


            
                        } 
Непойму в чем проблема, даже не выводит ошибки что невведен пароль или еще чегото
но когда коментирую
PHP код:
if(stop!=1)
{
include(
'config.php');
mysql_query("INSERT INTO `users` (`login`,`pass`,`email`,`site`)VALUES('{$_POST['login']}','".md5($_POST['password'])."','{$_POST['email']}','{$_POST['site']}}');"


            
                        } 
этот момент, тогда пишет ошибки(подтверждения пароля,пустота полей), но естественно не заносится в базу данные..
в чем может быть проблема, подскажите
Denim вне форума Ответить с цитированием
Старый 17.12.2010, 12:41   #2
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

В самом начале скрипта вставь
PHP код:
error_reporting(E_ALL E_STRICT);
if (
ini_get('display_errors') != 1) { 
ini_set('display_errors'1);
}; 
Это надо для вывода ошибок
ssdm вне форума Ответить с цитированием
Старый 17.12.2010, 13:01   #3
Denim
Пользователь
 
Аватар для Denim
 
Регистрация: 16.12.2010
Сообщений: 12
По умолчанию

PHP код:
error_reporting(E_ALL E_STRICT); 
if (
ini_get('display_errors') != 1) {  
ini_set('display_errors'1); 
}; 
$stop=0;

if(empty(
$_POST['login']))
{echo 
'Введите Логин<br>';        $stop =1;}
if(empty(
$_POST['password']))
{echo 
'Введите пароль<br>';        $stop =1;}
if(empty(
$_POST['password2']))
{echo 
'Подтвердите пароль<br>';        $stop =1;}
if(empty(
$_POST['email']))
{echo 
'Введите e-mail<br>';        $stop =1;}
if(
$_POST['password']!=$_POST['password2'])
{echo 
'Пароли не совпадают<br>';        $stop =1;}
if(
$stop!=1){
include(
'config.php');
mysql_query("INSERT INTO `users` (`login`,`pass`,`email`,`site`)VALUES('{$_POST['login']}','".md5($_POST['password'])."','{$_POST['email']}','{$_POST['site']}}');");
echo 
'Вы успешно зарегестрировались!';} 
Новая беда, разобрался в чем была ошибка пропустил символ '$' добавил терь ошибки все работают, пмшет
Вы успешно зарегестрировались! но в базу незаносит О_о, перед этим что то менял случайно 1 юзера зарегило дальше нехочет )


upd:добавил
PHP код:
 echo mysql_errno() . ": " mysql_error() . "\n"
теперь пишет
Код:
1062: Duplicate entry '0' for key 1
как правельно запрос сформировать что б оно айди каждому разный выдавало?

Последний раз редактировалось Denim; 17.12.2010 в 13:05.
Denim вне форума Ответить с цитированием
Старый 17.12.2010, 13:10   #4
Qaliti
Форумчанин
 
Регистрация: 04.01.2010
Сообщений: 229
По умолчанию

попробуй удалить это одного пользователя и добавить заново, если добавиться значит передаешь одинаковые значения... наверное )
Qaliti вне форума Ответить с цитированием
Старый 17.12.2010, 13:11   #5
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

В своей таблице поле id сделай auto_increment .
http://www.mysql.ru/docs/man/example...INCREMENT.html
ssdm вне форума Ответить с цитированием
Старый 17.12.2010, 13:18   #6
Denim
Пользователь
 
Аватар для Denim
 
Регистрация: 16.12.2010
Сообщений: 12
По умолчанию

woohooo спасибо ssdm, получилось )))
Denim вне форума Ответить с цитированием
Старый 17.12.2010, 18:26   #7
Denim
Пользователь
 
Аватар для Denim
 
Регистрация: 16.12.2010
Сообщений: 12
По умолчанию

удалите сообщение (сам исправил новый вопрос)хД

Последний раз редактировалось Denim; 17.12.2010 в 18:29.
Denim вне форума Ответить с цитированием
Старый 18.12.2010, 03:17   #8
Denim
Пользователь
 
Аватар для Denim
 
Регистрация: 16.12.2010
Сообщений: 12
По умолчанию

Всем снова привет =)
Добрался до коментирования новостей ..)
PHP код:
 function addcomment()
{
?>

<div id="inputArea">
  <form method="post" action="#">
    
  <label>Текст комментария:</label><textarea rows="4" cols="30"name=comment></textarea>
  
  <input type="submit" value="Отправить"></form>
 </div>
<?

if(!empty($_POST['comment'])){
mysql_query("INSERT INTO `comments` (`comment`,`commentator`,`nid`)VALUES('{$_POST['comment']}','".$_SESSION['login']."','{$_GET['nid']}');");
 if(
mysql_error()){ echo mysql_errno() . ": " mysql_error() . "\n";}
}
}
проблема: коментарий написал и для появления коментария нужно либо зайти наново в новость, либо обновить страницу, но когда обновляеш страницу запрос
PHP код:
mysql_query("INSERT INTO `comments` (`comment`,`commentator`,`nid`)VALUES('{$_POST['comment']}','".$_SESSION['login']."','{$_GET['nid']}');"); 
снова выполняется... как можно это исправить?
Denim вне форума Ответить с цитированием
Старый 18.12.2010, 09:51   #9
Linel
Форумчанин
 
Аватар для Linel
 
Регистрация: 21.02.2009
Сообщений: 372
По умолчанию

А зачем вы на одной странице расположили и форму для отправки комментария и скрипт, добавляющий коммент в базу? Вполне логично, что все так получилось.

Попробуйте так: Есть форма для написания коммента. Далее методом POST передайте данные скрипту (это другой файл). После того, как скрипт занесет данные в базу, пускай редиректнет пользователя обратно с помощью заголовка Header.

У меня к вам такой вопрос. А при регистрации пользователя вы вообще делали проверку вводимых данных?
No name. Just Linel.
Linel вне форума Ответить с цитированием
Старый 18.12.2010, 10:39   #10
Denim
Пользователь
 
Аватар для Denim
 
Регистрация: 16.12.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Linel Посмотреть сообщение
А зачем вы на одной странице расположили и форму для отправки комментария и скрипт, добавляющий коммент в базу? Вполне логично, что все так получилось.

Попробуйте так: Есть форма для написания коммента. Далее методом POST передайте данные скрипту (это другой файл). После того, как скрипт занесет данные в базу, пускай редиректнет пользователя обратно с помощью заголовка Header.

У меня к вам такой вопрос. А при регистрации пользователя вы вообще делали проверку вводимых данных?
конешно делал,теперь нащет header'a ,я пробывал такой вариант(только переадресация не обратно ,а на главную, забыл как сделать пред.ссылку),но если я буду передавать в другой файл методом поста данные и потом делать редирект обратно то будет выбивать что заголовки уже отосланны+ у меня ссылка новость имеет вид index.php?=full&nid=3 где full - full.php и там отображается методом гет мы получаем айди новости в данный момент nid=3 , но если я буду передавать в другой файл данные nid- методом пост непередается, даже если я делаю какуюто переменную $blalba=$_GET['nid']; она естественно не передается.

Последний раз редактировалось Denim; 18.12.2010 в 10:41.
Denim вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
регистрация Dimarik PHP 1 17.07.2010 23:51
Регистрация Syltan Свободное общение 2 06.09.2009 15:41
Регистрация limon PHP 1 17.10.2008 10:33
Регистрация БД Gladiator БД в Delphi 1 05.06.2008 00:09