Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проверка имени пользователя на уникальность (текстовый файл)
 
 автор: m@rchello   (15.12.2005 в 12:30)   письмо автору
 
 

1)У меня есть файл(*txt) в котором храняца данные Юзеров а именно: логин,пароль,статус и другая инфа о юзере!!! и Так на каждой строчке!
m@rchello||123||admin||инфа||инфа||инфа
Коля||123||user||инфа||инфа||инфа
Саша||123||moder||инфа||инфа||инфа

Как мне зделать проверку на занетость логина юзера при регистрации новых! Причём регистр должен быть не строгим!!! "@" должна также считататься за "а"! Тоесть если юзер ведёт имя "marchello" а в файле есть юзер "m@rchello" то скрипт выведет что такой логин уже занят!Помогите пожалуйста! Оч нужно!

2)Как зделать так чтоб смайлики хранящиеся в папке "smail" выводились на страницу причём так чтоб они выводились в таблицу и под каждый смайлик была своя ячейка а под смайликом была подпись как его вставить!!!Эти подписи и пути к смайликам лежат в той же директории что и смайлы в файле(*txt)!
Запись в этом файле такого вида
<img src="1.gif">||:)  
<img src="2.gif">||:( 
<img src="3.gif">||:)) 

Если такое возможно то объясните как это сделать!!!
Заранее огромнейшое спасибо за помощь!!!!

   
 
 автор: cheops   (15.12.2005 в 13:29)   письмо автору
 
   для: m@rchello   (15.12.2005 в 12:30)
 

1) Обычно поступают следующим образом
<?php 
  
// Разбиваем содержимое файла на массив,
  // каждый элемент массива соответствует
  // строке файла
  
$arr file("index.txt");
  
// В цикле формируем массив имён
  
foreach($arr as $line)
  {
    
// Разбиваем строку по разделителю ||
    
$temp explode("||",$line);
    
$user[] = $temp[0];
  }
  
// Теперь все имена находятся в массиве $user
  // можно проверять вхождение имени в массив
  
if(in_array("m@rchello",$user)) echo "Такой пользователь уже зарегистрирован";
  else echo 
"Такой пользователь ещё не зарегистрирован";
?>

PS Под разные вопросы, лучше заводить разные темы...

   
 
 автор: cheops   (15.12.2005 в 13:30)   письмо автору
 
   для: m@rchello   (15.12.2005 в 12:30)
 

2) В файле только такие записи? Больше ничего нет?

   
 
 автор: m@rchello   (15.12.2005 в 13:38)   письмо автору
 
   для: cheops   (15.12.2005 в 13:30)
 

cheops - За первое огромнейшое вам спасибо!!!! А ВТОРОЕ- да только такая инфа!

   
 
 автор: cheops   (15.12.2005 в 13:44)   письмо автору
 
   для: m@rchello   (15.12.2005 в 12:30)
 

2) Насчёт это пункта не очень уверен, имеется ввиду вот это
<?php 
  
// Разбиваем содержимое файла на массив,
  // каждый элемент массива соответствует
  // строке файла
  
$arr file("index.txt");
  
// В цикле формируем временный массив 
  
echo "<table border=1>";
  foreach(
$arr as $line)
  {
    
// Разбиваем строку по разделителю ||
    
list($url,$smile) = explode("||",$line);
    echo 
"<tr><td>$smile</td><td>".htmlspecialchars($url)."</td></tr>";
  }
  echo 
"</table>";
?>

   
 
 автор: m@rchello   (15.12.2005 в 14:21)   письмо автору
 
   для: cheops   (15.12.2005 в 13:44)
 

Да вы меня абсолютно верно поняли!!! Но вот только у вас здесь смайлы формируются в одну вертикальную таблицу, а возможно ли зделать так чтоб было ещё примерно 5-7 таких таблиц вправо от этой? Тоесть нужно чтоб они выводились не в одну таблицу вниз в два столбца (потому что она тогда будет слишком длинная) , а в несколько таблиц или в одну таблицу но штоб в ней было примерно 15 столбцов и в каждой ячейке этих столбцов хранился свой смайл

Возможно ли это и как это осуществить?

   
 
 автор: cheops   (15.12.2005 в 23:00)   письмо автору
 
   для: m@rchello   (15.12.2005 в 14:21)
 

Для этого необходимо прикрутить механизм из темы http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=366 - если с этим будут сложности - пишите, помогу.

   
 
 автор: m@rchello   (16.12.2005 в 04:01)   письмо автору
 
   для: cheops   (15.12.2005 в 23:00)
 

Спасибо пойду пробовать делать!!!

   
 
 автор: m@rchello   (16.12.2005 в 09:47)   письмо автору
 
   для: cheops   (15.12.2005 в 23:00)
 

cheops - незнаю правельно ли я сделал , но он не работает точнее работает, но с ошибками!!! Тоесть 1 раз он открывает и закрывает тег <tr> но потом выводит всё в одну строчку!!!
Вообщем вот посмотрите что я написал возможно я что то не правельно сделал

