Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблемы с регистрацией вылетает ошибка mysql_result [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (3): « 1 [2] 3 »   

> Описание: Помогите решить проблему
Antosha
Отправлено: 10 Января, 2010 - 14:06:12
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




начал изменять.. запутался чото не то убрал или что ... Конешно спаибо за это но не мог бы кто Взять крипт и переделать прям там и выложить? я прикреплял к 1 посту
Растерялся буду очень благодарен
 
 Top
Ammy
Отправлено: 10 Января, 2010 - 14:09:27
Post Id



Частый гость


Покинул форум
Сообщений всего: 140
Дата рег-ции: Сент. 2009  


Помог: 0 раз(а)




В registranion_controller.php замените строки:

PHP:
скопировать код в буфер обмена
  1.  
  2.     $res = mysql_query("SELECT COUNT(*) AS `cnt`
  3.                        FROM `". DB_PREFIX ."user`
  4.                        WHERE `login` = '". mysql_real_escape_string($user_login) ."'
  5.                        ");
  6.                    
  7.         if(mysql_result($res,0) > 0)
  8.         {
  9.             echo 'Есть у нас уже один '. htmlspecialchars($user_login) .'. Попробуйте выбрать другой логин.';
  10.         }
  11.  


на:

PHP:
скопировать код в буфер обмена
  1.  
  2. $res = mysql_query("SELECT * FROM `". DB_PREFIX ."user`
  3.            WHERE `login` = '". mysql_real_escape_string($user_login) ."'") or die(mysql_error());
  4.  
  5. if (mysql_num_rows($res) > 0) {
  6.  
  7.     echo 'Есть у нас уже один '. htmlspecialchars($user_login) .'. Попробуйте выбрать другой логин.';
  8.  
  9. }
  10.  

(Добавление)
Antosha пишет:
Впринципе не мешало бы и тут создать такую темку=)
Ну всысле на примерах же легче учиться)


Кстати, хорошая идея.

Речь идёт об уроках, посвящённых написанию приложений, ну и, соответственно, о заданиях для пользователей. Как пример (по первоисточнику вышеописанного кода): http://phpforum.ru/index.php?showtopic=19168

(Отредактировано автором: 10 Января, 2010 - 14:18:47)

 
 Top
Antosha
Отправлено: 10 Января, 2010 - 14:13:00
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Заменил получаеться теперь при регистрации:
PHP:
скопировать код в буфер обмена
  1.  
  2. Fatal error: Call to undefined function sql_query() in C:\Program Files\xampplite\htdocs\www\reg\registranion_controller.php on line 26


Кусок скрипта вот)
CODE (SQL):
скопировать код в буфер обмена
  1. // Инициализация переменных
  2. $user_login = !empty($_POST['user_login'])?$_POST['user_login']:NULL;
  3. $user_password = !empty($_POST['user_password'])?$_POST['user_password']:NULL;
  4. $ok = isset($_POST['ok'])?true:false;
  5.  
  6. define('SALT','YRSXDIVLITGG7');
  7.  
  8. IF($ok)
  9. {    
  10.  
  11.     IF(mb_strlen($user_password) < 8)
  12.     {
  13.     echo 'Пароль не надежен, меньше 8-ми символов.';
  14.     }
  15.     else
  16.     {
  17.    
  18. $res = sql_query("SELECT * FROM `". DB_PREFIX ."user`
  19.            WHERE `login` = '". mysql_real_escape_string($user_login) ."'") OR die(mysql_error());
  20.  
  21. IF (mysql_num_rows($res) > 0) {
  22.  
  23.     echo 'Есть у нас уже один '. htmlspecialchars($user_login) .'. Попробуйте выбрать другой логин.';
  24.  
  25. }
  26.         else
  27.         {        
  28. // Создаем учетную запись    
  29.         mysql_query("INSERT INTO `". DB_PREFIX ."user`
  30.                    SET `login` = '". mysql_real_escape_string($user_login) ."',
  31.                    `password` = '". md5($user_password . SALT) ."'
  32.                    ");
  33.     // Если установлена галочка автологина                
  34.             IF(isset($_POST['autologin']))
  35.             set_autologin(mysql_insert_id());
  36.                            
  37.         echo 'Все в порядке';
  38.        
  39.         }
  40.     }
  41. }
  42. ?>

(Добавление)
ИИзвините что такой ТруДныЙ если что Подмигивание новичоК)

(Отредактировано автором: 10 Января, 2010 - 14:18:53)

 
 Top
Ammy
Отправлено: 10 Января, 2010 - 14:21:32
Post Id



Частый гость


Покинул форум
Сообщений всего: 140
Дата рег-ции: Сент. 2009  


Помог: 0 раз(а)




Извиняюсь, моя ошибка: замените на 26 строке ''sql_query" на "mysql_query".

PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("SELECT * FROM `". DB_PREFIX ."user`
  2.            WHERE `login` = '". mysql_real_escape_string($user_login) ."'") or die(mysql_error());
  3.  
  4. if (mysql_num_rows($res) > 0) {
  5.  
  6.     echo 'Есть у нас уже один '. htmlspecialchars($user_login) .'. Попробуйте выбрать другой логин.';
  7.  
  8. }


И соблюдайте правильность написания кавычек.
Предыдущее сообщение обновила, если что.

(Отредактировано автором: 10 Января, 2010 - 14:25:10)

 
 Top
Antosha
Отправлено: 10 Января, 2010 - 14:23:52
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Спасибо тебе добрый человек)

Осталось тока разобраться:
Table 'whiteportal.irbis_user' doesn't exist

В подключении или где то там что бы нужную таблицу и базу вибираЛ)
 
 Top
