Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.02.2010, 23:13   #1
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию Удаление и редирект

Я начинающий в PHP. Делаю гостевую книгу на текстовых файлах.
3 файла
index.php
addtext.php
delete.php

На главной выводятся записи и ссылка на удаление типа "delete.php?id=0"

Код delete.php
PHP код:
<?php

$file_array 
file("text.txt");

if (isset(
$id))
if (
$id<=count($file_array)) unset ($file_array[$id]);

$fp=fopen("text.txt","w"); 
fputs($fp,implode("",$file_array)); 
fclose($fp);

header ("Location: index.php");
?>
Проблема: Удаляю первую запись - всё отлично. Удаляю вторую и браузер каширует страницу и не хочет переходить на неё второй раз с тем же id и сразу же редиректит на index.php

Подскажите что можно сделать? Пробовал сделать через JavaScript функцией document.location="index.php" не обновляет index.php
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 24.02.2010, 00:46   #2
Greblin
Меркантильный кю
Участник клуба
 
Аватар для Greblin
 
Регистрация: 02.02.2008
Сообщений: 1,001
По умолчанию

Во-первых, явный запрет кеширования
Код:
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); //Дата в прошлом 
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
header("Pragma: no-cache"); // HTTP/1.1 
header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");
Если не помогает и это, то можно при перенаправлении передавать случайный незначащий параметр
Код:
header ("Location: index.php?rand=".rand());
Росли вроде умными, выросли дурнями... (c)А.Васильев
Greblin вне форума Ответить с цитированием
Старый 24.02.2010, 00:53   #3
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию

Спасибо! Первое работает)
Только я написал только одну строку от туда:

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1

остальные на что-то влияют?
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Старый 24.02.2010, 01:10   #4
Greblin
Меркантильный кю
Участник клуба
 
Аватар для Greblin
 
Регистрация: 02.02.2008
Сообщений: 1,001
По умолчанию

Лучше писать все, чтоб для всех браузеров и для прокси работало
Росли вроде умными, выросли дурнями... (c)А.Васильев
Greblin вне форума Ответить с цитированием
Старый 24.02.2010, 01:34   #5
NoName_emaNoN
Форумчанин
 
Аватар для NoName_emaNoN
 
Регистрация: 15.11.2007
Сообщений: 229
По умолчанию

Спасибо!
Компьютер не подчиняется законам физики: глюки возникают из ниоткуда, файлы исчезают в никуда, а вес измеряется в метрах.
NoName_emaNoN вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Редирект с несуществующих субдоменов Беляевский PHP 0 23.02.2010 13:43
Редирект через .htaccess AxisNet PHP 2 16.09.2009 18:34
РЕдирект в idHTTP beemoto Работа с сетью в Delphi 13 12.04.2009 13:08