| Autor | Správa |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Po 05.09.11 18:00 |   |
Zdravím..Mám tu taký menší problém.. Odošlem formulár cez stránku na e-mail.. Odošle, ale príde mi inak..Nie tak ako chcem..
HTML kód
| kód: | <div class="content">
<h2>Online objednávka </h2><br /><p><font size="4">Objednajte si svoje jedlo z pohodlia domova a bez volania !</font></p><br /><hr /><br /><br />
<div class="formular" id="objednat">
<div class="form">
<div class="online">
<form id="objednavka-form" action="mail.php" method="post">
<table class="order_form">
<input type="hidden" name="subject" value="Pizzéria Kachelman - Objednávka"/>
Meno: <input type="text" name="meno" value="Vaše meno" onfocus="if (this.value=='Vaše meno') this.value='';" onblur="if(this.value=='') { this.value='Vaše meno'; return false; }"> Priezvisko: <input type="text" name="priezvisko" value="Vaše priezvisko" onfocus="if (this.value=='Vaše priezvisko') this.value='';" onblur="if(this.value=='') { this.value='Vaše priezvisko'; return false; }"> <br/><br>
Výber: <select name="vyber" size="1">
<option value="1"> Výber č.1
<option value="2"> Výber č.2
<option value="3"> Výber č.3
<option value="4"> Výber č.4
</select>
<input type="radio" name="velkost" value="Veľkosť1" /> Veľkosť1
<input type="radio" name="velkost" value="Veľkosť2" /> Veľkosť2
<input type="radio" name="velkost" value="Veľkosť3" /> Veľkosť3 <br/><br>
Adresa: <input type="text" name="adresa" value="Presná adresa" onfocus="if (this.value=='Presná adresa') this.value='';" onblur="if(this.value=='') { this.value='Presná adresa'; return false; }"> Tel. číslo: <input type="text" name="kontakt" value="Tel. číslo" onfocus="if (this.value=='Tel. číslo') this.value='';" onblur="if(this.value=='') { this.value='Tel. číslo'; return false; }"> <br/><br>
<input type="submit" name="submit" value="Odoslať objednávku" /> <input type="reset" name="reset" value="Vymazať objednávku" />
</table>
</form> |
PHP kód:
| kód: | <?php
$to = "objednavka@i-rs.sk";
$message = $_POST["meno"].$_POST["priezvisko"].$_POST["vyber"].$_POST["velkost"].$_POST["adresa"].$_POST["kontakt"];
if(mail("objednavka@i-rs.sk","$to","$message"))
{
print "<b>Objednávka bola úspešne odoslaná.</b> <br>\n<a href='online.html'>Späť</a>";
}
else
{
print "<b>Nastala chyba. Skúste to neskôr.</b><br>\n
<a href='online.html'>Späť</a>";
}
?> |
Príde mi na e-mail :
| kód: |
zakaznik@srv3.endora.cz
adresátom: objednavka@i-rs.sk
dátum 5. septembra 2011 17:55
predmet objednavka@i-rs.sk
Skryť detaily 17:55 (Pred 0 minútami)
Vaše menoVaše priezvisko1Presná adresaTel. číslo |
Vyskúšať si to môžete na :
| kód: | | http://kachelman.comehere.cz/online.html |
Chcem aby mi to prišlo tak že :
Meno [medzera] priezvisko
Výber [medzera] velkost
Adresa [medzera] kontakt
Alebo
[Výber] veľkosti " [veľkosť] "
Na meno: [Meno a priezvisko] /[Číslo]/
Na adresu: [Adresa]
Text mimo [*] je normálny.. Text v [*] je to čo sa vyplňuje.. Ďakujem za odpoveď |
| |
      |
 |
Ďuri
 Administrátor
 Založený: 11.08.2007 Príspevky: 3785 Bydlisko: Brno
 | Zaslal: Po 05.09.11 18:06 |   |
No vsak sa pozri, ako spajas tie premenne do premennej $message. Inak odporucam si pozriet dokumentaciu k fcii mail(), napriklad cast, ktora hovori o tom, ze "When sending mail, the mail must contain a From header." |
| |
    |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Po 05.09.11 18:14 |   |
No ja veľmo neovládam CSS toto som pospájal z netu a ide to..Preto píšem sem čo s tým treba.. |
| |
      |
 |
Bajzik
 Užívateľ
 Založený: 01.12.2009 Príspevky: 879 Bydlisko: Žilina Vek: 20
 | Zaslal: Po 05.09.11 18:35 |   |
