Форум программистов, компьютерный форум, киберфорум
PHP: сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
5 / 5 / 0
Регистрация: 03.07.2013
Сообщений: 106

Как проверить есть ли имя в txt файле?

27.03.2014, 10:24. Показов 1531. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В php я полный ноль, но по работе понадобилось и все тут.
Нужно гет запросом проверить наличие имени(допустим Дима) в рядом лежащем txt файле. Если имени нет, то записать его, а если есть то...ничего=) Это вообще возможно?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.03.2014, 10:24
Ответы с готовыми решениями:

Как при вводе нового имени определить, есть ли уже такое имя в файле или нет?
как при вводе нового имени сравнить есть ли уже такое имя в файле или нет, типа регистрация <form action="_.php"> ...

Как в файле txt прочитать последнюю строчку? Есть ли встроенные методы Java для этого?
Как в файле txt прочитать последнюю строчку? Есть ли встроенные методы Java для этого?

Проверить наличие строки в txt файле
Ребятя, помогите реализовать поиск строки, например "блаблабла" в txt файле Если же она присутствует, вывести сообщение, если нет, тоже. ...

9
112 / 93 / 15
Регистрация: 03.10.2012
Сообщений: 315
27.03.2014, 10:56
Цитата Сообщение от DonniGood Посмотреть сообщение
Нужно гет запросом проверить наличие имени(допустим Дима) в рядом лежащем txt файле
GET запрос к скрипту, который будет проверять наличие имени? Или к самому тексовому файлу?
Если вариант №2, то проверить можно, а вот записать - нет.

Если же вариант №1 и имя приходит как параметр запроса - то не проблема, но скорость поиска будет зависеть от размера файла.
1
5 / 5 / 0
Регистрация: 03.07.2013
Сообщений: 106
27.03.2014, 11:44  [ТС]
Первый вариант. Размер файла не большой, килобайт 20, не больше.
Можно пример кода?
0
112 / 93 / 15
Регистрация: 03.10.2012
Сообщений: 315
27.03.2014, 12:45
Лучший ответ Сообщение было отмечено DonniGood как решение

Решение

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
$search = $_GET['name'];
$filename = 'names.txt';
$resource = fopen($filename, 'r');
 
if ( !is_resource($resource) ) {
    exit ('ERROR: Cannot open file with names');
}
 
while ( ($line = fgets($resource)) != false ) {
    $line = rtrim($line, "\r\n ");
    if ( strcmp($search, $line) ) {
        $nameFound = true;
        echo "Name {$search} has been successfully found" . PHP_EOL;
        break;
    }
}
 
if ( empty($nameFound) ) {
    echo "Name {$search} wasn't found in the file. Writing it..." . PHP_EOL;
    $resource = fopen($filename, 'a');
    if ( !is_resource($resource) ) {
        exit ('ERROR: Cannot open file with names');
    }
 
    if ( fwrite($resource, $search . PHP_EOL) ) {
        exit ("Name {$search} has been successfully written to the file" . PHP_EOL);
    } else {
        exit ("ERROR: Cannot write name to the file" . PHP_EOL);
    } 
}
1
5 / 5 / 0
Регистрация: 03.07.2013
Сообщений: 106
27.03.2014, 12:50  [ТС]
Охх, круто. А как юзать не подскажете?
0
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
27.03.2014, 13:09
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
if (isset($_GET['name'])) {
    $name = trim((string)$_GET['name']);
 
    if (empty($name)) {
        exit;
    }
 
    $fileName = 'name.txt';
 
    if (!file_exists($fileName)) {
        file_put_contents($fileName, $name);
        exit;
    }
 
    $fileData = explode(PHP_EOL, file_get_contents($fileName));
 
    !in_array($name, $fileData) && $fileData[] = $name;
 
    file_put_contents($fileName, implode(PHP_EOL, $fileData));
}
Цитата Сообщение от DonniGood Посмотреть сообщение
Охх, круто. А как юзать не подскажете?
создаете файл на сервере с расширением php. И обращаетесь к нему, например файл addname.php - запрос к нему http://адрес вашего сайта/addname.php?name=Tanya
0
5 / 5 / 0
Регистрация: 03.07.2013
Сообщений: 106
27.03.2014, 13:18  [ТС]
Так получаю просто код=(
http://pumpshooter.com/SyGe4HHW
0
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
27.03.2014, 13:24
вначале файла указали тег - <?php
?
1
5 / 5 / 0
Регистрация: 03.07.2013
Сообщений: 106
27.03.2014, 15:26  [ТС]
Точно, поставил открывающий и закрывающий теги и все заработало. Спасибо!

Добавлено через 1 час 58 минут
Но все же, действия перепутаны. Если имя есть оно записывается, а если нет то нет...
0
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
27.03.2014, 15:37
Цитата Сообщение от DonniGood Посмотреть сообщение
Но все же, действия перепутаны. Если имя есть оно записывается, а если нет то нет...
воспользуйтесь тем кодом который я выложил
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.03.2014, 15:37
Помогаю со студенческими работами здесь

Проверить есть ли в папке *.txt файлы
Как узнать есть ли в папке *.txt файлы и если нет, то вывести Папка пуста а если есть, то в папке есть файлы. Заранее спасибо.

Как проверить если в файле нужная программа, если есть то как безопасно запустить?
Есть файл setup.exe 6mb, это я скачал чит для одной игры, залил на VirusTotal.com он пишет 22/44, мне надо узнать если там чит или только...

В строке, содержащие имя файла, проверить есть ли у него расширение
Задание.В строке,содержащие имя файла,проверить есть ли расширение.если нет добавить .txt.Если есть оставить Есть код нужно...

Проверить есть ли в файле записи
Вот проблема заключается в том что мне нужно, чтобы при нажатии на кнопку, проверялось: если в указанном файле есть записи - то добавить...

проверить есть ли уже в файле строка
while (&lt;ResultSEARCH&gt;) { chomp; if (m/$text/i) { }else {print ResultSEARCH $text} }...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru