Вернуться   Дизайнерский форум » ВЕБ-ПРОГРАММИРОВАНИЕ » ASP, Perl, PHP и MySQL

Проверка доступности имени пользователя на PHP и Ajax

Обсуждение темы Проверка доступности имени пользователя на PHP и Ajax в разделе ASP, Perl, PHP и MySQL, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; Нарыл вот такую тему и хочу поставить её себе на сайт но проблема заключается вот в этом: Код: <?php //это переменная содержит имена ...


Закрытая тема
 
Опции темы
Старый 08.06.2010, 21:39   #1
Нарыл вот такую тему и хочу поставить её себе на сайт но проблема заключается вот в этом:

Код:
<?php
    //это переменная содержит имена существующих пользователей
      $existing_users=array('roshan','mike','jason');     
$user_name=$_POST['user_name'];
      //проверка существует ли пользователь в массиве $existing_users
      if (in_array($user_name, $existing_users))
      {
      //юзер недоступен
      echo "no";
      } 
      else
      {
      //доступен
      echo "yes";
      }
      ?>
Как мне тут сделать-Прописать что бы работало это все?
В моей базе таблица с пользователями называется tb_users,Имена пользователей находится в ячейки под названием username.Подключение к базе данных через require('config.php');
 
Старый 08.06.2010, 21:39
Ссылки
Старый 11.06.2010, 10:57   #2
Что значит:
Цитата:
"Как мне тут сделать-Прописать что бы работало это все?"
Ты просишь написать за тебя серверный скрипт для асинхронного запроса???
На держи, но если у тебя получится, не откажусь от отзыва.

<?php

require('config.php');//Твоё, как ты говоришь подключение.

$sql = 'SELECT username FROM `tb_users`';//Запрос
$res = mysql_query($sql);

while($row = mysql_fetch_assoc($res))//Проверяем запрос
{
if($row['username'] == $_GET['name'])
{
echo 'юзер недоступен';
exit();
}
}

echo 'доступен';
?>
Конструкции отладки мной убраны...
 
Старый 11.06.2010, 18:20   #3
Цитата:
Сообщение от moskitos80 Посмотреть сообщение
Что значит:
Ты просишь написать за тебя серверный скрипт для асинхронного запроса???
На держи, но если у тебя получится, не откажусь от отзыва.

<?php

require('config.php');//Твоё, как ты говоришь подключение.

$sql = 'SELECT username FROM `tb_users`';//Запрос
$res = mysql_query($sql);

while($row = mysql_fetch_assoc($res))//Проверяем запрос
{
if($row['username'] == $_GET['name'])
{
echo 'юзер недоступен';
exit();
}
}

echo 'доступен';
?>
Конструкции отладки мной убраны...
Не фурычит так все и пишет что доступно
 
Старый 11.06.2010, 18:56   #4
Скрипт элементарный, он должен работать. Я моделировал твою ситуацию у себя, но здесь есть две тонкости: $_GET['name'] - надо обрабатывать(убирать случайные пробелы и т.п., а лучше так же, как перед занесением пользователя в базу), и второе надо смотреть, что возвращает $row = mysql_fetch_assoc($res) - трассировать так сказать, там может приходить абракадабра, если кодировка соединения не настроена. И естественно условие
Цитата:
if($row['username'] == $_GET['name'])
никогда не выполнится и скрипт напишет: "доступен" в любом случае - в общем смотри что попадает в $row!
 
Старый 14.06.2010, 15:12   #5
Простите moskitos80 но за это $sql = 'SELECT username FROM `tb_users`';//Запрос в
while($row = mysql_fetch_assoc($res))//Проверяем запрос
кастер мало я скажу почему. во первых если на сайте будет много очень много зареганых поьзователей то вот этот ваш запрос будет вешать сервак. Если и не повесит то памяти пожрет во вторых ресурсы надо особождать. какой должен быть
запрос
$user=mysql_real_escape_string($_POST['user']);
$sql = "SELECT username FROM `tb_users` WHERE username=$user";

И проверить mysql_num_rows() если 0 значит все ничтяк ползюка нет если не равно 0 тогда есть.
 
Старый 15.06.2010, 10:41   #6
Так как сделать правильно что бы работало,пробывал я это и нефига все равно пишет что доступно
 
Старый 15.06.2010, 10:41
Закрытая тема


Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка кроссбраузерности Rinat1994 HTML, CSS, JavaScript 1 15.10.2012 23:04
проверка Byyf Скамейка запасных 7 16.02.2007 20:10
Проверка формы: php или JS? Подсолнух ASP, Perl, PHP и MySQL 4 03.02.2007 16:49
Проверка формы vitalius ASP, Perl, PHP и MySQL 4 02.06.2006 11:02
проверка домена seka HTML, CSS, JavaScript 6 22.02.2005 12:26


Текущее время: 12:22. Часовой пояс GMT +4.

Реклама на форуме Условия размещения рекламы
Биржа ссылок Заработай на сайте!
Тарифный план «Lite»
Место: 1000 Мб
Трафик: неограниченный
Панель управления
Заказать ТП «Lite»
Тарифный план «Normal»
Место: 2000 Мб
Трафик: неограниченный
Поддержка скриптов
Заказать ТП «Normal»
Тарифный план «Profy»
Место: 7000 Мб
Трафик: неограниченный
Поддержка скриптов
Заказать ТП «Profy»
Тарифный план «Места хватит!»
Место: 25 ГБ
Трафик: неограниченный
Поддержка SSI, ssh
Заказать ТП «Места хватит!»
Дизайнерский форум