Autor | Zpráva | ||
---|---|---|---|
sea-cob Profil * |
#1 · Zasláno: 5. 3. 2005, 12:25:11
Mám problém s formulářem - jsem si jistá ze delam nejakou trivialni chybu, ale jakozto zacatecnik nejsem schopna ji odhalit. Zdanlive je vsechno v poradku a funguje to...jediny hacek je v tom, ze se to proste neodesle. Predem diky za radu
<html> <title>Dotaznik</title> <head> <script type="text/JavaScript"> function overeni() {if(document.formular.pohlavi.value=="nic") {alert("nevyplnili jste údaj o pohlaví"); return false; document.formular.pohlavi.focus(); }else{alert("děkuji za vyplnění formuláře"); return true;} } </script> </head> <body> <form name="formular" action="mailto:nekdo@neco.cz" method="post" onSubmit="return overeni()"> <tr> <td>otázka:<br></td><td>souhlasím<input type="radio" name="otazka" value="souhlasim"> <br>asi ano<input type="radio" name="otazka" value="asi ano"> <br>asi ne<input type="radio" name="otazka" value="asi ne"> </td> <td><br><select name="pohlavi" > <option value="nic"></option> <option value="muz">muž</option> <option value="zena">žena</option> </td> <br><br><input type="submit" value="odeslat"> <input type="reset" value="vymazat"> </form> </body> </html> |
||
Marty Profil |
#2 · Zasláno: 5. 3. 2005, 12:34:53
Toto fungovat nemůže, maximálně se otevře poštovní klient. Je to dělaný jen přes js a html. Pro odeslání na určený e-mail je potřeba použít nějakého skriptovacího jazyka(PHP, ASP).
|
||
sea-cob Profil * |
#3 · Zasláno: 5. 3. 2005, 14:30:28
Tak jiná možnost, ale při výběru nadávek berte prosím ohled na to, že php neumim:-)
Předělala jsem původní html a přidala jsem dokument odesli.php Mohli byste mi poradit, zda je to aspoň částečně správně, nebo se to už víc zkopat nedá? <!--stránka html--> <html> <title>Dotaznik</title> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> <script type="text/JavaScript"> function overeni() {if(document.formular.pohlavi.value=="nic") {alert("nevyplnili jste údaj o pohlaví"); return false; document.formular.pohlavi.focus(); }else{ return true;} } </script> </head> <body> <form name="formular" action="odesli.php" method="post" onSubmit="return overeni()"> <tr> <td>otázka:<br></td><td>souhlasím<input type="radio" name="otazka" value="souhlasim"> <br>asi ano<input type="radio" name="otazka" value="asi ano"> <br>asi ne<input type="radio" name="otazka" value="asi ne"> </td> <td><br><select name="pohlavi" > <option value="nic"></option> <option value="muz">muž</option> <option value="zena">žena</option> </td> <br><br><input type="submit" value="odeslat"> <input type="reset" value="vymazat"> </form> </body> </html> <!--stránka odesli.php--> <?php Mail ("nekdo@neco.cz", $pohlavi, $otazka); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> <title>odeslání e-mailu</title> </head> <body bgcolor="#FFFFFF" text="#000000"> <center><font face="Arial CE, Arial" size="5"> Váš vzkaz byl odeslán. </font></center> </body> </html> |
||
habendorf Profil |
#4 · Zasláno: 5. 3. 2005, 15:00:07
sea-cob: Já jsem zkoušel tu původní variantu a řekl bych že je funkční. Za chvíli se mi to vrátilo jako nedoručitelné (samozřejmě při té adrese) - a to znamená, že se to pokoušelo odeslat.
Hi. This is the qmail-send program at smtp.seznam.cz. I'm afraid I wasn't able to deliver your message to the following addresses. This is a permanent error; I've given up. Sorry it didn't work out. <nekdo@neco.cz>: 80.188.162.115 does not like recipient. Remote host said: 550 <nekdo@neco.cz>: Recipient address rejected: User unknown in virtual alias table Giving up on 80.188.162.115. |
||
sea-cob Profil * |
#5 · Zasláno: 5. 3. 2005, 15:08:17
no, po mě to vždycky chtělo něco přes outlook, který nepoužívám. Pak jsem někde našla, že "mailto" se opravdu vztahuje k outlooku, ale funkce mail() ho nevyžaduje...
|
||
Marty Profil |
#6 · Zasláno: 5. 3. 2005, 15:14:43
První varianta bude opravdu vždy vyžadovat poštovního klienta. To ale nemusí mít každý nastaveno.
Proto je lepší použít tu druhou variantu, která je funkční na všech serverech podporující php skripty. |
||
habendorf Profil |
#7 · Zasláno: 5. 3. 2005, 15:15:02
Myslím že mailto se nevztahuje k Outlooku, ale obecně k mailovému klientovi - čili záleží na uživateli, jakého klienta má nastaven jako primární. Nicméně bez klienta se mailto samozřejmě neobejde. Řešení jsou (minimálně) dvě:
1) napsat si vlastní serverový skript, nebo 2) využít nějakých vzdálených sluřeb, třeba http://www.freeweby.iglu.cz/mailform.php |
||
Fred Profil |
#8 · Zasláno: 5. 3. 2005, 15:37:12
K původnímu dotazu, upřesni neodešle, jestli myslíš že se nodešlou data z toho formuláře, tak to se neodešlou, protože to by jsi musel buď použít serverový script, nebo ty data předat javascriptem do subjectu. Tady se zkus inspirovat http://javascript.internet.com/forms/anywhere-mail.html tedy
action="mailto:nekdo@neco.cz?subject='+xxx+'" xxx jsou data z formuláře. BTW nemám rád když se mi otevírá mailový klient. |
||
sea_cob Profil |
#9 · Zasláno: 5. 3. 2005, 16:30:30
Tak, teď jsem to udělala přes službu mailform a dokonce se mi pošle mail, nicméně neobsahuje žádná data. Přístupný je to na: www.sea-cob.wz.cz
Už mi z toho začíná hrabat...:-) |
||
sea_cob Profil |
#10 · Zasláno: 5. 3. 2005, 16:41:51
Jinými slovy: nevíte jak mám do toho mailu dostat potřebná data (vytvořit si pro každou hodnotu odpovídající proměnnou a tu tam pak nějak začlenit??) ? Díky
|
||
Fred Profil |
#11 · Zasláno: 5. 3. 2005, 16:53:14
To záleží na tom scriptu co to do něj posíláš, co to máš prosím tě za službu mailform ?? Jestli je to to, kam to odesíláš: stav.webz.cz/mailform/odesli.php tak to se mi zrovna moc nezdá.
|
||
habendorf Profil |
#12 · Zasláno: 5. 3. 2005, 17:04:29
Fred: Stavův mailform je v pohodě. Ale třeba jsou i lepší.
|
||
sea_cob Profil |
#13 · Zasláno: 5. 3. 2005, 17:05:36
no jo, jenomže já naprosto nevim, jak jinak to udělat - můžu sem hodit znova zdroják toho formuláře, ale je to dost dlouhý, tak jsem to zpřístupnila na www.sea-cob.wz.cz
btw. vzhledově je to hodně chabý a nedodělaný, ale mě jde teď o to poslání dat... |
||
habendorf Profil |
#14 · Zasláno: 5. 3. 2005, 17:11:27
No to ani chodit nemůže. Není to určeno pro odesílání strukturovaných formulářových dat - to by sis musela nějak prvně všechny ty hodnoty vyzobat pomocí JS a spojit si je do hlavičky nebo těla zprávy.
A návratovou stránku si nedávej sea-cob/odesli.php, to pak vlastně dubluješ tím svým skriptem. |
||
sea_cob Profil |
#15 · Zasláno: 5. 3. 2005, 17:34:37
Přátelé, všem vám děkuji ze pomoc - podařilo se mi to nakonec uskutečnit pomocí funkce mail(). Vaše spolupráce byla k nezaplacení :-)
|
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0