PHP.SU

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

Страниц (13): В начало « ... 5 6 7 8 9 10 11 12 [13]

> Найдено сообщений: 191
gheka Отправлено: 13 Марта, 2011 - 11:04:41 • Тема: Проверка введённых данных по базе данных. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 4632
Саныч пишет:
или я чего-то не понял, или действительно у вас бред написан...
Вы вытаскиваете из базы всех пользователей (5 строка), потом загоняете это все в массив, а в итоге проверяете только по первому пользователю ($arr [0])...



Вы правильно поняли я и спрашиваю как сделать так чтобы проверять не только по первому ключу 0 но по всей таблице user.

Если поставить просто $arr ['login'] то не работает выборка вообще.

Подскажите как сделать может по другому.
gheka Отправлено: 13 Марта, 2011 - 10:13:54 • Тема: Проверка введённых данных по базе данных. • Форум: Программирование на PHP

Ответов: 16
Просмотров: 4632
Здравствуйте кто может подскажите пожалуйста как можно проверить несколько пунктов из формы.

есть функция проверки введённых данных из формы мне нужно проверить существует ли в базе данных:
Логин
Емайл
wmr кошелёк


Код выглядит таким образом:

PHP:
скопировать код в буфер обмена
  1.  
  2. function Check ($login, $email, $wmr)
  3. {              
  4.  
  5.                 $result = mysql_query ("SELECT * FROM user");
  6.                  
  7.                 if (!$result)
  8.                    die(mysql_error());
  9.                
  10.                 $n = mysql_num_rows($result);
  11.                 $arr = array();
  12.        
  13.                 for($i = 0; $i < $n; $i++)
  14.                 {
  15.                         $row = mysql_fetch_assoc($result);             
  16.                         $arr[] = $row;
  17.                 }
  18.  
  19.                 if (empty ($login) or empty ($email) or empty ($wmr))
  20.                         $error = $error . '<li>Одно или несколько обезательных полей незаполнены!</li>';       
  21.                
  22.                 if ($arr [0]['login'] == $login)
  23.                         $error = $error . '<li>Такой логин уже зарегистрирован попробуйте ввести другой!</li>';
  24.                
  25.                 if ($arr [0]['email'] == $email)
  26.                         $error = $error . '<li>Такой емайл уже зарегистрирован попробуйте ввести другой!</li>';
  27.                        
  28.                 if ($arr [0]['wmr_purse'] == $wmr)
  29.                         $error = $error . '<li>Такой WMR кошелёк уже зарегистрирован попробуйте ввести другой!</li>';
  30.                        
  31. if ($error) // Если существует ошибка то выводи её. иначе переходим ко вносу данных в базу.
  32. {
  33.     return $error;
  34. }
  35. else
  36. {
  37.    return true;
  38. }              
  39.  




Таким образам проверятся только первый результат в базе данных то есть под ключём 0 если поставить другой ключ например 1 то проверяется 2 результат.

можно конечна проверить по методу

PHP:
скопировать код в буфер обмена
  1.  "SELECT * FROM user WHERE login = $login"


и так далее для каждого пункта но это слишком длинный получается код.

Можно ли как нибудь проверить существования данных другим более простым способом.

Буду рад выслушать любые разумные мнения.
gheka Отправлено: 09 Марта, 2011 - 21:56:52 • Тема: сохранение значений полей формы при обновлении страницы и вывода ошибки. • Форум: Программирование на PHP

Ответов: 4
Просмотров: 2788
Огромное человеческое спасибо.
gheka Отправлено: 09 Марта, 2011 - 21:33:03 • Тема: сохранение значений полей формы при обновлении страницы и вывода ошибки. • Форум: Программирование на PHP

Ответов: 4
Просмотров: 2788
SAD пишет:
лучше проверять поля на заполнение на клиенте с помощью js, а потом для пущей надежности на стороне сервера. Таким образом избежите такой довольно распространенной проблемы.


Я писал что код не полный и пример просто для понятия сути.

Вы не правильно поняли это малая проверка и в действительности проверка происходит и дальше по базе данных, на существования введённого логина и т.д в базе данных.

И это уже происходит на стороне сервера в некой функции и она уже выдаст другое сообщения.
gheka Отправлено: 09 Марта, 2011 - 21:20:24 • Тема: сохранение значений полей формы при обновлении страницы и вывода ошибки. • Форум: Программирование на PHP

Ответов: 4
Просмотров: 2788
Здравствуйте подскажите пожалуйста как сохранить значения заполненных полей.

То есть я пишу форму регистрации и посетитель должен заполнить все поля формы и нажать кнопку ОТПРАВИТЬ.

И после этого происходить проверка полей на правильность введённых данных и если какое то из полей не соответствует требованиям то выводится сообщения об ошибке.

Но при этом все заполненные поля опустошаются.

Как сделать чтобы поля не опустошались?


Вот пример кода формы и некоторой проверки.


CODE (html):
скопировать код в буфер обмена
  1.  
  2.  
  3. <form action="" method="post">
  4. Логин:<input name="login" type="text" width="200">
  5. Емаил:<input name="email" type="text" width="200">
  6. WMR кошелёк:<input name="wmrt" type="text" width="200">
  7. Пароль:<input name="password" type="password" width="200">
  8. Повторите пароль:<input name="password" type="password" width="200">
  9. <input name="button" type="submit" value="Отправить">
  10. </form>
  11.  


PHP:
скопировать код в буфер обмена
  1.  
  2. if ($_POST ['buttont'] == TRUE)
  3. {
  4.         if ($_POST ['login'] == ' ')
  5.         {
  6.                 $this -> error = 'Поле логин не заполнено!';
  7.         }
  8.         else
  9.         {
  10.                 $m_user -> CheckLogin ($_POST ['login']);
  11.         }
  12.  


Есть вроде способ сохранения данных в переменную но как это сделать не предположу.
Подскажите рад буду выслушать наиболее правильные верянты.

Написанный код не полный есть и другие проверки написал просто для понятия сути.
gheka Отправлено: 23 Февраля, 2011 - 13:51:36 • Тема: Как сделать связные ключи между таблицами MYSQL • Форум: SQL и Архитектура БД

Ответов: 7
Просмотров: 44
zardoz пишет:
Тип таблиц InnoDB ?


Честно говоря не знаю подскажите как узнать это?
Таблици уже созданы в phpMyAdmin 2.6.1

Но думаю что нет потому что в выборе ключей есть только первичный (PRIMARY) ключ внешнего ключа вроде нет. Или я что то не да понял.

Есть такой выбор ключей PRIMARY, INDEX, UNIQUE, FULLTEXT
gheka Отправлено: 23 Февраля, 2011 - 00:12:41 • Тема: Как сделать связные ключи между таблицами MYSQL • Форум: SQL и Архитектура БД

Ответов: 7
Просмотров: 44
OrmaJever пишет:
Зделать поле с одинаковыми значениями.



То есть.
В таблице User есть поле id_user

нужно в таблице Sesions создать поле с таким же названием то есть id_user?
gheka Отправлено: 23 Февраля, 2011 - 00:01:52 • Тема: Как сделать связные ключи между таблицами MYSQL • Форум: SQL и Архитектура БД

Ответов: 7
Просмотров: 44
molchun201 пишет:
Э... ты имеешь ввиду PrimaryKey (Первичный ключ) как поставить при создании БД?



Ну по идее да только таблици уже есть и как выставить с помощью ключей связь между ними.


Есть таблици:

User
Sessions

Нужно связать их между собой. Как это сделать?
gheka Отправлено: 22 Февраля, 2011 - 22:08:31 • Тема: Как сделать связные ключи между таблицами MYSQL • Форум: SQL и Архитектура БД

Ответов: 7
Просмотров: 44
Уважаемые участники форума прошу помочь мне разобраться с связными ключами (индексами) между несколькими таблицами.

C базой данных MYSQL начал работать не давно и всех тонкостей не совсем разобрал.

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

Я понимаю что можно установить ключ по id или по другому значению из таблицы но как именно это сделать не доходит до меня. Огорчение

Может кто-нибудь подскажет хороший учебник или сайт где описывается об это очень подробно желательно с наглядными примерами на основе работы с phpMyAdmin.
gheka Отправлено: 21 Февраля, 2011 - 21:08:20 • Тема: Не срабатывает header () • Форум: Программирование на PHP

Ответов: 4
Просмотров: 398
Okula пишет:
gheka, возможно заголовки уже были получены ранее. Текст ошибки в студию, тут экстрасенсов нет.


В том то и дело что ошибку не выдаёт, вывод всего этого происходит с помощью шаблонов в виде MVC.
Контроллер, Базовый контролер, и контроллер с этим php кодом.

На странице с кодом стоит функция вывода малейших ошибок error_reporting(E_ALL);
Но никаких ошибок она не выводит.

Может подскажите как по другому проверить.

Есть вывод только ТИТЛЕ но происходит это тоже через шаблон.
Можно подумать что из за этого но есть другая страница с похожим кодам и там титле тоже выводится и перенапровления срабатывает.
gheka Отправлено: 21 Февраля, 2011 - 20:48:15 • Тема: Не срабатывает header () • Форум: Программирование на PHP

Ответов: 4
Просмотров: 398
Здравствуйте помогите пожалуйста разобраться в такой ситуации.
По кокой то причине при выполнении скрипта не срабатывает перенаправления на другую страницу с помощью функции header ()


PHP:
скопировать код в буфер обмена
  1.         $this -> articles = $model -> articles_get ($_GET ['id']);
  2.        
  3.         // Проверка нажатия кнопки "Сохронить" и на пустату полей
  4.         if (isset ($_POST ['save']))
  5.         {
  6.                 if (($_POST ['title']) != '' and ($_POST ['content']) != '')
  7.                 {
  8.                         if ($model -> articles_edit ($_GET ['id'], $_POST ['title'], $_POST ['content']))
  9.                         {
  10.                                 header('Location: index.php?c=editor');
  11.                                 die();
  12.                         }
  13.                 }
  14.                 else
  15.                 {
  16. //                      $this -> error = 'Одно из полей не заполнено!';
  17.                 }
  18.         }
  19.  
  20.  
  21.         // Проверка нажатия кнопки "Удалить"
  22.         if (isset ($_POST ['delete']))
  23.         {
  24.                  if ($model -> articles_delete ($_GET ['id']))
  25.                  {
  26.                         header('Location: index.php?c=editor');
  27.                         die();
  28.                  }
  29.         }


Подскажите что нужно исправить чтобы срабатывало перенаправление.

Страниц (13): В начало « ... 5 6 7 8 9 10 11 12 [13]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB