ugrás a tartalomhoz

Űrlap küldés után nem a sikeres.html jelenik meg

poirot · 2008. Jún. 2. (H), 11.08
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:
  1. <html>  
  2. <body>  
  3. <form action="form.php" method="post">  
  4. E-mail címe:<input type="text"name="E-mail címe:"></input><br>  
  5. <input type="submit"value="Feliratkozás">  
  6. <input type="hidden" name="send" value="true">  
  7. </form>  
  8.   
  9. </body>  
  10. </html>  
eddig sztem jó is, most jön a php:
  1. <?PHP  
  2. $freewebxmail = "";  
  3. $form = "email.html";  
  4. $thank = "sikeres.html";  
  5. $email = "godryc##kukac##citromail.hu";  
  6.   
  7. // <--- NO USER EDITABLE PARTS BELOW --->  
  8. if(Empty($_POST['send']))  
  9.     {  
  10.     if(file_exists($form))  
  11.         {  
  12.         $fa = fopen($form'r');  
  13.         print fread($fafilesize($form));  
  14.         fclose($fa);  
  15.         }  
  16.     else  
  17.         {  
  18.         print "A kérdőív nem található!";  
  19.         }  
  20.     }  
  21. else  
  22.     {  
  23.     foreach($_POST as $post)  
  24.         {  
  25.         if(!Empty($post))  
  26.             {  
  27.             $mail .= key($_POST) . "=" . $post . "\n";  
  28.             }  
  29.         }  
  30.     print $mail;  
  31.     if($_SERVER['SERVER_NAME'] == 'www.freeweb.hu')  
  32.         {  
  33.         mail($email,"Feliratkozás",$mail,"X-FW-MailID: " . $freewebxmail);  
  34.         }  
  35.     else  
  36.         {  
  37.         mail($email,"Feliratkozás",$mail);  
  38.         }  
  39.   
  40.     if(file_exists($thank))  
  41.         {  
  42.         $fa = fopen($form'r');  
  43.         print fread($fafilesize($thank));  
  44.         fclose($fa);  
  45.         }  
  46.     else  
  47.         {  
  48.         print "";  
  49.         }     
  50.     }  
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!
 
1

nem valid

Drawain · 2008. Jún. 2. (H), 13.35
Nem ástam bele túl mélyen magam a kódba, de a kezdő html-ben már jónéhány hiba van:
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.
2

még most se jó

poirot · 2008. Jún. 2. (H), 14.35
Még mindig nem jó :(
Ellenőriztem minden fájlnevet, elvileg minden passzol, nem tudom mi hiányzik, akinek van tippe, az szóljon!
3

pölö

cSuwwi · 2008. Jún. 2. (H), 15.13
a form html részében az inputoknak normális name értéket adj, pl. 'email', ne ékezettel és space-el telenyomott sallangot

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
4

nah végre kicsit előrébb vagyok

poirot · 2008. Jún. 2. (H), 21.54
Na most minden jó, sikerült megcsinálnom úgy, ahogy mondtad. Már csak egy hiba van:
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!
5

juhéé

poirot · 2008. Jún. 2. (H), 22.07
megvan!
sikerült megcsinálnom!
Köszi mindkettőtöknek!