- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
У меня есть файл, текстовый. В каждой новой строчки название товара. Я сделал скрипт который выводит все товары в столбик, и напротив каждого из товаров стоит checkbox. отмечаю нужный товар нажимаю кнопку и у меня удаляет из текстового файла нужные товары.
вот код который удаляет строки(товары) .
$list="file.txt";
$str=$_POST['delete'];
$file=file($list);
for ($i=0; $i < count($file); $i++) {
for ($j=0; $j < count($str); $j++) {
if ($i==$str[$j]) unset($file[$i]);
}
file_put_contents($list,implode("",$file),LOCK_EX);
}
Где $_POST['delete'] ето массив строки которые нужно удалить. например
array([0]=>2, [1]=>5, [2]=>8);
Вопрос такой. Все работает отлично, но если выбрать любой товар и последний, то последний не удаляется, приходится удалять его отдельно. Просто отмечаю последний и он удаляется. Как поправить код, чтоб и последний удалялся?
И еще, если нажать быстро кнопку удалить, несколько раз, то удаляет и еще строки уже так сказать в том файле в котором они удалились. Например удаляю строки 2 , 4, 9, и нажмаю быстро кнопку удалить, то удаляет снова строки 2 , 4, 9. Хотелось бы етого избежать, НО КАК?
Дело в том, что значение выражения $i < count($file) заново вычисляется на каждой итерации цикла.
После очередного вызова unset, количество элементов будет меньше и счетчик до последнего элемента не дойдет.
Спасибо. Очень помогли.
Осталось решить второй вопрос. Запретить как то нажатие кнопки удалить больше одного раза. Тут наверно Jquery нужно
Осталось решить второй вопрос. Запретить как то нажатие кнопки удалить больше одного раза.
Вот простое решение на JS есть неплохое!
Действительно работает. Спасибо. По крайней мере на компютере работает. Не знаю как на планшетах, но и так устроит.
Всем спасибо. Очень помогли
Не знаю как на планшетах, но и так устроит.
А в чем разница на планшете? Если в браузере JS не отключен (что бывает очень редко), то будет все работать точно так же!