{% else-1 %}
Netc * 0.13
(30 июл 2016, 03:06) (0/0) [0]
Всего доброго.
Netc * 0.13
(30 июл 2016, 03:05) (0/0) [0]
При том, что вероятно плохо проверялось...
И как легко вы написали:
В моем случае обработать - это просто заменить слово в тексте и на лету перезаписать.
- а ведь это целый процесс для php.
Netc * 0.13
(30 июл 2016, 02:54) (0/0) [0]
В данном случае прямая работа с файлом ну никак не выигрывает, просто ну никак! Это же очевидно. Открыть файл, обработать и снова записать?! У вас когнитивный диссонанс уважаемый. (ни коем случае не хотел оскорбить, ни в коем случае, просто к слову)
Netc * 0.13
(30 июл 2016, 02:45) (0/0) [0]
Ещё как производительнее. А если в файле 2000-3000 строк? М? Это уже процесс! А для бд это миг!
Netc * 0.13
(30 июл 2016, 01:30) (0/0) [0]
Можно и так сделать, только зачем лишний раз открывать файл? Когда можно просто с базы взять готовый список и сразу записать при помощи fopen..., так намного производительнее.
Netc * 0.13
(29 июл 2016, 14:34) (1/0) [1]
ibni, можно так сделать
[code]<?php
# забираем ip
$ip = $_SERVER['REMOTE_ADDR'];

# ЗАПИСЬ
# проверяем на существование в БД данного ip
if(mysql_num_rows(mysql_query("SELECT * FROM `ip_table` WHERE `ip` = '{$ip}';"*) == 0){

# пишем в БД
mysql_query("INSERT INTO `ip_table` SET `ip` = '{$ip}';"*;

# записываем ip в log - список
$fopen = fopen('./file.log', 'a+');
fwrite($fopen, $ip . "\n"*;
fclose($fopen);
}

# УДАЛЕНИЕ
# проверяем на существование данного ip в БД
if(mysql_num_rows(mysql_query("SELECT * FROM `ip_table` WHERE `ip` = '{$ip}';"*)){

# удаляем с БД
mysql_query("DELETE FROM `ip_table` WHERE `ip` = '{$ip}';"*;

# выводим список существующих ip из БД
$res = mysql_query("SELECT * FROM `ip_table` WHERE `ip`;"*;

$out = false;

while($row = mysql_fetch_assoc($res)){

$out .= $row['ip'] . "\n";
}

# переписываем log - список
$fopen = fopen('./file.log', 'w+');
fwrite($fopen, trim($out));
fclose($fopen);
}
?>[/code]
  • 1 из 1