<?php
 
// Разбиваем содержимое файла на массив, 
  // каждый элемент массива соответствует 
  // строке файла 
  
$arr file("index.txt"); 
  
// В цикле формируем временный массив 
  
echo "<table border=1>"
  foreach(
$arr as $line
  { 
    
// Разбиваем строку по разделителю ||
    
list($url,$smile) = explode("||",$line);
    
$final == 0;
    if(
$final == 0)
    echo 
"<tr>";
    echo 
"<td>$smile</td><td>$url</td>";
    
$final++;
      if(
$final == 4)
      {
       echo 
"</tr>";
       
$final == 0;
      }
  }
  echo 
"</table>";
?> 

   
 
 автор: Loki   (16.12.2005 в 11:04)   письмо автору
 
   для: m@rchello   (16.12.2005 в 09:47)
 


<?php 
// Разбиваем содержимое файла на массив, 
  // каждый элемент массива соответствует 
  // строке файла 
  
$arr file("index.txt"); 
  
// В цикле формируем временный массив 
  
echo "<table border=1>"
   
$final 0
  foreach(
$arr as $line
  { 
    
// Разбиваем строку по разделителю || 
    
list($url,$smile) = explode("||",$line); 
    if(
$final == 0
    echo 
"<tr>"
    echo 
"<td>$smile</td><td>$url</td>"
    
$final++; 
      if(
$final == 4
      { 
       echo 
"</tr>"
       
$final 0
      } 
  } 
  echo 
"</table>"
?> 

   
 
 автор: Guestos   (16.12.2005 в 12:37)
 
   для: Loki   (16.12.2005 в 11:04)
 

по теме:
==============================================
при логине пользователей:

<?php
session_start
();
$_users = @file("my_file.txt");
foreach(
$_users as $_contents){
$_content explode("||"$_contents);
if(
$_его_имя == $_content[0] && $_его_пасс == $_content[2] ){
$_SESSION['login'] = $_content[0];
$_SESSION['status'] = $_content[4]
 }
else{
// перенаправляем на страницу авторизации
Header("location:страница_авторизации.php");exit;
 }
}

?>


на страницах где требуется проверка на статус
и все вытекающие от туда последствия:


<?php
session_start
();
if((!
$_SESSION['login'])||(!$_SESSION['status'])){Header("location:страница_авторизации.php");exit;}

// а там уже от твоих намерений относительно статуса:
if($_SESSION['status'] == "admin"){
//   отображаем кнопку администрирования форума

elseif(
$_SESSION['status'] == "moder"){
//   отображаем кнопку модерирования форума
}
elseif(
$_SESSION['status'] == "user"){
// делаем что-либо ещё (если чёта предусмотрено фо юсэрс)
}
else{
session_destroy();
exit; 
}
?>



cheops'y && Дизайнр'у:
ребята когда же вы наконец сделаете
Фак'ю из вашего богатого информацией форума
и прилепите как первую тэму в соотв разделе
на соотв тему , я понять понимаю что некогда
и всё такое но разве вам себя самих не жалко
отвечать на одни и те же вопросы
не один раз на дню ;)
============================================================


OFF Topic:

лично хеопсу:
от вас я так и не получил ответ
на свои два письма , решил ни чё неменять(то о чём шла речь в письмах)

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

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

с уважением Дмитрий Перов (или method)
PS: не при своём нике т.к. забыл пасс... а востанавливать...
oб3 востановлю...
PSS: фильтр мата в стадии доработки 2 версии =)

   
 
 автор: cheops   (16.12.2005 в 14:28)   письмо автору
 
   для: Guestos   (16.12.2005 в 12:37)
 

>лично хеопсу:
>от вас я так и не получил ответ
>на свои два письма , решил ни чё неменять(то о чём шла речь в письмах)
Что за письма? Когда и на какой ящик посылались?

   
 
 автор: Guestos   (18.12.2005 в 02:42)
 
   для: cheops   (16.12.2005 в 14:28)
 

visilal na:
To: simdynov@softtime.ru
Date: Sat, 12 Nov 2005 23:38:34

&&

To: softtime@softtime.ru
Subject: Igoru_Simdynovu
Date: Sun, 13 Nov 2005 13:24:56

v atache posmatrite..

   
 
 автор: cheops   (18.12.2005 в 13:32)   письмо автору
 
   для: Guestos   (18.12.2005 в 02:42)
 

У меня simdyanov @ softtime.ru уничтожен был в это время в целях профилактики спама, лучше на igor @ softtime.ru слать.

   
 
 автор: Guestos   (19.12.2005 в 06:38)
 
   для: cheops   (18.12.2005 в 13:32)
 

otlichno..

a na chet open key shifrovaniya?

   
 
 автор: cheops   (19.12.2005 в 15:08)   письмо автору
 
   для: Guestos   (19.12.2005 в 06:38)
 

>a na chet open key shifrovaniya?
Не очень понятно что имеется ввиду?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования