Autor Zpráva
marfy
Profil
čau... Zprovoznil jsem si email všechno funguje odeslání, diakritika.

Jen jeden problémek. Při odeslání se zobrazí echo s větou... Já bych potřeboval poradit, jak tu odpověď dát pod formullář.
-----------
<?php
$email = "muj@seznam.cz";
$predmet = $_POST['predmet'];
$zprava = $_POST['zprava'];
$odesilatel = $_POST['odesilatel'];
$kon = cs_mail ($email, $predmet, $zprava, "From: $odesilatel \n");

if ($kon)
  echo "E-mail byl úspěšně odeslán.<br>";
 else
  echo "E-mail se bohužel nepodařilo odeslat.<br>";
?>
akali
Profil *
Musíš tohle PHP zpracování mít ve zdrojovém kódu pod formulářem. Dej sem kód celý stránky
marfy
Profil
tady je ten kod formuláře


<form class="cmxform" action="soubory/mail.php" method="post" id="commentForm">

<label for="odesilatel">Váš e-mail:</label><br />
<input id="inputtext" name="odesilatel" size="25" class="required email" ><br>

<label for="predmet">Předmět:</label><br />
<input id="inputtext" name="predmet" size="25" class="required"><br>

<label>Text:</label><br />
<textarea name="zprava" rows="6" cols="55" id="textarea" class="required"></textarea><br>

<input type="submit" value="" class="qc_button2">

      
akali
Profil *
Dej sem kód celý stránky..
Prvně musíš mít ve stránce ten formulář <form> a poté PHP kód.. Aby se echo zobrazilo pod formulářem

<form class="cmxform" action="soubory/mail.php" method="post" id="commentForm">

<label for="odesilatel">Váš e-mail:</label><br />
<input id="inputtext" name="odesilatel" size="25" class="required email" ><br>

<label for="predmet">Předmět:</label><br />
<input id="inputtext" name="predmet" size="25" class="required"><br>

<label>Text:</label><br />
<textarea name="zprava" rows="6" cols="55" id="textarea" class="required"></textarea><br>

<input type="submit" value="" class="qc_button2">

<?php
$email = "muj@seznam.cz";
$predmet = $_POST['predmet'];
$zprava = $_POST['zprava'];
$odesilatel = $_POST['odesilatel'];
$kon = cs_mail ($email, $predmet, $zprava, "From: $odesilatel \n");

if ($kon)
  echo "E-mail byl úspěšně odeslán.<br>";
 else
  echo "E-mail se bohužel nepodařilo odeslat.<br>";
?>


DALŠÍ PHP A HTML KÓDY  
marfy
Profil
akali:
Když jsem to zkusil dát pod formulář, hned se vypsalo echo (né až po odeslání) ...
akali
Profil *
Dej sem celej zdrojovej kód stránky, nebudu luštit co kde máš. Píšu to už po třetí a po čtvrtý to psát nebudu.
marfy
Profil
joo tak už mám řešení, prostě v souboru mail.php nebudu mít jen funkci mail ale celou www stránku s infem "úspěšně odesláno".

Díky akali - nevím jeslti si to tak myslel :-)
Darker
Profil
No šlo by to i jinak. Například bys mohl kontrolovat, jestli se vůbec něco odesílalo.
<form onsubmit=this.odeslano.value="JO"><input type=hidden name=odeslano>

Pak kontrolovat $_POST["odeslano"], nebo prostě zjišťovat, jestli $_POST['predmet'] a $_POST['zprava'] nejsou null.
Další možnost je vyplivnout přes echo javascript, který by změnil innerHTML divu pod formulářem. Ale dělat další dokument jen pro mailform je docela otrava...
mlaticka
Profil *
mno ja vím že už je trochu pozdě ale tazatel potřebuje vypsat hlasku pod formularem buď chybovou nebo správnou a to udelá snadno díky hlavičce ,zkrátka na stránce index.php má formulář, po kliknutí na odeslat se přesunou parametry z formuláře ke zpracování do php scriptu který je pro to určen bude se jmenovatr třeba zpracovávač.php script přijme parametry a pak je vyhodnotí ,pokud zjistí že je vše v pořádku tak se pošle hlavičkou (header) zpět do stránky index.php pod formulář odpověd že je vše v pořádku ale aby se odpověd na stránce zobrazila musí ji zachytit pod formulářem nějaká funkce, v kódu by to vypadalo asi takhle
na stránce index.php  bude nejakej formulář
 <form action="../komentare/knihamatjedna.php" method="post" class="form" />                                                               
          <input type="text" name="email" size="15" value="Váš@mail.cz"  />   <br />                                                                 
          <input type="text" name="jmeno" size="15" value="jméno"  />      <br />                                                                  
          <input type="text" name="nadpis" size="15" value="nadpis"  />     <br />                                               

 <textarea name="zprava" rows="3" cols="35">Zpráva...</textarea>                <br />                                                                                                  
          <input type="text" name="spam" value="<?php include_once '../komentare/cislokomentar.php'; ?>"> kontrolní kód  <br />                                         
          <input type="text" name="cislo" value="opište kód" />          
          <input type="hidden" name="idstranky" value="mimotema" />         <br />                                                      
          <input type="submit" value="odeslat" class="submit" />                                   
          <p>                                 
          </p>                                
          <br>                                                    
          </form> 
          pod formulářem bude zachytávací funkce která szachytí hlavičku a její obsah ,důležité je to ,ano, 
         <?php echo htmlspecialchars($_GET['ano']);?>
          tedˇ se přesuneme do zachytávače .php a tam by to vypadalo asi takto
          nějaká podmínka co všechno zkontroluje
          if(blablabla){
          a ted dáme do výsledku vyhodnocení hlavičku se zprávou
          $adresa="http://www.domena.cz/index.php?ano=".rawurlencode('Tvůj komentář byl úspěšně zapsán');
                Header('Location: '.$adresa);
                exit;
          a do else bych dal chybu to bude ,ne,
          else {$adresa="http://www.uceni-muceni.chytrak.cz/$idstranky.php?ne=".rawurlencode('Tvůj komentář nebyl zapsán, pole označená hvězdičkou musí být vyplněna, zkontroluj take tvar emailové adresy...Tvůj@email.cz...');
                Header('Location: '.$adresa);
                exit;
}      
          
            



mlaticka:
u toho else jsem nepřepsal domenu a index.php aby vás to nemátlo

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: