Autor Zpráva
Pavel.Prochy
Profil *
Zdravím, mám index dělaný přez REQUIRE:
<?
            if(!isset($_GET['id']))
              $_GET['id']=domu;
            switch ($_GET['id']){
              case 'domu': require "./includes/ome.php";
                break;
              case 'co-nabizime': require "./includes/conabizime.php";
                break;
              case 'kontakt': require "./includes/kontakt.php";
                break;      
              case 'nase-sidlo': require "./includes/sidlo.php";
                break;                
              case 'posli': require "./includes/posli.php";
                break;  
              default : require "./includes/ome.php";
                break;          
            }             
        ?>


v sekci KONTAKT mam obsah v PHP s klasickým formulářem na odesílání e-mailů:
<div id="center"><h1>KONTAKT:</h1></div>

<div id="center">
  <form action="" method="post">
          <p><input name="email" size="25" value="Váš@mail" /><br />
          <input name="predmet" size="25" value="Předmět" /><br />       
          <textarea name="zprava" rows="6" cols="55">Zpráva...</textarea><br />
          <input type="reset" value="Vymaž" />&nbsp;<input type="submit" value="Odeslat" /></p>
  </form> 
</div>


Nevím co mám napsat do action aby se formulář odeslal na další stránku posli.php a tam se vykonal skript na odeslání?
Darkweaver
Profil
Do action napiš cestu k tomu scriptu, který má zpracovat data z formuláře [posli.php]
Pavel.Prochy
Profil *
Kdepak to taky nepomáhá :-( viz.: http://www.proucetnictvi.cz/kontakt.html zkus vyplnit a odeslat...ani se ten skript ulozeny na strance posli.php neodesle
AM_
Profil
hodilo mě to na tuhle adresu:
http://www.proucetnictvi.cz/[posli.php]
Nojo to je tak když někdo bezmyšlenkovitě zkopíruje něco z diskuse... není ti na té adrese nápadné, že ty hranaté závorky tam trochu přebývají?
Pavel.Prochy
Profil *
To nebylo bezmyšlenkový já to pochopil, že Darkweaver myslel abych to tam zapsala takhle:
<form action="./includes/posli.php" method="post">
          <p><input name="email" size="25" value="Váš@mail" /><br />
          <input name="predmet" size="25" value="Předmět" /><br />       
          <textarea name="zprava" rows="6" cols="55">Zpráva...</textarea><br />
          <input type="reset" value="Vymaž" />&nbsp;<input type="submit" value="Odeslat" /></p>
  </form> 


ale bohužel...když se kouknete teďka na http://www.proucetnictvi.cz/kontakt.html tak zjistíte, že se sice e-mail úspěšně odešle ALE stránka ohlašující odeslání/neodeslání meilu nemá vůbec hlavičku, natažený CSS styl nic :-(
AM_
Profil
nojo jistě, když otevřeš jenom kus skriptu.
1) buď dej do action kompletní stránku (třeba ./index.php?sekce=posli, nevím, jak to máš dělané)
2) nebo, lepší řešení, do skriptu posli.php nedávej žádný HTML výstup, prostě jen PHP, které pošle mail a pomocí header("location: poslano.html") například se přesměruješ na už normální HTML stránku nebo kamkoliv, co má hlavičku. To zároveň slouží jako ochrana proti dvojímu odeslání při refreshi.
Alphard
Profil
action="?id=posli"
Pavel.Prochy
Profil *
WAU super...já úplně zapoměl na to, že mi běží mod_rewrite a že mi překládá ty URL takže to fachá takto:
  <form action="./index.php?id=posli" method="post">
          <p><input name="email" size="25" value="Váš@mail" /><br />
          <input name="predmet" size="25" value="Předmět" /><br />       
          <textarea name="zprava" rows="6" cols="55">Zpráva...</textarea><br />
          <input type="reset" value="Vymaž" />&nbsp;<input type="submit" value="Odeslat" /></p>
  </form> 


teď ještě přijít na to aby v URL bylo místo www.proucetnictvi.cz/index.php?id=posli.php tohle www.proucetnictvi.cz/posli.html
AM_
Profil
no tak ten form smeruj rovnou na posli.html ;)
Pavel.Prochy
Profil *
Díky moc problém vyřešen ;-)

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: