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 :: Проверка введённых данных по базе данных.
и так далее для каждого пункта но это слишком длинный получается код.
Можно ли как нибудь проверить существования данных другим более простым способом.
Буду рад выслушать любые разумные мнения.
Саныч
Отправлено: 13 Марта, 2011 - 10:35:47
Участник
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
или я чего-то не понял, или действительно у вас бред написан...
Вы вытаскиваете из базы всех пользователей (5 строка), потом загоняете это все в массив, а в итоге проверяете только по первому пользователю ($arr [0])...
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
gheka
Отправлено: 13 Марта, 2011 - 11:04:41
Частый гость
Покинул форум
Сообщений всего: 191
Дата рег-ции: Февр. 2011
Помог: 2 раз(а)
Саныч пишет:
или я чего-то не понял, или действительно у вас бред написан...
Вы вытаскиваете из базы всех пользователей (5 строка), потом загоняете это все в массив, а в итоге проверяете только по первому пользователю ($arr [0])...
Вы правильно поняли я и спрашиваю как сделать так чтобы проверять не только по первому ключу 0 но по всей таблице user.
Если поставить просто $arr ['login'] то не работает выборка вообще.
foreach($arras$view)// вытаскиваем данные из масива в цикле foreach
{
if($view['login']==$login)
$error=$error.'<li>Такой логин уже зарегистрирован попробуйте ввести другой!</li>';
if($view['email']==$email)
$error=$error.'<li>Такой емайл уже зарегистрирован попробуйте ввести другой!</li>';
if($view['wmr_purse']==$wmr)
$error=$error.'<li>Такой WMR кошелёк уже зарегистрирован попробуйте ввести другой!</li>';
}
Если есть другие верянты наиболее правильные прошу написать.
(Добавление)
SAD пишет:
gheka пишет:
login = $login
так неправильно. $login должно быть обрамлено одинарными кавычками
Я знаю просто это был пример и кавычки пропустил но как я и писал этот метод слишком огромен в плане кода.
потому что проверять 3 поля это нужно писать з запроса.
foreach($arras$view)// вытаскиваем данные из масива в цикле foreach
{
if($view['login']==$login)
$error=$error.'<li>Такой логин уже зарегистрирован попробуйте ввести другой!</li>';
if($view['email']==$email)
$error=$error.'<li>Такой емайл уже зарегистрирован попробуйте ввести другой!</li>';
if($view['wmr_purse']==$wmr)
$error=$error.'<li>Такой WMR кошелёк уже зарегистрирован попробуйте ввести другой!</li>';
}
SAD
Отправлено: 13 Марта, 2011 - 16:51:57
Постоянный участник
Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009 Откуда: Днепропетровск, Украина
Помог: 75 раз(а)
явно лучше чем ваш.
gheka
Отправлено: 13 Марта, 2011 - 17:04:08
Частый гость
Покинул форум
Сообщений всего: 191
Дата рег-ции: Февр. 2011
Помог: 2 раз(а)
Спасибо всем кто отвечал на мои вопросы.
Саныч
Отправлено: 13 Марта, 2011 - 20:03:05
Участник
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
gheka пишет:
Но скажите пожалуйста такой способ по быстра те обработки или ещё каким то параметра лучше приведённого мной?
Конечно лучше... Ты только представь, если у тебя будет 1000 пользователей и ты их всех тащишь из базы, а потом еще по всем цилом проходишься... это ж бред полнейший
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
gheka
Отправлено: 13 Марта, 2011 - 21:43:57
Частый гость
Покинул форум
Сообщений всего: 191
Дата рег-ции: Февр. 2011
Помог: 2 раз(а)
SAD пишет:
явно лучше чем ваш.
Саныч пишет:
Конечно лучше... Ты только представь, если у тебя будет 1000 пользователей и ты их всех тащишь из базы, а потом еще по всем цилом проходишься... это ж бред полнейший
Спасибо понял об этом не подумал.
gheka
Отправлено: 14 Марта, 2011 - 00:27:35
Частый гость
Покинул форум
Сообщений всего: 191
Дата рег-ции: Февр. 2011
Помог: 2 раз(а)
Есть ещё небольшой вопрос.
Нормально ли делать такие проверки введённых данных в внутри функции с проверкой логина и емайл по базе данных?
Или лучше вынести их за пределы функции и делать их в контроллере.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.