Autor Zpráva
misasp
Profil
Ahoj, vytvořila jsem si poptávkový formulář ccs stylama. Chtěla bych, aby se mi posílal do mailu. Vím, že se na to musí použít nějaký skript, ale skriptování neumím. Je možné si jej někde stáhnout nebo nějak jednoduše vytvořit?
Mlocik97
Profil
misasp:
existuju stovky v roznych jazykoch:
v PHP napr: github.com/jemjabella/PHP-Mail-Form
misasp
Profil
Stačí mi nějaký jednoduchý, který bych spojila se svými stránkami. Neovládám žádný programovací jazyk, tak nevím, který vybrat. Mohl bys mi prosím poradit, který vybrat a jak jej vložit do stránek?
Mlocik97
Profil
Len skopirujete ten kod do Vášho suboru kde mate formulár, zmeníte priponu na PHP, a upravíte kúsok kód, ako napr. že nastavíte na ktorý mail sa to má posielať a nastavíte classy (aby sa aplikovali Vaše CSSka). Ak Vám to robí tak veľký problém, môžem Vám to spraviť, akurát budem potrebovať prístup do Vašich zdrojakov
Tomášeek
Profil
Mlocik97:
Ten kód, který jsi odkázal, je pro začátečníka zbytečně rozvláčný, obsahuje spoustu zbytečností.

misasp:
Začni třeba u Nejčastější potíže s PHP (FAQ) » Kódování e-mailu, aneb abychom neposílali otazníky., vše je hezky okomentováno a připraveno na implementaci začátečníkem. Případně se doporučuje užít PHPMailer, který má komentované příklady, např. tento. Zvládnout implementaci by měl i tatar, který má základ angličtiny.
misasp
Profil
Tomášeek:
Díky. Zkusím se tím prokousat.
Mlocik97
Profil
Tomášeek:
práve bych povedal že je omnoho jednoduchší, menej komplexný. I když je pravda že ten "location" je tam zbytočne, ale to jde odstrániť z kódu. Kód má pri tom iba pár riadkov.

github.com/PHPMailer/PHPMailer mi naopak prijde omnoho komplexnejší. I když je pravda že je lepší. No pre začiatočníka neviem teda.
Tomášeek
Profil
Ano, PHPMailer je hodně komplexní, ale uvedený komentovaný kód má asi 10 řádků a je plně funkční. Je tam mnohem více dalších examplů, které jsou komplexnější, ty ale pro masasp v tuto chvíli nejsou třeba.

misasp:
Možnosti máš, jen si vybrat. K PHPMaileru najdeš spoustu řešení i mimo odkázaný zdroj, je to globálně používaná knihovna řešící se mnoho let zde, na stackoverflow i jinde.
misasp
Profil
Mlocik97:
Určitě se o to chci pokusit sama, ale děkuji za nabídku. Jestli to nezvládnu, tak se určitě ozvu pro další radu. Jsem samouk, ale baví mě to.
misasp
Profil
Ahoj, tak to asi úplně nezvládám....Něco jsem si načetla na jakpsatweb něco na vašich odkazech, ale asi jsem tatar :(
Vůbec nevím, jestli na to jdu dobře. Totiž ani nevím, jak si to mám ověřit. Hosting jsem si teprve dnes zřídila, takže není funkční a offline se zdá, že to nefakčí.
Vytvořila jsem si soubor .php do kterého jsem napsala

<? if ( Mail("xxxx@gmail.com", $jmeno, $prijmeni, $adresa, $telefon, $email, $gravirovat, $rezat, $razitko, $drevo, $preklizka, $kuze, $sklo, $plexi, $kov, $papir, $textil, $korek, $sirka, $delka, $tloustka, "From: " . $mail_odesilatele) )
echo "Mail byl odeslán";
else echo "Mail se nepodařilo odeslat"; ?>

ten můj formulář není zas tak krátký, pořád jsem potřebovala něco přidávat a nakonec vypadá takto

 <form action="poptavka-test.php" method="post" enctype="text/plain">
     <fieldset>
     <legend>Poptávkový formulář</legend>
     
     <div>
     <ul>
     <li><label>jméno:</label>
        <input type="text" name="jmeno"></li>
     <li><label>příjmení:</label>
        <input type="text" name="prijmeni"></li>
    <li><label>adresa:</label>
        <input type="text" name="adresa"></li>
    <li><label>telefon:</label>
        <input type="text" name="telefon"></li>
    <li><label>email:</label>
        <input type="text" name="email"></li>    
     </ul>
     </div>
     
     <hr>
    
     <p class="vlevo"><label>potřebuji:</label>
      <input type="checkbox" name="gravirovat">gravírovat
      <input type="checkbox" name="rezat">řezat
      <input type="checkbox" name="razitko">vyrobit razítko
     </p>
     <hr>  
     
      <p class="vlevo"><label>tento materiál:</label></p>
      <input type="checkbox" name="drevo">dřevo
      <input type="checkbox" name="preklizka">překližka
      <input type="checkbox" name="kuze">kůže
      <input type="checkbox" name="sklo">sklo
      <input type="checkbox" name="plexi">plexisklo
      <input type="checkbox" name="kov">kov
      <input type="checkbox" name="papir">papír
      <input type="checkbox" name="textil">textil
      <input type="checkbox" name="korek">korek
      
      <hr>
      
      <p class="vlevo"><label>s těmito rozměry (uvádějte v mm):</label></p>
      <div>
      <ul>
      <li><label>šířka</label><input type="text" name="sirka"></li>
      <li><label>délka</label><input type="text" name="delka"></li> 
      <li><label>tloušťka</label><input type="text" name="tloustka"></li>
      </ul>
      <hr>
      </div>
      
      <p>
      <label>vzkaz pro nás:</label>
      <textarea name="vzkaz" cols="50" rows="6">
      </textarea>
      </p>
      <hr>
      <p>
      <input type="submit" value="poslat poptávku" class="posun">
      </p>
   
    </fieldset>
    </form>

Mohli byste se na to prosím podívat co je špatně? Mám obavy, že úplně všechno.
Taps
Profil
misasp:
funkce e-mail má pouze 4 parametry. musí to být ve smyslu níže uvedeného

<?
$poptavka.= "jmeno:".$jmeno."\n";
$poptavka.="prijmeni:".$prijmeni."\n";
 if ( Mail("xxxx@gmail.com","poptávka", $poptavka, "From: " . $mail_odesilatele) )
    echo "Mail byl odeslán";
else{
     echo "Mail se nepodařilo odeslat"; 
 }
 ?>
Tomášeek
Profil
misasp:
offline se zdá, že to nefakčí.
Ano, PHp potřebuje ke zpracování server, to se píše i na JPW. Ten může být i lokální, není potřeba nutně hosting.

Funkce mail nemá nekonečně parametrů, má 3 povinné a další volitelné. Pokud chceš nacpat více proměnný do obsahu mailu, vše patří do třetího parametru. Viz manuál, tvůj nový kamarád.

Dále samozřejmě proměnné $jmeno, $prijmeni, atd. neexistují a PHP vrátí warning. Hodnoty z formuláře jsou v $_POST.
misasp
Profil
Děkuji za rady, zkusím to ještě nějak předělat. Nejlépe zjednodušit na 3 položky. Ještě taky čekám, až budu mít zprovozněný hosting. Udělala jsem chybu a hosting mám někde jinde než doménu a nejde to tak rychle jak jsem si myslela.
Tomášeek
Profil
misasp:
Položek můžeš mít bambilion, jejich počet není omezen (jak by se odeslal v e-shopu formulář se 4 položkami?)

Omezeny je počet parametru funkce mail, ne počet proměnných, které se odeslou. Musíš pochopit rozdíl mezi proměnnou, funkci, parametrem.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0