![]() |
Показаны 10 сообщений на этой странице |
Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- PHP (http://netadmin.ws/forum/forumdisplay.php?forumid=6)
-- Проверка наличия записи перед добавлением ее в файл (http://netadmin.ws/forum/showthread.php?threadid=3336)
Проверка наличия записи перед добавлением ее в файл
Есть текстовый файл file.txt
в нем записи:
111
222
333
через скрипт добавляю новую запись
как проверить наличии добовляемой записи и в этом случае сообщить о ее наличии без добавления дубликата
в противном случае (в случае отсутствия добовляемой записи) добавить запись в файл file.txt
__________________
x-forum.info | x-search.info | xnt.info | kinokabra.ru | x-host.biz
можно использовать функцию file.
__________________
Всегда есть решение.
А кому не лень изобразить готовый код?
__________________
x-forum.info | x-search.info | xnt.info | kinokabra.ru | x-host.biz
//$str - новая добавляемая запись
$lines = file('file.txt');
for ($i = 0; $i < count($lines); $i++) {
if ($lines[$i] == $str) {
$stopwrite = 1;
}
}
if ($stopwrite != 1) {
//записываем в файл
} else {
//выводим ошибку
}
__________________
Всегда есть решение.
Большое спасибо
тоды еще вопросик:
Если это не type="text" , а textarea и по одной записи на одной строке, можно ли их все проверить и записать в файл только новые, а дубликаты не писать?
__________________
x-forum.info | x-search.info | xnt.info | kinokabra.ru | x-host.biz
//допустим $str сотдержит данные из текстарии разделенные \n
$strtoad = explode("/n", $str);
$lines = file('file.txt');
for ($i = 0; $i < count($strtoad); $i++) {
if (in_array("$strtoad[$i]", $lines) {
unset("$strtoad[$i]");
}
}
$str = implode("\n", $strtoad);
$wf = fopen('file.txt', 'a');
print "\n$str";
fclose($wf);
__________________
Всегда есть решение.
polo, не пашет 
ругался на:
if (in_array("$strtoad[$i]", $lines) {
добавил скобку:
if (in_array("$strtoad[$i]", $lines)) {
стал ругаться на:
unset("$strtoad[$i]");
__________________
x-forum.info | x-search.info | xnt.info | kinokabra.ru | x-host.biz
а что пишит то?
__________________
Всегда есть решение.
Parse error: parse error, expecting `T_VARIABLE' or `'$''
__________________
x-forum.info | x-search.info | xnt.info | kinokabra.ru | x-host.biz
странно
но напиши
//допустим $str сотдержит данные из текстарии разделенные \n
$strtoad = explode("/n", $str);
$lines = file('file.txt');
for ($i = 0; $i < count($strtoad); $i++) {
$tocheck = $strtoad[$i];
if (in_array("$tocheck", $lines) {
unset("$strtoad[$i]");
}
}
$str = implode("\n", $strtoad);
$wf = fopen('file.txt', 'a');
print "\n$str";
fclose($wf);
__________________
Всегда есть решение.
| Формат времени GMT. Текущее время 18:05. | Показаны 10 сообщений на этой странице |
Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.