Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.95/20: Рейтинг темы: голосов - 20, средняя оценка - 4.95
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9

Скрипт выводит по запросу данные из файла

10.04.2010, 23:10. Показов 4297. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужен скрипт в котором будет 2 поля Логин и Пароль
Допустим у нас есть файл в котором содержится инфа но выводить нужно только ту инфу из фалла которую запрашивает!
К примеру воодим Логин Root Пароль Root
Скрипт выводит только те строки в которых сверху емееться root_root
Получается как бы Личный кабинет
Пример:
Имеем файл с содержанием
Root_root
Дата деактивации 22.02.22
Дата активации 22.11.44
Аккаунт номер 100500

ololo_ololo
Дата деактивации 23.66.77
Дата активации 43.55.66
Аккаунт номер 100501

По логину и паролу root необходимо выводить
Root_root - это выводиться не должно!
Дата деактивации 22.02.44
Дата активации 22.11.44
Аккаунт номер 100500

Или сделать так, чтобы при вводе логина например admin пасс root
Выводило на экран содержимое admin_root.html

Заранее большое спасибо!
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.04.2010, 23:10
Ответы с готовыми решениями:

Не выводит данные в поле по запросу (ошибка поиска по значению)
Здравствуйте! Последняя надежда на вас, Уважаемые! Не работает поиск по качеству и поиск по цене выводит все значения с бд,хотя на...

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

Как в php сделать поиск? Вводить данные, нажимать на кнопку, скрипт по базе ищет данные и выводит
Можно ли в php сделать поиск? Вводить данные например, нажимать на кнопку и он по базе ищет эти данные и выводит И подскажите...

24
 Аватар для Dimedrol
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
11.04.2010, 01:17
Если у Вас есть возможность переделать базу, то быстрее будет так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
error_reporting(E_ALL);//выводим все ошибки
header("Content-type:text/html;charset=utf-8");//чтоб кроказябла не вылазила :)
$base = "base.txt";//файл базы
/* теперь заносим форму в переменную (так легче будет выводить)*/
$form=<<<FROM
<form method="post">
<input type="text" value="Login" name="login"/>
<input type="text" value="Password" name="password"/>
<input type="submit" value="ENTER"/>
</form>
FROM;
/*теперь сам скрипт*/
if(empty($_POST['login']) or empty($_POST['password'])){ // если нет логина и пароля, выведем форму
echo $form;
} else {
if(!file_exists($base)) die ("ERROR"); //вдруг нет базы...
$base=file($base);//Заносим построчно данные из базы в массив $base
foreach($base as $value){//Цикл...
$infile=explode("|",$value);//Разделяем строку на массив (разделитель |)
/*
$infile[0] - логин
$infile[1] - пароль
$infile[2] - Дата деактивации
$infile[3] - Дата активации
$infile[4] - Аккаунт номер
*/
if($_POST['login']==$infile[0]){//нашли такой логин!
if($_POST['password']==$infile[1]){//пароль правильный!
$forecho = <<<ENT //шаблон вывода инфы
- логин $infile[0]<br/>
- Дата деактивации $infile[2] <br/>
- Дата активации $infile[3]<br/>
- Аккаунт номер $infile[4] <br/>
ENT;
echo $forecho; //выводим инфу
break;//Всё. Больше цикл не нужен
}
else {
echo 'Неверный пароль<br/>';
echo $form;
break;
}
}
}
}
?>
base.txt
Code
1
2
root|root|22.02.22|22.11.44|100500
ololo|ololo|23.66.77|43.55.66|100501
где | является разделителем.
Первое значение - логин, второе - пароль, третье - дата деактивации, четвертое - дата активации, пятое - аккаунт номер. Если не можете переделать базу, опять используйте функцию file, но придется отсчитывать строки.
1
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
11.04.2010, 14:50  [ТС]
Parse error: syntax error, unexpected T_SL in Y:\home\localhost\www\private.php on line 30

Вот что выводит!
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
11.04.2010, 14:54
Возможно, вы написали 2 << вместо нужных 3х <<<
0
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
11.04.2010, 14:58  [ТС]
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Возможно, вы написали 2 << вместо нужных 3х <<<
Как 2 или 3 я не совсем вас понимаю!
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
11.04.2010, 15:02
Вам же буквами по фону написано:
Цитата Сообщение от fiell Посмотреть сообщение
Parse error: syntax error, unexpected T_SL in Y:\home\localhost\www\private.php on line 30
Файл такой-то, строка такая-то, ошибка такая-то. Вот я Вам и подсказываю:
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Возможно, вы написали 2 << вместо нужных 3х <<<
0
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
11.04.2010, 15:16  [ТС]
Так, что нужно сделать чтобы было все оК?
0
 Аватар для Dimedrol
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
11.04.2010, 17:12
Уберите комментарий с 30 строки. Может ругается именно на него, хотя не должен.
PHP
1
$forecho = <<<ENT
0
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
11.04.2010, 17:36  [ТС]
Супер спасибо большое!
И если можно подскажите как сделать чтобы вместо букаф в пароле показывались *******
И еще нащел что если пасс не правильный не чего не пишет, тоесть просто появляется пустое окно!
0
 Аватар для Dimedrol
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
11.04.2010, 17:43
Цитата Сообщение от fiell Посмотреть сообщение
И если можно подскажите как сделать чтобы вместо букаф в пароле показывались *******
Поменяйте
HTML5
1
<input type="text" value="Password" name="password"/>
на
HTML5
1
<input type="password" value="Password" name="password"/>
И еще нащел что если пасс не правильный не чего не пишет, тоесть просто появляется пустое окно!
Сейчас посмотрю.

выводит ошибку!
Изображения
 
1
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
11.04.2010, 17:55  [ТС]
Цитата Сообщение от Dimedrol Посмотреть сообщение
Поменяйте
HTML5
1
<input type="text" value="Password" name="password"/>
на
HTML5
1
<input type="password" value="Password" name="password"/>
Сейчас посмотрю.

выводит ошибку!
Спасибо! ты супер=)
0
 Аватар для Dimedrol
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
11.04.2010, 18:03
Не за что.
0
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
25.04.2010, 18:06  [ТС]
А можеш еще переделать скрипт под мой ini файл?

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
[System]
[System]
UserCount=2
AuthModel=1
AuthType=0
WebFilterCount=0
TimeScheduleCount=0
[User001]
UserName=fiell
Password=885888888883
MACAddress=
IPAddressLow=0.0.0.0
IPAddressHigh=0.0.0.0
ServiceMask=254
MaxConn=-1
BandWidth=-1
BandWidth2=-1
WebFilter=-1
TimeSchedule=-1
EnableUserPassword=1
EnableIPAddress=0
EnableMACAddress=0
Enable=1
BelongsGroup=0
BelongsGroupName=
IsGroup=0
AutoDisable=1
DisableDateTime=2010-05-22 14:24:12
[User002]- акк номер!
UserName=fiell2- логин
Password=949948949948949948 - пасс
MACAddress=
IPAddressLow=0.0.0.0
IPAddressHigh=0.0.0.0
ServiceMask=254
MaxConn=-1
BandWidth=-1
BandWidth2=-1
WebFilter=-1
TimeSchedule=-1
EnableUserPassword=1
EnableIPAddress=1
EnableMACAddress=0
Enable=1
BelongsGroup=0
BelongsGroupName=
IsGroup=0
AutoDisable=1
DisableDateTime=2010-10-25 17:04:41- дата деактивации
Только тут еще нужно чтобы оно на каждого пользователя выводила разную инфу=)!
0
 Аватар для Dimedrol
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
25.04.2010, 19:36
Ну вы и поставили задачку. Мне не приходит в голову, как такое реализовать. Надо юзать рег.выражения т.к надо читать от [User......] до [User......]...
Не легче использовать нормальную базу данных?