JustUserR
Отправлено: 10 Января, 2010 - 14:24:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Antosha И не забудьте в файле autorize_controller.php обновить форму как я показал выше - а то проблем потом будет моног в разных браузерах с таким action


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Antosha
Отправлено: 10 Января, 2010 - 14:26:03
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




ВОт всё разобрался)) и везде обновил)

Спасибо вам огромное)) Улыбка
Прикреплено изображение (Нажмите для увеличения)
Всё норм.png

(Отредактировано автором: 10 Января, 2010 - 14:27:15)

 
 Top
Ammy
Отправлено: 10 Января, 2010 - 14:30:25
Post Id



Частый гость


Покинул форум
Сообщений всего: 140
Дата рег-ции: Сент. 2009  


Помог: 0 раз(а)




Цитата:

Table 'whiteportal.irbis_user' doesn't exist


Это означает, что в вашей базе (whiteportal) не существует таблицы 'irbis_user'.

Делали ли вы данный запрос к базе, который описан в уроке?
http://irbis-team[dot]ru/regist/index.php?a=2

CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. CREATE TABLE `irbis_user` (
  3. `id` INT( 10 ) NOT NULL AUTO_INCREMENT ,
  4. `date` TIMESTAMP NOT NULL ,
  5. `login` VARCHAR( 50 ) NOT NULL ,
  6. `password` VARCHAR( 32 ) NOT NULL ,
  7. `hash` VARCHAR( 32 ) NOT NULL ,
  8. `email` VARCHAR( 50 ) NOT NULL ,
  9. `activate` INT( 1 ) NOT NULL ,
  10. PRIMARY KEY ( `id` )  
  11. );
  12.  

(Добавление)
Улыбка

(Отредактировано автором: 10 Января, 2010 - 14:31:02)

 
 Top
Antosha
Отправлено: 10 Января, 2010 - 14:38:45
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Да эт я и сам знаЮ))

Вот теперь другая проблема...

в index.php
CODE (SQL):
скопировать код в буфер обмена
  1. # Подключаем авторизацию
  2.     include './reg/autorize_controller.php';


Теперь показывает:
PHP:
скопировать код в буфер обмена
  1. Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Program Files\xampplite\htdocs\www\skins\default\header.html:7) in C:\Program Files\xampplite\htdocs\www\reg\autorize_controller.php on line 8
  2.  
  3. Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Program Files\xampplite\htdocs\www\skins\default\header.html:7) in C:\Program Files\xampplite\htdocs\www\reg\autorize_controller.php on line 8



