Hallo,

Beetje lastige vraag misschien, maar ik hoop er toch met jullie uit te komen.
Ik heb een site. er staat een contact formulier op en een nieuwsbrief aanvraag. Nu gaat het om het nieuwsbrief formulier.

Als je een veld bent vergeten in te vullen, dan stop het met het comando exit en wordt de footer.php bijvoorbeeld ook niet meer geladen. Nu wil ik dat hij dat wel doet. Hoe moet ik dit doen?

Als ik inclusief footer.php doe dan doet hij hem verkeerd afbeelden omdat het rechts in een tabel staat.

Nog nog een puntje. Als je exit doet stopt hij een eventuweel extra rij onder je nieuwsbrief ook. Die weergeeft hij ook niet meer.

Hier komt het stukje waar het om gaat:

 
<?php
$ip = $_POST['ip']; 
$httpref = $_POST['httpref']; 
$httpagent = $_POST['httpagent']; 
$naam = $_POST['naam']; 
$email = $_POST['email'];
$aanafmelden = $_POST['aanafmelden'];

if(!$email == "" && (!strstr($email,"@") || !strstr($email,"."))) {
echo "U heeft een niet geldig e-mail aders ingevuld. <br> A.u.b. probeer opnieuw. <br><br>(Druk op Backspace om terug te gaan)\n"; 
}

if(empty($naam) || empty($email) || empty($aanafmelden)) {
echo "U heeft niet alle velden ingevuld. <br> A.u.b. probeer opnieuw. ";
break;
}

$attn = $attn ; 
$subject = "$aanafmelden voor de Aerogym nieuwsbrief"; 
$message = "$naam heeft zich $aanafmelden voor die Aerogym nieuwsbrief. \n
E-mail: $email";

mail("****@****.nl", $subject, $message, "From: $email");

?>

                <p>Bedankt <?php echo $naam ?> voor het <?php echo $aanafmelden ?> voor de Aerogym nieuwsbrief.</p>
              </div>
              </div>              </td>
            </tr>
            <tr>
              <td valign="top">
              <div id="container-contact">
						
						  <div id="contact-spacing">
              <h1>Nieuwsbrief archief</h1>
              <p>Bekijk hier de vorige nieuwsbrieven:</p>
              <p><a href="nieuwsbrieven/nieuwsbriefdec2009.pdf" target="_blank">Nieuwsbrief december 2009</a></p>
              </div>
              </div>
              </td>
            </tr>
          </table>
 


Wanneer de exit geactieveerd wort haat hij dus de tekst en alles wat er onder nog komt weg....

Er hoort nog een contact.php bij. Die vraagt namelijk naar deze. en daar gaat he dus mis. Duss.

Kun je me helpen?
Plllzzz!!
Dat kan dus niet. Want dan stuur hij een lege e-mail met niks er in naar de geadresseerde...
Dat kan dus niet. Want dan stuur hij een lege e-mail met niks er in naar de geadresseerde...
Dus de exit in een if-stuk veranderen.
Verder graag code tags om je script heen zetten dus eindigen met [/code] en beginnen met datzelfde zonder /
hoe doe je dan in een if stuk veranderen?
Mijn manier om iets met een layout te doen, is om het in een functie te zetten (vaak een boven en onder gedeelte om de inhoud heen) die ik dan aanroep.

Mischien is dit iets voor jouwn geval:

<?php
$ip = $_POST['ip']; 
$httpref = $_POST['httpref']; 
$httpagent = $_POST['httpagent']; 
$naam = $_POST['naam']; 
$email = $_POST['email'];
$aanafmelden = $_POST['aanafmelden'];

function footer(){ ?>
   </div></div></td></tr>
   <tr><td valign="top">
   <div id="container-contact"><div id="contact-spacing">
   <h1>Nieuwsbrief archief</h1>
   <p>Bekijk hier de vorige nieuwsbrieven:</p>
   <p><a href="nieuwsbrieven/nieuwsbriefdec2009.pdf" target="_blank">Nieuwsbrief december 2009</a></p>
   </div></div>
   </td></tr></table><?php
};

if(!$email == "" && (!strstr($email,"@") || !strstr($email,"."))) {
echo "U heeft een niet geldig e-mail aders ingevuld. <br> A.u.b. probeer opnieuw. <br><br>(Druk op Backspace om terug te gaan)\n";
footer();
exit;
}

if(empty($naam) || empty($email) || empty($aanafmelden)) {
echo "U heeft niet alle velden ingevuld. <br> A.u.b. probeer opnieuw. ";
footer();
exit;
}

$attn = $attn ; 
$subject = "$aanafmelden voor de Aerogym nieuwsbrief"; 
$message = "$naam heeft zich $aanafmelden voor die Aerogym nieuwsbrief. \n
E-mail: $email";

mail("[email protected]", $subject, $message, "From: $email");

?><p>Bedankt <?php echo $naam ?> voor het <?php echo $aanafmelden ?> voor de Aerogym nieuwsbrief.</p>

<?php footer(); ?>


-edit- Je kunt dit (in dit geval) natuurlijk ook in een $variable zetten en die echoën op de plekken waar het moet, zoals ik met de functie heb gedaan.
Hoi allemaal,

Bedankt voor jullie reacties. Ik heb er het volgnede er van gemaakt:
             <tr>
              <td valign="top">
              						<div id="container-contact">
						
						  <div id="contact-spacing">

              <h1>Nieuwsbrief</h1>

<?php
$ip = $_POST['ip']; 
$httpref = $_POST['httpref']; 
$httpagent = $_POST['httpagent']; 
$naam = $_POST['naam']; 
$email = $_POST['email'];
$aanafmelden = $_POST['aanafmelden'];

if(!$email == "" && (!strstr($email,"@") || !strstr($email,"."))) {
echo "U heeft een niet geldig e-mail aders ingevuld. <br> A.u.b. probeer opnieuw. <br><br>(Druk op Backspace om terug te gaan)\n"; 
footer();
exit;
}

if(empty($naam) || empty($email) || empty($aanafmelden)) {
echo "U heeft niet alle velden ingevuld. <br> A.u.b. probeer opnieuw. ";
footer();
exit;
}

$attn = $attn ; 
$subject = "$aanafmelden voor de Aerogym nieuwsbrief"; 
$message = "$naam heeft zich $aanafmelden voor die Aerogym nieuwsbrief. \n
E-mail: $email";

mail("****@****.nl", $subject, $message, "From: $email"); 
?>

			Bedankt <?php echo $naam ?> voor het <?php echo $aanafmelden ?> van de Aerogym nieuwsbrief.
            
              </div>
              </div>
              </td>
            </tr>
            
			<?php footer(); ?>
            <?php function footer(){?>
            
            <tr>
              <td valign="top">
              <div id="container-contact">
						
						  <div id="contact-spacing">
              <h1>Nieuwsbrief archief</h1>
              <p>Bekijk hier de vorige nieuwsbrieven:</p>
              <p><a href="nieuwsbrieven/nieuwsbriefdec2009.pdf" target="_blank">Nieuwsbrief december 2009</a></p>
              </div>
              </div>
              </td>
            </tr>
          </table>
          </div>
            
            
            
        <?php include ('inc/footer.php'); ?>   
         
        
        </div>
        

	</div>
    
    

    <div id="container-site-footer">
    
    </div>   
<?php }; ?>
</body>
</html> 


Het werkt super... na wat gepuzel. Toch nog op of aanmerkingen hier op?
Dingen die bij meer browsers werke, wat sneller is... enz?

Alvast bedankt!

Reageren