Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: после обновления страницы...

Сообщения:  [1-5] 

 
 автор: а-я   (23.02.2008 в 08:27)   письмо автору
 
   для: IIIypyn   (23.02.2008 в 08:00)
 

header - могут отключить.. .
после подобного лучше ставить exit();
а между ними можно поставить промежуточ. страничку. с переадресацией...

я делал через сессии...

после успешной загрузке данных в сессию записывал переменную.
потом на этой же страничке проверял наличие этой переменной.
т.е. если обновят страничку мы будем знать, что это старые данные.

   
 
 автор: IIIypyn   (23.02.2008 в 08:00)   письмо автору
 
   для: boris506   (22.02.2008 в 22:46)
 

Как правильно написал Faraon, а данном случае когда происходит заливка на сайт файла, то браузер автоматически запоминает параметры файла и при попытке обновить страницу браузер считает чтоданные параметры пользователю еще пригодятся. Для того, чтобы сбросить параметры, необходимо браузер перенаправить куда нибудь, даже пусть на эту же самую страницу. Другое дело, что код данные Faraon'ом несовсем корректен


<?php 
if (copy($_FILES["filename"]["tmp_name"],"doc/".$_FILES["filename"]["name"])) 

print (
"Файл \""); 
print 
"<font color=blue>".$_FILES["filename"]["name"]."</font>\n"
print (
"\" успешно загружен!<br>"); 
header("Location: Ваш юрл куда хотим переадресовать"); 

?>


При выполнении этого кода страница ничего не успеет отобразить. То есть в данном случае произойдет вывод сообщения и тут же команда Header(''Location:...') выдаст пользователю новую страницу. Но сам по себе подход правильный. Я бы сделал так.


<?php 
if (copy($_FILES["filename"]["tmp_name"],"doc/".$_FILES["filename"]["name"])) 

header("Location: download.php?ok"); 

?>


А в файле download.php уже сделать:


<?php 
if (isset($_GET['ok'])) 

print (
"Файл \""); 
print 
"<font color=blue>".$_FILES["filename"]["name"]."</font>\n"
print (
"\" успешно загружен!<br>"); 
Print(
'<br><a href=адрес первой страницы...>Назад</a>');

?>

   
 
 автор: Faraon   (23.02.2008 в 00:36)   письмо автору
 
   для: boris506   (22.02.2008 в 22:46)
 

<?php
if (copy($_FILES["filename"]["tmp_name"],"doc/".$_FILES["filename"]["name"]))
{
print (
"Файл \"");
print 
"<font color=blue>".$_FILES["filename"]["name"]."</font>\n";
print (
"\" успешно загружен!<br>");
header("Location: Ваш юрл куда хотим переадресовать");
}
?>

   
 
 автор: ddhvvn   (22.02.2008 в 23:39)   письмо автору
 
   для: boris506   (22.02.2008 в 22:46)
 

Делайте редирект, обнуляйте POST, в общем как-то так! =))

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=36380
http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=46079&page=1
http://www.softtime.ru/forum/srchform.php?id_forum=1

=)

   
 
 автор: boris506   (22.02.2008 в 22:46)   письмо автору
 
 

в общем на странице есть загрузка файла на сервер...все загружаеться норма
но после загрузки файла если обновить старницу выскакивает ненужное сообшение типа того : неудаеться обнавить страницу без повторной отправки данных...и тд...

можно ли какнить избежать выскакивания етого окошка...
код вот

<?php
if (copy($_FILES["filename"]["tmp_name"],"doc/".$_FILES["filename"]["name"]))
{
print ("Файл \"");
print "<font color=blue>".$_FILES["filename"]["name"]."</font>\n";
print ("\" успешно загружен!<br>");
}
?>

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования