reklama
Aktuality  |  Články  |  Recenze
Doporučení  |  Diskuze
Grafické karty a hry  |  Procesory
Storage a RAM
Monitory  |  Ostatní
Akumulátory, EV
Robotika, AI
Průzkum vesmíru
Digimanie  |  TV Freak  |  Svět mobilně

Objednavkovy formular php

pas!k (3765)|17.4.2007 21:39
Zdravim .. jelikoz php moc neholduji potreboval bych radu ..
Na redakcni system bych potreboval umistit odkaz na objednavkovy formular ktery by se po vyplneni odeslal na danou mailovou adresu ..

Neco jsem zkousel podle navodu na netu mail mi chodi ale je preazdny neni vyplnen ani predmet ani text emailu. Je mi jasne ze pro nekoho kdo zavadil o php to bude hracka .. takze jeste jednou pozadavky ..

formular asi klasicky v html ktery bych si pak sam doladil kolonek tam bud ehodne :)) V actions nastavena cesta k php souboru ktery obstara odeslani na mail .. server podporuje funkci email ..
a8nr (176)|17.4.2007 23:19
Bohužel mám většinu skriptů doma, případně na serveru ke kterému si nepamatuji heslo (ukládání hesel je strašné zlo). Vyštrachal jsem něco z emailu, ale netuším, jak funkční verze to je.
U předmětu bývá problém s nesprávně zobrazovanou diakritikou, musí se tam explicitně uvést kódování, ale zatím jsem se k provedení nedostal.
Ritchie83 (369)|18.4.2007 00:12
[QUOTE=a8nr]Vyštrachal jsem něco z emailu, ale netuším, jak funkční verze to je. U předmětu bývá problém s nesprávně zobrazovanou diakritikou, musí se tam explicitně uvést kódování, ale zatím jsem se k provedení nedostal.[/QUOTE]
Přiložený skript je napsaný velice nečistě (mírně řečeno). V tomhle případě nebude fungovat ani diakritika v těle zprávy. Je potřeba poslat hlavičku Content-Type s uvedením MIME typu a znakové sady. Pokud obsahují hlavičky diakritiku (např. hlavička Subject), je potřeba ji zakódovat podle RFC. Než však tohle vše řešit "od RFC", poohlédl bych se po hotové třídě na posílání non-ASCII emailů. Jistě bude na netu z čeho vybírat.

[QUOTE=pas!k]Zdravim .. jelikoz php moc neholduji potreboval bych radu ..
Na redakcni system bych potreboval umistit odkaz na objednavkovy formular ktery by se po vyplneni odeslal na danou mailovou adresu ..[/QUOTE]
Pokud tomu nerozumíte, bude nejlepší, když napsání celého skriptu svěříte někomu, kdo tomu rozumět bude. V principu je potřeba projít pole $_POST, vybrat potřebné hodnoty, z nich vytvořit tělo e-mailu a následně e-mail odeslat. V nejjednodušším případě se bude jednat o jeden foreach cyklus. Mimochodem, budete nějak ošetřovat správnost vyplnění políček?
pas!k (3765)|18.4.2007 09:13
mno tak zatim sem zvladnul to ze mam asi 4 pole ktere s evyplni a to se odesila jako telo mailu .. v policku emailova adresa se zapisuje mail odesilatele ten se pak zobrazuje jako opravdovy odesilatel mailu .. ted s evrhnu na to jak udelat z nekterych policek povinna atd :) Ale je to teda horror asi to fakt nekomu sverim ;)


btw daji se sempostovat php skripty ?
panpelisek (43)|18.2.2008 13:59
Dobrý den,
není to sice navazující na předešlé příspěvky, ale nechci to tu špinit x tématy na podobnou problematiku.
Chtěl bych požádat o radu, jak uložit natrvalo obsah formuláře i po té, co se formulář změní. Například když do jednoho prvku TextArea napíšu nějaký text, potom kliknu na button a daný text by se měl zobrazit někde jinde, třeba vypsat pod formulářem - to bych ještě zvládnul, ale při znovuvyplnění TextArea a následném kliknutí na button se mi změní i text pod formulářem.
Mám to napsané takhle:

">




echo $_POST["zadat"];
?>

Chyba je v tom, že po každém kliknutí na button se celý skript "přepočítá" a tudíš se změní i $_POST["zadat"] - obsah TextArea
a8nr (176)|19.2.2008 20:58
Na trvalo jednou provždy (do databáze nebo souboru), nebo jenom pro dané sezení (třeba do skrytého prvku formuláře nebo pomocí session).

Jinak ještě k předchozímu tématu, kód odesílání mailu by měl vypadat asi takto (pokud tam je ještě nějaká chyba, rád se přiučím):
[PHP]$headers="From: adresa@odesilatele.cz\nContent-Type: text/plain; charset=znakova_sada\nReturn-Path: \nMIME-Version: 1.0\n";
mail("komu@poslat.cz", "=?znakova_sada?B?".base64_encode("Text předmětu")."?=", "Text zprávy", $headers);[/PHP]
panpelisek (43)|19.2.2008 21:46
[QUOTE=a8nr;92403]Na trvalo jednou provždy (do databáze nebo souboru), nebo jenom pro dané sezení (třeba do skrytého prvku formuláře nebo pomocí session).
$headers);[/PHP][/QUOTE]

Díky za radu, to mě taky napadlo že databází nebo souborem by to šlo, ale včera sem to eště neuměl, dnes už umím trochu aspoň ten soubor a databáze se určitě brzy naučím a s nima to bude lepší. A co myslíš tím "pro dané sezení"? mohl by si mi prosím napsat příklad? z toho bych to asi lépe pochopil.
a8nr (176)|19.2.2008 22:29
[QUOTE=panpelisek;92415]A co myslíš tím "pro dané sezení"? mohl by si mi prosím napsat příklad? z toho bych to asi lépe pochopil.[/QUOTE]

Asi bych to popsal jako jednu návštěvu serveru uživatelem.