Добавлено через 59 минут
Вот, попробовал сделать без циклов.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
error_reporting(E_ALL);//выводим все ошибки
header("Content-type:text/html;charset=utf-8");//чтоб кроказябла не вылазила :)
$base = "base.my.ini";//файл базы
if(!file_exists($base)) die ("Where is base?");
$form=<<<FROM
<form method="post">
<input type="text" value="Login" name="login"/>
<input type="password" value="Password" name="password"/>
<input type="submit" value="ENTER"/>
</form>
FROM;
if(empty($_POST['login']) or empty($_POST['password'])){ 
echo $form;
} else {
    $base = file($base);
    $poisk=array_search('UserName='.$_POST['login'],$base); //ищем эллемент массива
        if($poisk==false) {
        echo 'Такого пользователя нет!<br/>'.$form;
        exit();
        }
        if(explode("=",$base[$poisk+1])!=$_POST['password']){
        echo 'Ошибка в пароле<br/>'.$form;
        exit();
        }
            $vivod=array(
            'UserName'=>end(explode("=",$base[$poisk])),
            'Password'=>end(explode("=",$base[$poisk+1])),
            'MACAddress'=>end(explode("=",$base[$poisk+2])),
            'IPAddressLow'=>end(explode("=",$base[$poisk+3])),
            'IPAddressHigh'=>end(explode("=",$base[$poisk+4])),
            'ServiceMask'=>end(explode("=",$base[$poisk+5])),
            'MaxConn'=>end(explode("=",$base[$poisk+6])),
            'BandWidth'=>end(explode("=",$base[$poisk+7])),
            'BandWidth2'=>end(explode("=",$base[$poisk+8])),
            'WebFilter'=>end(explode("=",$base[$poisk+9])),
            'TimeSchedule'=>end(explode("=",$base[$poisk+10])),
            'EnableUser'=>end(explode("=",$base[$poisk+11])),
            'EnableIPAddress'=>end(explode("=",$base[$poisk+12])),
            'EnableMACAddress'=>end(explode("=",$base[$poisk+13])),
            'Enable'=>end(explode("=",$base[$poisk+14])),
            'BelongsGroup'=>end(explode("=",$base[$poisk+15])),
            'BelongsGroupName'=>end(explode("=",$base[$poisk+16])),
            'IsGroup'=>end(explode("=",$base[$poisk+17])),
            'AutoDisable'=>end(explode("=",$base[$poisk+18])),
            'DisableDateTime'=>end(explode("=",$base[$poisk+19]))
            );
    foreach ($vivod as $namestr=>$value){
        echo $namestr.'-'.$value;
    }   
}
?>
Но есть какая-то проблема в этой строке:
PHP
1
$poisk=array_search('UserName='.$_POST['login'],$base); //ищем эллемент массива
У меня уже мыслей вообще нет.
Попробуйте сами разобраться. Если разберетесь, напишите , в чем была проблема.
0
Программист
 Аватар для motakuji
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
27.04.2010, 14:56
Вот в нете нарыл класс для работы с ини файлами. Его конечно лучше доработать,т.к. не оч удобно написан,но в целом работает. Я проверял. На днях доработаю его и постараюсь выложить исправленный вариант класса
Вложения
Тип файла: zip ini_manager-2008-12-18.zip (4.0 Кб, 15 просмотров)
0
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
27.04.2010, 15:44  [ТС]
Спасибо!
Цитата Сообщение от Dimedrol Посмотреть сообщение
if($poisk==false) {
Может быть тут true, но тогда пишет, что пароль неверный!

Добавлено через 31 минуту
Может ты не ввел переменную $poisk= ?

Добавлено через 1 минуту
Цитата Сообщение от motakuji Посмотреть сообщение
Вот в нете нарыл класс для работы с ини файлами. Его конечно лучше доработать,т.к. не оч удобно написан,но в целом работает. Я проверял. На днях доработаю его и постараюсь выложить исправленный вариант класса
Спасибо!
0
Программист
 Аватар для motakuji
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
27.04.2010, 18:35
Ну вот,как и обещал,исправил ошибки и немного доработал этот класс.Всё протестировал. Если найдёте баги,то пишите.На днях постараюсь выделить ещё немного времени и сделать его более удобным для использования. Если будут какие-то вопросы,обращайтесь.
Вложения
Тип файла: rar ini_manager-2010-04-26.rar (3.4 Кб, 19 просмотров)
1
1 / 1 / 0
Регистрация: 10.04.2010
Сообщений: 9
27.04.2010, 18:48  [ТС]
Цитата Сообщение от motakuji Посмотреть сообщение
Ну вот,как и обещал,исправил ошибки и немного доработал этот класс.Всё протестировал. Если найдёте баги,то пишите.На днях постараюсь выделить ещё немного времени и сделать его более удобным для использования. Если будут какие-то вопросы,обращайтесь.

Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/v/vitsanpak.h16.ru/WWW/newbase/ini_manager.php on line 36
0
Программист
 Аватар для motakuji
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
28.04.2010, 00:08
Цитата Сообщение от fiell Посмотреть сообщение
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/v/vitsanpak.h16.ru/WWW/newbase/ini_manager.php on line 36
у меня никаких ошибок не выдаёт. Всё работает. проверял много раз.

Добавлено через 5 минут
на строке 36 никак не может быть ошибки
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
28.04.2010, 14:45
Версия PHP?

Добавлено через 2 минуты
Не глядел код, но уверен что это PHP 4 увидел внутри класса public, private, protected или static вместо ожидаемого function или var.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.04.2010, 14:45
Помогаю со студенческими работами здесь

Скрипт, который запрашивает дату рождения и выводит на страницу данные
Здравствуйте. Задание №2: Создать HTML-страницу, которая при загрузке запрашивает дату вашего рождения и выводит на страницу день...

Файл: Не выводит данные из файла
Здравствуйте. Задание в целом выглядит следующим образом: создать матрицу 5х5 с плавающей точкой, выделить под нее память, заполнить...

Программа не выводит данные из файла в JLabel
Привет, обучаюсь Java и решил создать программу по выводу расписания занятий. Вопрос: почему не выводятся данные из файла во фрейм? ...

Написать скрипт, который выводит все строки файла содержащие хотя бы одно плохое слово
Пролог: Учусь на курсах Интернет-программирование. В программе язык Piton, котор., как объяснил препод не используется на стороне Клиента,...

Выводит из файла.тхт последние данные два раза
product(std::ifstream&amp; fin) { fin&gt;&gt;Name; fin&gt;&gt;Belok; fin&gt;&gt;Gur; fin&gt;&gt;Yglevod; fin&gt;&gt;Kkal; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru