| Autor | Správa |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Pi 30.09.11 18:10 |   |
Zdravím..Hľadal som,bádal som no nič.. Obraciam sa zase na vás :-/ no dúfam že mi pomôžete
Mám funkciu addrow ktorá mi pridá 2x select option a 1x input text do ďalšieho radku..
No ak odošlem odošle mi stále len ten posledný riadok.
Potreboval by som aby mi to na mail prišlo vo forme :
| kód: | 1. Prvý riadok
2. Druhý riadok
Meno a priezvisko.... |
Aplikované : http://garcia.6f.sk/objednavky.html
PHP na odoslanie:
| kód: | <?php
$to = "daky mail";
$subject = "Pizzéria Garcia.sk - objednávka";
$headers = "From: ".$_POST['email']."\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
$headers .= "Content-Transfer-Encoding: 8bit\r\n\r\n";
$message = "<strong>".$_POST["vyber"]."</strong> velkosti <strong>".$_POST["velkost"]."</strong><br>
Prílohy: <strong>".$_POST["prilohy"]."</strong><br>
Na meno: <strong>".$_POST["meno"]." ".$_POST["priezvisko"]."</strong> / ".$_POST["kontakt"]." /<br>
Na adresu: <strong>".$_POST["adresa"]."</strong><br>
Poznamky: <strong>".$_POST["poznamky"]."</strong><br><br>
Kontakt do pizzérie: <strong>".$_POST["kontaktnaobjednavku"]."</strong>";
if(mail("daky mail","$subject","$message","$headers"))
{
print "<br><br><br><br><br><br><br><br><br><br><b> Objednávka bola úspešne odoslaná.</b> <br>\n <a href='objednavky.html'>Späť</a><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>";
}
else
{
print "<br><br><br><br><br><br><br><br><br><br><br><br><br><b> Nastala chyba. Skúste to neskôr.</b><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>\n
<a href='online.html'>Späť</a>";
}
?> |
HTML formulára si kukni na stránke
Ďakujem
** Sry zlá sekcia. Prosím do PHP. Prepáčte
shaggy: presunuté
// pridané po 1 hodine 5 minútach od posledného príspevku
| kód: | <?php
$to = "daky mail";
$subject = "Pizzéria Garcia.sk - objednávka";
$headers = "From: ".$_POST['email']."\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
$headers .= "Content-Transfer-Encoding: 8bit\r\n\r\n";
$message = "<strong>1.".$_POST["vyber"]."</strong> velkosti <strong>".$_POST["velkost"]."</strong><br>
Prílohy: <strong>".$_POST["prilohy"]."</strong><br>
<strong>2.".$_POST["vyber2"]."</strong> velkosti <strong>".$_POST["velkost2"]."</strong><br>
Prílohy: <strong>".$_POST["prilohy2"]."</strong><br>
----------------------------------------<br>
Na meno: <strong>".$_POST["meno"]." ".$_POST["priezvisko"]."</strong> / ".$_POST["kontakt"]." /<br>
Na adresu: <strong>".$_POST["adresa"]."</strong><br>
Poznamky: <strong>".$_POST["poznamky"]."</strong><br><br>
Kontakt do pizzérie: <strong>".$_POST["kontaktnaobjednavku"]."</strong>"; |
Takto vyzerá kód, ktorý mi odošle max 2 objednávky.
No ak chcem poslať len jednu, príde mi to asi takto
| kód: | 1. JEDLO veľkosti VELKOST
Prílohy: prílohy k jedlu
2. veľkosti
Prílohy:
---------------
... |
No mne by trebalo vyriešiť tieto DVA problémy :
1. Aby keď odošlem LEN jednu objednávku, v maily sa mi NEZOBRALA aj tá druhá objednávky keď tam nič nie je.
2. Pridanie tretieho riadku neviem spraviť aby malo iné číslo. neviem kde to mám dať aby každý riadok mal iné číslo. A aby keď odošlem dve objednávky aby sa mi nezobrazila tretia,štvrtá,piata a pod..
Proste aby sa dalo max10 objednávok spraviť.
Dá sa to dáko ? |
| |
      |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Ne 02.10.11 16:33 |   |
