Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка на наличие юзера 
:(
    Опции темы
SaFaT
Дата 17.9.2005, 12:40 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Кароче я вот начинающий PHP программист!
Написал небольшой код регестрации! У меня теперь появилась проблема!
Я незнаю как сделать так чтобы нельзя было регать один и тот же ник повторно!
Кароче ща всё обьясню как работает он:
Код

    <form action="login.php" method="post">
    <div align="left">
    <table width="220" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td width="220" height="18" valign="top"><font color="#FFFFFF">Login</font></td>
    </tr>
    <tr>
    <td height="22" valign="top"><font color="#FFFFFF"><input name="login" style="color: #FFFFFF; background-color: #58503E" type="text" id="login"></font></td>
    </tr>
    <tr>
    <td height="21" valign="top"><font color="#FFFFFF">Password</font></td>
    </tr>
    <tr>
    <td height="24" valign="top"><font color="#FFFFFF">
    <input name="pass" type="password" id="pass" style="color: #FFFFFF; background-color: #58503E" size="20" tabindex="1">
    </font></td>
    </tr>
    </table>
    <input type="submit" name="Submit" value="Авторизация" style="color: #FFFFFF; background-color: #58503E"></div>
    <p align="left"><font color="#FFFFFF"><span lang="ru"><a href="reg.php">
    <font color="#AEAEFF">Регестрация</font></a></span></font></p>
    </form>

Извеняюсь что так нагромождённо я просто вырываю из своих страничек!
Так вот это форма в входа которая отправляет данные в login.php но вопрос не в том!
Вот сам код страници регестрации:
Код

<?php
if(isset($_POST['submit']))
{
    $string=$_POST['name']."::".$_POST['pass']."::"."\r\n"; // implode обозначает то, что мы собираем массив в строку, разделяя каждое значение запятой.
    $fopen=fopen("data.txt", "a+");
    fwrite($fopen, $string);
    fclose($fopen);
    echo "Вы зарегестрированы";
}
?>
<body bgcolor="#58503E">

<form action="reg.php" method="post">
    <p align="left"><font color="#FFFFFF">Регестрация
    </font>
    </p>
    <table border="1" width="100%" id="table1" style="border-width: 0px">
        <tr>
            <td style="border-style:none; border-width:medium; " width="80">
            <font color="#FFFFFF">Логин</font></td>
            <td style="border-style:none; border-width:medium; ">
    <font color="#FFFFFF">
    <input type="text" style="color: #FFFFFF; background-color: #58503E" name="name"></font></td>
        </tr>
        <tr>
            <td style="border-style: none; border-width: medium" width="81">
            <font color="#FFFFFF">Пароль</font></td>
            <td style="border-style: none; border-width: medium">
    <font color="#FFFFFF">
    <input type="text" style="color: #FFFFFF; background-color: #58503E" name="pass"></font></td>
        </tr>
    </table>
    <font color="#FFFFFF">
    <input type="submit" name="submit" style="color: #FFFFFF; background-color: #58503E">
</font>
</p>
</form>

В этом файле все данные обрабатываються и записываються таким образом:
admin::pass::
admin2::pass2::
А сама проблема в том как сделать так чтобы нельзя было регить адно и тоже имя много раз?

  Вверх
PARROT
Дата 17.9.2005, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



Код

<?php
if(isset($_POST['submit']))
{
if(!ereg("^[a-z0-9]+$", $login)){
        $error="Ошибка: Вы ввели недопустимое имя пользователя!<br>";
        }
    if(!ereg("^[a-z0-9]+$", $passw1)){
        $error.="Ошибка: Вы ввели недопустимый пароль!<br>";
        }
    if($passw1!==$passw2){
        $error.="Введите пароль правильно!";
        }

if(!$error){
    $data=file("data.txt");
    foreach ($data as $us){
    list($pass, $log)=split("\t", $us);
    if($log==$login){
        $er="Этот логин занят!!!";
        }
    
    }
    if(!$er){
    $dat=fopen("data.txt", "a");
    fwrite($dat, "$passw1\t$login\n");
    fclose($dat);
    }
    
}
else
{echo"$error";}
}
?>
}
?>


Это сообщение отредактировал(а) PARROT - 17.9.2005, 14:05


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0409 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.