Autor | Zpráva | ||
---|---|---|---|
kolemjdoucí Profil * |
#1 · Zasláno: 21. 11. 2014, 17:55:10
ahojte, už asi hodunu tu dumám nad tím, kde je ve skriptu chyba, a absolutně netuším, mohli byste prosím poradit? díky :)
<?php function autoUTF($s) { if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $s)) // detect UTF-8 { return $s; } elseif (preg_match('#[\x7F-\x9F\xBC]#', $s)) // detect WINDOWS-1250 { return iconv('WINDOWS-1250', 'UTF-8', $s); } else // assume ISO-8859-2 { return iconv('ISO-8859-2', 'UTF-8', $s); } } function cs_mail($to, $predmet, $zprava, $head = "") { $predmet = "=?utf-8?B?".base64_encode(autoUTF($predmet))."?="; $head .= "\nMIME-Version: 1.0\r\n"; $head .= "Content-Type: text/plain; charset=\"utf-8\"\r\n"; $head .= "Content-Transfer-Encoding: base64\r\n"; $zprava = base64_encode(autoUTF($zprava)); return mail($to, $predmet, $zprava, $head); } $jmeno = $_POST['jmeno']; $email = $_POST['email']; $telefon = $_POST['telefon']; $text = $_POST['text']; $spam = $_POST['spam']; if ($jmeno!="" and $email!="" and $telefon!="" and $text!="" and $spam!="2") { cs_mail("67953@seznam.cz", "Zpráva z webu", "$jmeno $email $telefon\n$text", "From: " . $email); echo "<p><strong>Váš e-mail byl úspěšně odeslán</strong>.</p>"; } else { echo "<p>Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje.</p>"; } ?> |
||
Taps Profil |
#2 · Zasláno: 21. 11. 2014, 17:58:37
kolemjdoucí:
a jaká chyba se ti zobrazuje? |
||
kolemjdoucí Profil * |
#3 · Zasláno: 21. 11. 2014, 18:07:19 · Upravil/a: kolemjdoucí
jen tohle..
Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje. jak tam mám nasatavit, aby se zobrazila chyba? :) tak jinak, hodil jsem tam zapnutí php chybovek a nepíše to žádnou chybu, jen, že se to nepodařilo odeslat, protože bla bla bla :) |
||
Igor Počta Profil * |
#4 · Zasláno: 21. 11. 2014, 19:54:30
Ta tvoje chyba se tam napíše tehdy, když některá hodnota z formuláře zůstane prázdná. Taková validace formuláře...
Na druhou stranu ti tam chybí i ověření, zda li se mail odeslal, ačkoliv ta funkce cs_mail ti tu hodnotu navrací. |
||
kolemjdoucí Profil * |
#5 · Zasláno: 21. 11. 2014, 20:02:00
jenže všechny údaji ve formuláři jsou zaplněny :) email se neodeslal, protože mi nepřišel na mail, nebo má mega zpoždení :-D
|
||
Davex Profil |
#6 · Zasláno: 21. 11. 2014, 20:52:27
kolemjdoucí:
„jenže všechny údaji ve formuláři jsou zaplněny“ To je možné, ale neznamená to, že se skriptu předávají údaje, které se v něm očekávají. Pokud se vypíše chyba o neodeslání, tak není logicky splněna podmínka na řádku č. 34. Zkus najít příčinu, proč není splněna. |
||
Igor Počta Profil * |
#7 · Zasláno: 21. 11. 2014, 20:54:01
Pošli ještě HTML kód toho formuláře :-) Máš tam <form action="POST" ... ?
|
||
lionel messi Profil |
#8 · Zasláno: 21. 11. 2014, 20:59:37
Igor Počta:
„Máš tam <form action="POST" ... ?“ Snáď <form method="post" .
|
||
Igor Počta Profil * |
#9 · Zasláno: 21. 11. 2014, 21:01:07
lionel messi:
Máš pravdu :-) Chybka se vloudila :-) |
||
Časová prodleva: 3 dny
|
|||
kolemjdoucí Profil * |
#10 · Zasláno: 24. 11. 2014, 17:51:20
zdravím vás, přikládám kód formuláře:
<form action="odesli.php" method="post"> <input name="jmeno" size="25" value="Vaše jméno"><br> <input name="email" size="25" value="Váš email"><br> <input name="telefon" size="25" value="Telefonní číslo"><br> <input name="spam" size="25"> <strong>= 1 + 1</strong><br> <textarea name="text" rows="6" cols="55">Zpráva</textarea><br> <input type="submit" value="Odeslat"> </form> Davex: to chápu, že ta podmínka není splněna, jenže absolutně netuším, jak to napravit, když v k´du formuláře jsou všechny proměnné správně, ve skriptu také, ale i přes to to píše, že ne vše je zaplněno ... |
||
Davex Profil |
#11 · Zasláno: 25. 11. 2014, 00:02:31
kolemjdoucí:
Pokud jsou údaje správně a podmínka není splněna, tak je chyba v podmínce. Pokud nevíš která část je špatně, tak si otestuj jednotlivé části výrazu v podmínce samostatně. |
||
Časová prodleva: 9 let
|
0