LOL ... čo má funkcia mail() s CSS ?  |
_________________ PC :ASUSTeK M2A-VM, AMD Phenom X3 8650 AM2 @ 2,3 Ghz, 4 GB RAM DDR2 1800 MHz, SAPPHIRE HD 6770 VAPOR-X 1GB DDR5, 400W Zdroj, 500 GB HDD, Windows Vista 64 bit
Notebook : Asus EEEPC 1201NL, intel Atom N270 512 KB L2 Cache 533 MHz FSB @ 1,6 Ghz, 1 GB DDR2 RAM, nVidia ION, 320 GB HDD, Windows XP 32 bit
Iná technika : LG P500 (806 Mhz, Android 2.3.3 Gingerbread, root, JIT), Koss Pathfinder, kedysi iPhone =( | |
     |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: Po 05.09.11 18:38 |   |
K pôvodnej otázke sa vyjadrovať nebudem (pretože už bolo napísané, v čom je problém).
Musím ale napísať, že nechápem, prečo ľudia pri takýchto skriptoch takmer nikdy tie údaje neukladajú aj lokálne a absolútne sa spoliehajú, že ten email príde tam, kam má (a nikto ho omylom nevymaže). |
| |
  |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Po 05.09.11 18:44 |   |
jaj sry..Myslle som PHP Tak porasdí mi niekto ? Ja to neviem upraviť aby som to mal tak kao chcem.,
// pridané po 5 minútach od posledného príspevku
No dobre.. Ale stále nechápem.. Stačí mi povedať čo tam mám prepísať,dodať Ďakujem.. |
| |
      |
 |
Bajzik
 Užívateľ
 Založený: 01.12.2009 Príspevky: 879 Bydlisko: Žilina Vek: 20
 | Zaslal: Po 05.09.11 18:46 |   |
A prečo sa vlastne púšťaš do niečoho čo nevieš ? Čo takto si tie funkcie preštudovať, pogoogliť, a najprv skúsiť nájsť riešenie. Až potom sa pýtať iných. |
_________________ PC :ASUSTeK M2A-VM, AMD Phenom X3 8650 AM2 @ 2,3 Ghz, 4 GB RAM DDR2 1800 MHz, SAPPHIRE HD 6770 VAPOR-X 1GB DDR5, 400W Zdroj, 500 GB HDD, Windows Vista 64 bit
Notebook : Asus EEEPC 1201NL, intel Atom N270 512 KB L2 Cache 533 MHz FSB @ 1,6 Ghz, 1 GB DDR2 RAM, nVidia ION, 320 GB HDD, Windows XP 32 bit
Iná technika : LG P500 (806 Mhz, Android 2.3.3 Gingerbread, root, JIT), Koss Pathfinder, kedysi iPhone =( | |
     |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: Po 05.09.11 18:47 |   |
Tiem medzery a konce riadkov tam musíš pridať ty. Tá prvá verzia by vyzerala napr. takto:
| kód: | | $message = $_POST["meno"]." ".$_POST["priezvisko"]."\r\n".$_POST["vyber"]." ".$_POST["velkost"]."\r\n".$_POST["adresa"]." ".$_POST["kontakt"]; |
Elegantnejšie by samozrejme bolo, ak by si tam použil nejaký (jednoduchý) šablónovací systém, takže by sa to upravovalo jednoduchšie (a zvládol by to aj niekto, kto neovláda Php).
A maximálne dokonalé by to potom bolo, ak by si na posielanie emailov použil nejakú knižnicu (tak by si tam mal všetky nutné hlavičky a bola by menšia šanca, že to skončí niekde ako spam a fungovala by aj diakritika).  |
| |
  |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Po 05.09.11 18:53 |   |
Ja sa pokúšam hľadať..No ak to spravím inak buď to neodošle alebo odošle a príde prázdny mail...
// pridané po 5 minútach od posledného príspevku
No už to ide...Ďakujem..Bolo to také ťažké ? Ja ešte skúsim nájsť dačo ohľadom úpravy aby som to spravil tak ako som chcel to druhé..
Ak by vedel dakto k tomu príkladu 2. mi dačo poradiť napr. stránku ohľadom toho štylovania a tak tak to prímem.. |
| |
      |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: Po 05.09.11 18:56 |   |
No nebolo to ťažké a preto všetci čakali, že po prečítaní dokumentácie, na to prídeš aj sám.
Ak chceš použiť šablóny, tak sa pozri napr. na TinyButStrong.
V takom prípade by samotný "tvar" toho emailu bol v nejakom súbore, ktorého obsah by, približne, vyzeral takto:| kód: | [onshow.vyber] veľkosti " [onshow.velkost] "
Na meno: [onshow.meno] a [onshow.priezvisko] /[onshow.cislo]/
Na adresu: [onshow.adresa] | a v tom php by bolo niečo ako| kód: | $meno = $_POST["meno"];
$priezvisko = $_POST["priezvisko"];
$vyber = $_POST["vyber"];
$velkost = $_POST["velkost"];
$adresa = $_POST["adresa"];
$kontakt = $_POST["kontakt"];
include_once('tbs_class.php');
$TBS = new clsTinyButStrong;
$TBS->LoadTemplate('objednavka.tpl'', false);
$TBS->Show(TBS_NOTHING);
$message = $TBS->Source;
|
Kompletný príklad, ako by to mohlo vyzerať máš je napr. tu (v tvojom prípade by to mohlo byť trochu jednoduchšie). |
| |
  |
 |
|