В самом коде вот этот кусочек: что делать не пойму...
CODE (SQL):
скопировать код в буфер обмена
  1. // Подключаем файл с функциями
  2.    
  3. session_start();
  4.  
  5. $user_login = !empty($_POST['user_login'])?$_POST['user_login']:NULL;
  6. $user_password = !empty($_POST['user_password'])?$_POST['user_password']:NULL;
  7. $ok = isset($_POST['ok'])?true:false;
  8. define('SALT','YRSXDIVLITGG7');
  9.  




Там делали какие то *** называеться обучали всему ..а стоко ошибок...помогиет решить...

А ещё лучше предлагаю Взяться и написать свой скрипт регистрации (участникам)
Ибо этот весь в ошибках...
(Добавление)
Задача такая

Вот авторизация окошко,
Вводишь логи и пароль... нажимаешь войти и и он входит и это окошко пропадает....
А ещё сделать дополнительно выйти... помогите...
 
 Top
Ammy
Отправлено: 10 Января, 2010 - 14:44:39
Post Id



Частый гость


Покинул форум
Сообщений всего: 140
Дата рег-ции: Сент. 2009  


Помог: 0 раз(а)




А каким редактором вы пользуетесь для написания скриптов? А ещё, если есть возможность, посмотрите на то, в какой кодировке сохраняется файл, который вы редактируете. Вот тема (Champion предупреждает): http://forum.php.su/topic.php?fo...1&topic=3026

И там в самом низу написано, что нужно:
Цитата:
Короче, скрипты, написанные в UTF-8 следует сохранять без BOM и во многих текстовых редакторах есть эта возможность.
 
 Top
Antosha
Отправлено: 10 Января, 2010 - 14:49:21
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




ВОт этим Notepad2
http://www[dot]flos-freeware[dot]ch/
Скрипт autorize_controller.php в неизменной кодировке ANSI

Чот я не понял) все пробелы убрал не нужные осталось ...

(Отредактировано автором: 10 Января, 2010 - 14:50:42)

 
 Top
Ammy
Отправлено: 10 Января, 2010 - 14:52:55
Post Id



Частый гость


Покинул форум
Сообщений всего: 140
Дата рег-ции: Сент. 2009  


Помог: 0 раз(а)




В редакторе (при открытом проблемном UTF-8 With BOM файле): "File" -> "Encoding" -> "UTF-8", потом сохранить, и проверить.

Или найти php.ini, открыть его, найти строчку session.cache_limiter, и присвоить ей значение public.

Цитата:
session.cache_limiter =public

(Отредактировано автором: 10 Января, 2010 - 14:57:52)

 
 Top
Antosha
Отправлено: 10 Января, 2010 - 15:01:29
Post Id


Гость


Покинул форум
Сообщений всего: 81
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Сделал так появились дрябли корябли) (ну эт мона ещё поменять но ошибка не ушла)
Прикреплено изображение (Нажмите для увеличения)
уодинг.png
 
 Top
Ammy
Отправлено: 10 Января, 2010 - 15:09:21
Post Id



Частый гость


Покинул форум
Сообщений всего: 140
Дата рег-ции: Сент. 2009  


Помог: 0 раз(а)




Попробуйте поместить session_start(); в самое начало кода после <?php. А в самом коде убрать максимально возможным образом все пробелы, но без порчи логики.
 
 Top
JustUserR
Отправлено: 10 Января, 2010 - 15:12:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Antosha А у вас перед знаком <?php не стоит никаких пробелов или перевода строки - ведь это тоже является выводом - на худой конец вы всегда можете установить буферизацию и будет работать или устанавливать cookie с помощью JS у пользователя
Antosha пишет:
Скрипт autorize_controller.php в неизменной кодировке ANSI
Ammy Зачем вообще парить человека юникодом если это тут совершенно непричем было - какой может быть BOM в кодировке CP1251 вообще!
Antosha Ошибку можете исправить вышеуказанным методом


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (3): « 1 [2] 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB