Űrlap küldés után nem a sikeres.html jelenik meg
Nekem sikerült megcsinálnom az egész űrlap elküldést (hírlevél-feliratkozást csináltam), meg is érkezik a mail, de amikor a (nálam Feliratkozás) gombra kattintok ez jelenik meg:
E-mail_címe:=asdqweasd E-mail_címe:=true
És nem a sikeres.html ami elvileg ehelyett jelenik meg.
A kódok itt vannak:
Kezdő html:eddig sztem jó is, most jön a php:ennyi. A sikeres.html-t nem teszem be ide, a szöveg csak egy köszönetnyilvánítás, semmi kód nincs benne.
Válaszokat várom!
■ E-mail_címe:=asdqweasd E-mail_címe:=true
És nem a sikeres.html ami elvileg ehelyett jelenik meg.
A kódok itt vannak:
Kezdő html:
<html>
<body>
<form action="form.php" method="post">
E-mail címe:<input type="text"name="E-mail címe:"></input><br>
<input type="submit"value="Feliratkozás">
<input type="hidden" name="send" value="true">
</form>
</body>
</html>
<?PHP
$freewebxmail = "";
$form = "email.html";
$thank = "sikeres.html";
$email = "godryc##kukac##citromail.hu";
// <--- NO USER EDITABLE PARTS BELOW --->
if(Empty($_POST['send']))
{
if(file_exists($form))
{
$fa = fopen($form, 'r');
print fread($fa, filesize($form));
fclose($fa);
}
else
{
print "A kérdőív nem található!";
}
}
else
{
foreach($_POST as $post)
{
if(!Empty($post))
{
$mail .= key($_POST) . "=" . $post . "\n";
}
}
print $mail;
if($_SERVER['SERVER_NAME'] == 'www.freeweb.hu')
{
mail($email,"Feliratkozás",$mail,"X-FW-MailID: " . $freewebxmail);
}
else
{
mail($email,"Feliratkozás",$mail);
}
if(file_exists($thank))
{
$fa = fopen($form, 'r');
print fread($fa, filesize($thank));
fclose($fa);
}
else
{
print "";
}
}
Válaszokat várom!
nem valid
1. lezáratlan tag-ek és inputok (xhtml szabvány szerint írd meg, és akkor is így: <input ... /> a textarea kivételével)
2. a name mező egybeírva a type-al az első inputnál,
3. a value mező egybeírva a type-al a gombnál, a name mezőben ékezetes és speciális karakterek (ennek rövid, egyszerű, angol abc-s neve legyen, hiszen egy tömb-index lesz a php-ban)
Az elküldött változókat mindenképpen kiírja, hiszen ez szerepel a kódban (print $mail;). Ha utána nem írja ki a sikeres.html-t akkor valahol rosszul adtad meg a nevét, vagy nincs ilyen nevű a szerveren. Figyelj oda a kis-nagybetűkre (lehetőleg mindent írj kicsivel), a pontos kiterjesztésre, stb.
még most se jó
Ellenőriztem minden fájlnevet, elvileg minden passzol, nem tudom mi hiányzik, akinek van tippe, az szóljon!
pölö
a 12, 13, 14. sor helyett (illetve 42, 43, 44) elég egy
print file_get_contents($form); is, ugyanazt csinálja.
a 30. sorban a print miatt írja ki a form tartalmát, felesleges
a 31. sorban lévő server ellenőrzésnél elakadhat, nézz rá, hogy valóban azt adja-e vissza a _SERVER[SERVER_NAME]
a mail függvénynél lehet még gond ha nem jól raktad össze. a script maga működőképesnek tűnik. esetleg echo-zd ki, hol akad el, ha nagyon nem megy
nah végre kicsit előrébb vagyok
A végén a kiírásnál mostmár csak egy fehér lap jelenik meg (tk. a form.php) semmi más. Nekem az is jó lenne, ha mondanátok egy php átirányító kódot, amit esetleg berakhatnék az aljába.
Már próbálgattam, de a php fájlnak nem tetszik-hibaüzeneteket ír ki.
Ha vmi tippet kaphatnék...
Előre is kösz!
juhéé
sikerült megcsinálnom!
Köszi mindkettőtöknek!