Autor Zpráva
dede
Profil
Zdravím,
potřeboval bych trochu poradit..pokud přidávám nový příspěvek do g-booku jak udělat aby se nestalo při zmáčknutí F5 vložení stejného příspěvku. Napadlo mě, po přídání příspěvku přsměrovat pomocí
header("location://http://www.mywork.wz.cz/aka/index.php?page=book");
, ale to vypíše error
Warning: Cannot modify header information - headers already sent by (output started at /3w/wz.cz/m/mywork/aka/book.php:10) in /3w/wz.cz/m/mywork/aka/book.php  on line 18
děkuji za každou radu
WanTo
Profil
http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=2111#already-sent
jablon
Profil
1. možnost
ve formuláři dáš skryté pole s názvem odeslany a s hodnotou true, pak po odeslání postu do skryptu dáš podmínku if odeslany. V podmínce změníš proměnnou na odeslany = false a už víš, že se ti to nikdy znovu neodešle po f5

2. možnost

smazat po odeslání a spracování pole $_POST
dede
Profil
jablon:
myslíš takhle?
<form action="?page=book" method="post">
                        Předmět:<br /><input type="text" name="predmet" size="40" class="required" /><br />
                        Vzkaz:<br /><textarea name="zprava"  rows="10" cols="40" class="input"></textarea><br />
                        <input type="hidden" name="odeslano" value="true" />
                        <input type="submit" name="vloz" value="Vložit" />
                    </form>
                    </div> 
                   <? } 
                    if ($_POST["vloz"]){
                    if($odeslano==true) {
                       $autor=$_SESSION['login'];
                       $date=Date("d.m.Y");
                       mysql_query("INSERT INTO book VALUES (0,'$autor','$predmet','$zprava','$date')");
                       mysql_query("INSERT INTO news VALUES (0,'$date','Byl přidán příspěvek do diskuze','diskuze')");
                       $odeslano=false;
                       }
         
         }        ?>
Alphard
Profil
dede:
Přesměrování je správné řešení. Jen vyřeště ten problém s výstupem, přinejhorším přes buffer.
dede
Profil
nakonec sem to vyřešil pomocí header ale muselo to být uplně na začátku..jinak díky za rady

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0