Autor | Zpráva | ||
---|---|---|---|
Jockie Profil |
#1 · Zasláno: 27. 2. 2005, 14:17:00
mám problém s mail formulářem. Nechápu jak je to možný, po odeslání ze stránky to dorazí na správný email, ale nevypisuje se jméno (email) odesilatele a neprijde prvni řádek v <textarea> tedy pokud se neodřádkuje neprijde žádný text :(
takhle to mám udelane:
--------------------
|
||
Oswald Profil |
#2 · Zasláno: 27. 2. 2005, 14:31:01
Nebude to ono již klasické register_globals=off?
|
||
Jockie Profil |
#3 · Zasláno: 27. 2. 2005, 14:41:10
Oswald: vysvetli mi to prosim trochu. Ja se v php moc neorientuju ...
|
||
Jockie Profil |
#4 · Zasláno: 27. 2. 2005, 16:23:34
mohl by mi nekdo poradit co s tim ?? zacinam z toho bejt trochu spatnej :) PHPcku zatim moc nerozumim a nevim kde je chyba a potreboval bych ji odstranit ...
|
||
juneau Profil |
#5 · Zasláno: 27. 2. 2005, 20:10:48
misto promenne $zapsat zkus pouzit $_POST["zapsat"]; ... pokud je to tedy promena predana formularem. pokud by jsi ji predaval pres url (script.php?promena=neco), tak by to bylo $_GET["zapsat"]...
samozrejme nejde jen o $zapsat, ale o vsechny ostatni |
||
Oswald Profil |
#6 · Zasláno: 27. 2. 2005, 20:29:40
Je to hlavně kvůli bezpečnosti, aby nebylo tak snadné např. upravovat parametry v URL a ovlivňovat tak aplikaci. Proto se k proměným získaných pres post, get, cookies, session apod. přistupuje pomocí těchto superglobálních polí a nejsou přímo vyditelné. Automatickou registraci můžeš zapnout v php.ini ale není to moc dobrý nápad.
http://www.php.net/manual/cs/language.variables.predefined.php |
||
Anonymní Profil * |
#7 · Zasláno: 27. 2. 2005, 21:25:01
juneau: mohl bys prosim napsat jak by ten zapis vypadal ?? ja si nejsem moc jistej v kramflecich ..
|
||
juneau Profil |
#8 · Zasláno: 27. 2. 2005, 22:12:06
podle vseho takhle:
<?php if ($_POST["zapsat"]): if ($_POST["email"]) $prispevek .= ' E-mail odesílatele: ' . htmlspecialchars($_POST["email"]) . '.'; $prispevek .= ' A napsal ti: ' . htmlspecialchars($_POST["zprava"]); if (mail("jaromir.krpalek@quick.cz", "www.digirain.wz.cz", $prispevek)): endif; endif; ?> |
||
Jockie Profil |
#9 · Zasláno: 27. 2. 2005, 22:18:54
juneau: dik zkusim to ...
|
||
Jockie Profil |
#10 · Zasláno: 27. 2. 2005, 22:22:11
juneau: porad to dela stejnou chybu ... nevypisuje jmeno odesilatele a prvni radek textu ... :(
|
||
juneau Profil |
#11 · Zasláno: 28. 2. 2005, 00:49:44
a neni nejaka blbost v tom javascriptu?
vloz na zacatek toho php: error_reporting(15); ... vypise to chyby. pokud se nejake vyskytnou... coz asi jo :) |
||
Jockie Profil |
#12 · Zasláno: 28. 2. 2005, 11:20:32
juneau: tak to neco vypsalo ...
Notice: Undefined index: zapsat in /3w/wz.cz/t/tests-server/new/HTML/kontakt/kontakt.php on line 3 |
||
Jockie Profil |
#13 · Zasláno: 28. 2. 2005, 11:23:08
juneau:
a todle se napsalo do řádku kam se má napsat mail ... <font color=ff0000><br /><b>Notice</b>: Undefined variable: email in <b>/3w/wz.cz/t/tests-server/new/HTML/kontakt/kontakt.php</b> on line <b>58</b><br /></font> |
||
juneau Profil |
#14 · Zasláno: 28. 2. 2005, 13:34:29
ta prvni chybovka znamena, ze do scriptu nebyla poslana zadna POST hodnota s indexem "zapsat" ... tedy jako by ve formulari chybel <input/textarea ... name="zapsat"> nebo byla tato kolonka odeslana prazdna. vazne divny... nemelo by to mit vliv, ale zkus tem formularovym prvkum zadat jeste atribut id se stejnou hodnotou jako name.
|
||
Jockie Profil |
#15 · Zasláno: 28. 2. 2005, 14:55:30
juneau: tak ani pridani atributu id se stejnou hodnotou nepomohlo ... je to opravdu divny :( nemáš nejaky napad jak jinak by to šlo udělat ?? třeba to celý předělat ??
|
||
mackopu Profil |
#16 · Zasláno: 28. 2. 2005, 15:02:48 · Upravil/a: mackopu
Tak to ještě dopucuj na:
<?php Mám pocit, že ses tam trochu zamotal v endifech. Proměnnou $prispevek je nejprve třeba inicializovat jako prázdnou, pokud ji pak chceš spojovat pomocí .= A to isset tam bývá taky důležité. Zkus to. |
||
Jockie Profil |
#17 · Zasláno: 28. 2. 2005, 15:37:19
mackopu: děkuji zkusím to ... já php neumím a zatim neovládam tak vlastně nevim co je v tom zápisu a tudíš sem bezbranej proti jakýkoli chybě v tom :(
|
||
Jockie Profil |
#18 · Zasláno: 28. 2. 2005, 15:41:55
mackopu tak ted uz je to opravdu zoufaly :( zkopiroval jsem ten tvuj zapis a stejnak mi to nechodi ... porad stejny problem nevypisuje se mail a prvni radek v textarea
|
||
mackopu Profil |
#19 · Zasláno: 28. 2. 2005, 16:03:57
Jak budu mít rochu času, otestuju to u sebe a ještě se ti ozvu - nezoufej ;-)
|
||
Jockie Profil |
#20 · Zasláno: 28. 2. 2005, 16:10:56
mackopu tak nezoufu a doufam :)
|
||
mackopu Profil |
#21 · Zasláno: 28. 2. 2005, 16:25:50 · Upravil/a: mackopu
Tak za tohle dávám ruku do ohně:
<?phpTestoval jsem to na třech serverech a chodí to jako hodinky. |
||
Anonymní Profil * |
#22 · Zasláno: 28. 2. 2005, 16:40:10
mackopu supeeeer dik ti moc nevim co s tim bylo asi patrne byla chyba v tom javascriptu kontrolujici jestli sou pole plna nebo ne ...
jeste se zeptam jestli je možné nák dát do kupy hlavičku příchozí zprávy ?? mám kódování UTF-8 a mrší to náky znaky .. |
||
Jockie Profil |
#23 · Zasláno: 28. 2. 2005, 16:42:32
mackopu a nebo vlastne to neni problem ... zprava to je pro me takže to nikomu nebude rvat žíly a kdyz tam nedam diakritiku tak to bude v pohode ;-)
|
||
Jockie Profil |
#24 · Zasláno: 28. 2. 2005, 16:45:17
no tak ani ne myslel sem že to mrší jenom hlavičku ale ono to mrší celej dokument ...
|
||
Jockie Profil |
#25 · Zasláno: 28. 2. 2005, 16:47:23
mackopu nasel jsem tady uz stejny problem ...
mail ($_POST["email"], $predmet , $telo,"From: automat@server\r\nContent-Type: text/plain; charset=utf-8") po přidání tohodle by to dělat nemělo ... a ja bych se jenom zeptal kam to pridat ?? |
||
mackopu Profil |
#26 · Zasláno: 28. 2. 2005, 17:09:38 · Upravil/a: mackopu
V tom případě takto:
Nejdřív funkce kontroly - <script language="JavaScript">Tohle přidej do tagu formuláře- onsubmit="return kontrola(this)"A nakonec vložení hlavičky emailu- <?phpA pokud tam dáš místo Content-Type: text/plain Content-Type: text/html, tak to bude umět přečíst i zprávu napsanou v html kódu :-) |
||
Jockie Profil |
#27 · Zasláno: 28. 2. 2005, 17:15:52
mackopu je mozny ze nejprve mi to nechodilo protoze jsem mel dan php skript jeste pred deklaraci a javascript byl jako externi a odkaz na nej byl v hlavicce ??
|
||
mackopu Profil |
#28 · Zasláno: 28. 2. 2005, 17:27:08
Ten javascript by na to neměl mít vůbec vliv. Načítá se totiž do klientského počítače a tam čeká až ho bude zapotřebí, aniž by rozhodoval o tom, jestli se nějaká proměnná odešle PHP skriptu. Jen tě prostě nepustí dál, když nesplníš jeho podmínky. Abych ti na tvou otázku ale mohl odpovědět opravdu korektně, musel bych kód té původní stránky vidět CELÝ (tedy jestli to vůbec ještě stojí za to...)
|
||
Jockie Profil |
#29 · Zasláno: 28. 2. 2005, 17:29:32
mackopu dík za vysvětlení ... ukázal bych ale už ten kod nemam prepsal jsem ho
mockrat dik !!! |
||
mackopu Profil |
#30 · Zasláno: 28. 2. 2005, 17:43:47
Dobrou ;-)
|
||
Časová prodleva: 20 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0