Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Aktualizace stránky s opakováním

Zdravím,
mám problém a to tehdy když zaktualizuji stránku - neboť se mě celý formulář odešle znovu a tím pádem se mě vypíše poslední příspěvky podruhé (potřetí, ...) nevíte někdo co s tím prosím? Vše je v jednom php souboru.

Předmět Autor Datum
Tůůů důů důů - důů Musíš přesměrovat pomocí fce header v PHP. Třeba i na tu samou stránku, mělo by…
Flash_Gordon 17.08.2011 13:09
Flash_Gordon
Přes fci Header to nepůjde. zkoušel jsem a zobrazilo se toto: [http://pc.poradna.net/file/view/6751-…
Guest 17.08.2011 13:30
Guest
dej sem ten kód
tomas.kulhanek 17.08.2011 13:32
tomas.kulhanek
to je hloupost... sice to přesměruje, ale zřejmě on přesměrovává jednu stránku na tu samou, takže se…
tomas.kulhanek 17.08.2011 13:33
tomas.kulhanek
Přikládám kód
Guest 17.08.2011 13:36
Guest
Tak to udělej tak, aby nevznikala smyčka.
Flash_Gordon 17.08.2011 13:40
Flash_Gordon
A to je jak?...
Guest 17.08.2011 13:41
Guest
fuj... formulář odesílej na soubor třeba save_data.php kde si zpracuj data a ulož a pak dej header("…
tomas.kulhanek 17.08.2011 13:43
tomas.kulhanek
Mám ještě jden dotaz. Chtěl bych aby bylo povinné i pole email. Pole Jméno a zpráva už mám povinné,…
Guest 17.08.2011 14:10
Guest
tak to udělej stejně.. nevím co jsi prováděl za úpravy.. ale rozhodně bych ještě testoval zda email…
tomas.kulhanek 17.08.2011 14:12
tomas.kulhanek
Ty 2 pole již tam povinné byly. Zkopíroval jsem to z tadyma: diskuse.php Výše jsem dokonce přikláda…
Guest 17.08.2011 14:14
Guest
pár změn mohu? if ($zprava != "" and $jmeno != "") { //provede se pokud není prázdná zpráva a jmén…
tomas.kulhanek 17.08.2011 14:17
tomas.kulhanek
if(isset($zprava,$jmeno,$email)) if (isset($zprava, $jmeno, $email)) { To isset tam ani nemusí být,… poslední
dan55 18.08.2011 17:34
dan55
Jen tak naokraj, funkce filter_var() je dostupná od verze 5.2.0 :-)
martin.developer 18.08.2011 15:39
martin.developer
A co ti brání to udělat stejně?
Wikan 17.08.2011 14:13
Wikan
:-)VYŘEŠENO:-)
Guest 17.08.2011 16:10
Guest
to co jsem ti posílal by bylo lepší.. než vždy budeš nějaké proměnné přiřazovat například $_POST tak…
tomas.kulhanek 17.08.2011 16:13
tomas.kulhanek

fuj... formulář odesílej na soubor třeba save_data.php kde si zpracuj data a ulož a pak dej header("Location: index.php");

takže na indexu ti někdo vyplní údaje a odešle je.. ale ty se odešlou ne na index.php ale na save_data.php kde se zpracují a následně ho přesměruje ten skript zpět.. a vše bude OK

pár změn mohu?

  if ($zprava != "" and $jmeno != "")
  { //provede se pokud není prázdná zpráva a jméno
     $celek = "<p>Zprávu poslal <strong>$jmeno</strong> dne " . date("j.m.Y v H:i:s", time()) . "$email_celek $web_celek</p><p>$zprava</p><hr>";
     $soubor = fopen('data-2.inc', 'a'); //otevře soubor pro doplňování
     fwrite($soubor, $celek); //zapíše zprávu
     fclose($soubor); //zavře soubor
  }

změň na toto

if(isset($zprava,$jmeno,$email))
  if (isset($zprava, $jmeno, $email))
  {
     if (!empty($zprava) && !empty($jmeno) && !empty($email))
     {
        $celek = "<p>Zprávu poslal <strong>$jmeno</strong> dne " . date("j.m.Y v H:i:s", time()) . "$email_celek $web_celek</p><p>$zprava</p><hr>";
        $soubor = fopen('data-2.inc', 'a'); //otevře soubor pro doplňování
        fwrite($soubor, $celek); //zapíše zprávu
        fclose($soubor); //zavře soubor
     }
  }

asi se učíš základy, že?

Zpět do poradny Odpovědět na původní otázku Nahoru