Takto..Pokiaľ som dobre zistil tak :
| kód: | | <input type="text" name="vyber[]" /> | name bude v []
takýchto môžeš povytvárať koľko chceš, a nemusíš si žiadne jedinečné názvy vymýšlať alebo generovať. V php ti to príde ako $_POST["vyber"] a teda to spracuješ v cykle:
| kód: | | foreach($_POST["vyber"] as $key=>$value) echo "hodnota z $key. editu je $value<br/>"; |
Lenže neviem ako to spraviť. V HTML súbore som pridal do normálneho name [] aj do javascriptu čo mi prídava riadok.
Do php neviem ako to spraviť aby mi posielalo tak ako som chcel. Ak je jedna objednávka tak len jednu..Keď dve tak obidve a nie aj tretiu a pod..
Viete mi prosím pomôcť ? Ďakujem. Na googli som hľadal a nič.. |
| |
      |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: Ne 02.10.11 19:51 |   |
To foreach tam je práve preto, aby sa použilo len toľko prvkov, koľko prišlo (a teda toľko, koľko ich bolo vyplnených). Keďže tam máš tých elementov viac, bude to trochu komplikovanejšie (napr. pretože tam musíš testovať, či prišiel rovnaký počet položiek v každom elemente...). |
| |
  |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Po 03.10.11 20:06 |   |
Ale ako to zostrojiť ? :-(
// pridané po 23 hodinách 43 minútach od posledného príspevku
Zaslal: Pondelok 3.10.2011 20:05 Predmet:
Nikto sa tomu nevenuje. Vyriešim to dáko. LOCK prosím.. |
| |
      |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: Ut 04.10.11 17:44 |   |
A čo si s tým urobil ty? Niečo si aj skúšal, alebo na to úplne kašleš a čakáš, že to urobí niekto iný?
Nikomu sa nechce prehrabávať sa v cudzích skriptoch, takže sa musíš snažiť aby to niekoho zaujalo a potom by ti pomohol nejaké problémy vyriešiť (celé to ale nikto robiť nebude).
PS: Mňa konkrétne odradilo napr. to, že tam používaš priamo funkciu mail a hlavne, že text toho emailu je priamo v tom php kóde (a prehrabávať sa mi v tom nechce). Navyše pohľad na kopec a <br> odradí takmer každého (a zdá sa mi, že ti už niekto písal, že keď dávaš nejaký kód, máš ho zjednodušiť, aby bol čo najkratší a najprehľadnejší).
PPS: Foreach a spájanie reťazcov je to, čo potrebuješ a keby si to aspoň vyskúšal, vedel by si to aj ty. |
| |
  |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: Ut 04.10.11 21:37 |   |
Dík za názor..už som s tým experimentoval a s dobrým vysvetlením som to spravil. Ten bordel s <br> a pod. som už vymazal.. Všetko funguje ako má. Akurát to tel. číslo,predmet a tak nwm kde mám dať..Je to tam hidden  |
| |
      |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: St 05.10.11 14:18 |   |
Vo formulári to nedáš nikam, je to tam úplne zbytočné.
Pri odosielaní emailu to normálne pridaj priamo do toho $message (a ak má ten php skript fungovať pre viac rôznych "predajcov", tak daj do formulára len nejaké ID, aby si vedel, ktoré údaje potom treba do $message vložiť; samozrejme hneď po tom, ako overíš, že také ID tam skutočne používaš). |
| |
  |
 |
ONLINE_SVET
 Užívateľ
 Založený: 24.08.2011 Príspevky: 56 Vek: 16
 | Zaslal: St 05.10.11 16:46 |   |
Ešte by som mal otázku ohľadom odosielateľa. Keďže som ho už dal do toho message vo forme
<input type="hidden" name="email" value="kachelman.sk"/>
tak mi to odošle..Všetko funguje ako má keď som na free hostingu. No akonáhle súbory premiestnim na platený, príde mi to ako Root User. Viem že sa dá s tým dačo robiť dakde som to čítal.
// pridané po 7 minútach od posledného príspevku
Input som vymazal... Pridal len header..Resp. zmenil na
$headers = "From: príklad\r\n" . |
| |
      |
 |
chrono
 Skúsený užívateľ
 Založený: 13.11.2007 Príspevky: 808
 | Zaslal: St 05.10.11 17:39 |   |
Skúsil si tam dať ozajstnú emailovú adresu? (v návode k funkcii mail je napísané, v akom formáte tá adresa musí byť) |
| |
  |
 |
|