Hallo

Ik heb een vraagje of iemand weet wat ik fout gedaan heb.
Ik heb onderstaande script en als ik alle verlden invul blijft hij mij de foutmelding ""Gelieve alle velden correct in te vullen"" geven.
Weet iemad wat ik fout gedaan heb of heeft iemand een idee waar het zich in zit.
Ik kom er zelf niet uit en na 5 uur kijken en zoeken word ik er een beetje gek van.

Hier is de code dan
[code]
<?php
//mail formulier voor bijlage
$email ='[email protected];
//geneer boundary
DEFINE('bound',md5(uniqid(time())))
//check request method


if($_SERVER['REQUEST_METHOD'] == 'POST')
if($naam= "" || $email= "" || $subject= "" || $file= "" || $bericht= "" || $tel="" || $plaats="" || $adres="" )
{
echo "<center><small><font face=\"Arial\">Gelieve alle velden correct in te vullen.<br><a href=\"javascript:history.back(-1)\">Probeer het opnieuw</a></font></small></center>";
}
elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $email))
{
echo "<center><small><font face=\"Arial\">Gelieve een geldig e-mailadres in te vullen.<br><a href=\"javascript:history.back(-1)\">Probeer het opnieuw</a></font></small></center>";
}
else
{
//if file upload send with email as mixed
if(!empty($_FILES['file']['name']))
{
//check filesize
if($_FILES['file']['size'] < 1024*1024)
{
$headers = "Van: ".$_POST['naam']." ".$_POST['subject']." ".$_POST['bericht']."".$_POST['email']." ".$_POST['tel']." ".$_POST['plaats']." ".$_POST['adres']." \r\n";
$headers .= "Reply-To: ".$_POST['from']." <".$_POST['email'].">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
//email bestaat uit meerdere bestanden dus vertel wat de scheidings teken is en dat het een multipart is
$headers .= "Content-Type: multipart/mixed; boundary=\"".bound."\"\r\n";
//we zenden een attachment mee
$headers .= "Content-Disposition: attachment\r\n";
//readfile
$fp = fopen($_FILES['file']['tmp_name'],'r');
$bestand = fread($fp,$_FILES['file']['size']);
fclose($fp);
//create body
//generenen een body. Dit is een multi part gezeik
$body.= "This is a multi-part message in MIME format.\r\n";
$body.= "\r\n";
//boundary
$body.= "--".bound."\r\n";
//content type + charater set (iso in dit geval)
$body.= "Content-Type: text/plain; charset=iso-8859-1\r\n";
//codering (7 bit)
$body.= "Content-Transfer-Encoding: 7bit\r\n";
$body.= "\r\n";
//het bericht
$body.= $_POST['bericht'] ."\r\n";
//boundary
$body.= "--".bound."\r\n";
//content type + naam bestand (database.sql)
$body .= "Content-Type: application/octet-stream; name=".$_FILES['file']['name']."\r\n";
//codering
$body .= "Content-Transfer-Encoding: base64\r\n";
//als bijlage toegevoegd
$body.= "Content-disposition: attachment\r\n";
$body .= "\n";
//de inhoud van het bestand
$body .= chunk_split(base64_encode($bestand )) . "\r\n";
mail($email,$_POST['subject'],$body,$headers);
echo 'Email (Met een bijlage) is verzonden';
}
else
{
echo 'Bestands groote is te groot';
}
}
else
{
$headers = "From: ".$_POST['from']." <".$_POST['email'].">\r\n";
$headers .= "Reply-To: ".$_POST['from']." <".$_POST['email'].">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$bericht = $_POST['bericht'];
mail($email,$_POST['subject'],$bericht,$headers);
echo 'Email (Zonder een bijlage) is verzonden';
}
}
else
{
//mail formulier je moet zelf het fomullier maken

echo "<form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"POST\" enctype=\"multipart/form-data\">";
echo "Naam: <input type='text' name='from'><br>";
echo "Adres:<input type='text' name='adres'><br>";
echo "plaats:<input type='text' name='plaats'><br>";
echo "Tellefoon:<input type='text' name='tel'><br>";
echo "Email:<input type='text' name='email'><br>";
echo "Onderwerp:<input type='text' name='subject'><br>";
echo "Bestand:<input type='file' name='file'><br>";
echo "Bericht:<textarea name='bericht'></textarea><br />";
echo "<input type=\"submit\" value=\"Verzenden\">";
}
?>
B.V.D Arjan
Hallo Santhe

Weet u mischien waar ik kan de phpcode kan testen.
Ik dacht dat er een site was waar je kon zien hoevel{ } en () enzo je in de code heb staan.
Of weet u al wat er fout is???????????


Groet,
Arjan
Arjan, gebruik als testomgeving iets als xampp, een webserver die belachelijk makkelijk is op te zetten en te gebruiken. Gebruik voor je bewerking een programma als notepad++, een editor met php highlighting (o.a), klik op een { en hij laat je zien waar en of hij ooit gesloten is. En als je wat dieper erin wilt duiken moet je even naar een php IDE googelen
Hallo Afra,

Ik gebruik zelf edit plus.
Ik test nu alles online op een domein die ik niet meer gebruik.
Ik bedoelde eigenlijk een website waar je gewoon de code inplakt en dan kan zien hoeveel { en zo erin zitten hij geef dan aan je heb 23 { en 24} dan weet weet je waar je moet zoeken. Ik weet dat er een site is maar niet meer hoe die heet


Arjan
Met notepad++ kan je gewoon laten tellen hoevaak { en } voorkomen...
Hallo

Ik ben er nog niet helemaal uit.
Ik heb deze code

<?php
// Your e-mail adress:
$mailto = "[email protected]";

# Maximum size of attachment in bytes:
$max_attach_size = 500000;


//*if (empty($_POST['form_submitted']))
 {
  ?></font><p><font color="#FFFFFF">Please fill out the form:</font></p>
<font color="#FFFFFF"><?php
 }

 if (isset($_POST["form_submitted"]))
 {
  $achtername = $_POST['achternaam'];
  $voorname = $_POST['voornaam'];
  $email = $_POST['email'];
  $subject = $_POST['subject'];
  $text = $_POST['text'];
  $tel= $_post[ 'telefoon'];
  $adres= $_post['adres'];
  $woonplaats= $_post['woonplaats'];
  $contact=$_post['contact'];
$files=$_post['probe'];
  unset($errors);
  if ($email != "" and !preg_match("/^[^@]+@.+\.\D{2,5}$/", $email)) $errors[] = "e-mail address lijkt incorrect";
  if ($text == "") $errors[] = "Geen bericht geplaatst";
  //if ($tel == "") $errors[]= "";

  if ($_FILES['probe']['size'] > $max_attach_size) $errors[] = "Bijlage is te groot(".number_format($_FILES['probe']['size']/1000,0,",","")." KB) - maximum size: ".number_format($max_attach_size/1000,0,",","")." KB";

  if (empty($errors))
   {
    $text = stripslashes($text);
    $subject = stripslashes($subject);
    if ($voornaam != "") $mail_name=$voornaam; else $mail_voornaam="Unknown";
	if ($achternaam != "") $mail_name=$achternaam; else $mail_achternaam="Unknown";
	 if ($tel != "") $mail_tel=$tel; else $mail_tel="Unknown";
	  if ($adres != "") $mail_adres=$adres; else $mail_adres="Unknown";
	   if ($woonplaats != "") $mail_woonplaats=$woonplaats; else $mail_woonplaats="Unknown";
	    if ($post != "") $mail_post=$postcode; else $mail_postcode="Unknown";
		 if ($contact != "") $mail_contact=$name; else $mail_contact="Unknown";
		  
    if ($subject != "") $mail_subject = $subject; else $mail_subject = "No subject";
    if ($email != "") $mail_email = $email; else $mail_email = "[email protected]";
    $ip = $_SERVER["REMOTE_ADDR"];

    // if attachment, MIME-Mail:
    if (isset($_FILES['probe']['name']) && trim($_FILES['probe']['name']) != "")
     {
      // read and encode file:
      $datei_content = fread(fopen($_FILES['probe']['tmp_name'],"r"),filesize($_FILES['probe']['tmp_name']));
      $datei_content = chunk_split(base64_encode($datei_content),76,"\n");
      // Boundary:
      $boundary = md5(uniqid(rand()));
      // Mail-Header:
      $mail_header = "Van: ".$mail_voornaam." \n";
	  $mail_header = "Van: ".$mail_achternaam." \n";
	  $mail_header = "Telefoonnummer: ".$mail_tel." \n";
	  $mail_header = "adres: ".$mail_adres." \n";
	  $mail_header = "Woonplaats: ".$mail_woonplaats."\n";
      $mail_header .= "X-Sender-IP: ".$ip."\n";
      $mail_header .= "MIME-Version: 1.0\n";
      $mail_header .= "Content-Type: multipart/mixed; boundary=\"".$boundary."\"\n";
      $mail_header .= "This is a multi-part message in MIME format.\n";
      // Mail-Text:
      $mail_header .= "--".$boundary;
      $mail_header .= "\nContent-Type: text/plain";
      $mail_header .= "\nContent-Transfer-Encoding: 8bit";
      $mail_header .= "\n\n".$text;
      // Attachment:
      $mail_header .= "\n--".$boundary;
      $mail_header .= "\nContent-Type: ".$_FILES['probe']['type']."; name=\"".$_FILES['probe']['name']."\"";
      $mail_header .= "\nContent-Transfer-Encoding: base64";
      $mail_header .= "\nContent-Disposition: attachment; filename=\"".$_FILES['probe']['name']."\"";
      $mail_header .= "\n\n".$datei_content;
      // End:
      $mail_header .= "\n--".$boundary."--";
      // Sende E-Mail und gebe Fehler bzw. Bestaetigung aus
      if (@mail($mailto,$mail_subject,"",$mail_header)) $sent = true; else $errors[] = "no connection to the mailserver - please try again later";
     }
    // no attachment, normal E-mail:
    else
     {
     $mail_header = "Van: ".$mail_voornaam." \n";
	  $mail_header = "Van: ".$mail_achternaam." \n";
	  $mail_header = "Telefoonnummer: ".$mail_tel." \n";
	  $mail_header = "adres: ".$mail_adres." \n";
	  $mail_header = "Woonplaats: ".$mail_woonplaats."\n";
      $mail_header .= "X-Sender-IP: $ip\n";
      $mail_header .= "Content-Type: text/plain";
      if (@mail($mailto,$mail_subject,$text,$mail_header)) $sent = true; else $errors[] = "no connection to the mailserver - please try again later";
     }

    // copy to sender:
    if (isset($sent) && isset($email) && $email != "" && isset($_POST['copy']))
     {
      if (isset($_FILES['probe']['name']) && trim($_FILES['probe']['name']) != "") $copy_mail_text = "Copy of the e-mail:\n\n".$text."\n\nAttachment: ".$_FILES['probe']['name']; else $copy_mail_text = "Copy of the e-mail:\n\n".$text;
      $header= "From: ".$mailto."\n";
      $header .= "X-Sender-IP: ".$ip."\n";
      $header .= "Content-Type: text/plain";
      @mail($email, $mail_subject, $copy_mail_text, $header);
     }
   }
 }

if (empty($sent))
 {
  if(isset($errors))
   {
    ?></font><p class="caution"><font color="#FFFFFF">Error:</font></p><ul>
    <font color="#FFFFFF"><?php foreach($errors as $f) { ?></font><li>
    <font color="#FFFFFF"><?php echo $f; ?></li><?php } ?></font></ul>
<font color="#FFFFFF"><br /><?php
   }

  ?>
 </font><form method="post" action="<?php echo basename($_SERVER["PHP_SELF"]); ?>" enctype="multipart/form-data"><div>
  <p style="margin-bottom: -4px"><span class="style2"><font face="Verdana" size="2">
    Voornaam</font></span><font face="Verdana" size="2"><span class="style2">:</span><br />
    </font>
    <font color="#FFFFFF">
    <input name="voornaam" value="<?php if (isset($voornaam)) echo htmlentities(stripslashes($voorname)); else echo ""; ?>" size="25" style="font-family: Verdana; " /></font>
  </p>
	<p style="margin-bottom: -4px"><span class="style2">
	<font face="Verdana" size="2">Achternaam</font></span><font face="Verdana" size="2"><span class="style2">:</span><br />
    </font>
    <font color="#FFFFFF">
    <input name="achternaam" value="<?php if (isset($achterrnaam)) echo htmlentities(stripslashes($achtername)); else echo ""; ?>" size="25" style="font-family: Verdana; " /></font>
  </p>
	<p style="margin-bottom: -4px"><font face="Verdana" size="2">
    <span class="style2">Adres:</span><br />
    </font>
    <font color="#FFFFFF">
    <input name="adres" value="<?php if (isset($adres)) echo htmlentities(stripslashes($adres)); else echo ""; ?>" size="25" style="font-family: Verdana; " /></font>
  </p>
	<p style="margin-bottom: -4px">&nbsp;<font face="Verdana" size="2"><span class="style2">Woonplaats:</span><br />
    </font>
    <font color="#FFFFFF">
    <input name="woonplaats" value="<?php if (isset($woonplaats)) echo htmlentities(stripslashes($woonplaats)); else echo ""; ?>" size="25" style="font-family: Verdana; " />
	</font>
  </p>
	<p style="margin-bottom: -4px"><font face="Verdana" size="2">
    <br />
    <span class="style2">E-mail:</span><br />
    </font>
    <font color="#FFFFFF">
    <input name="email" value="<?php if (isset($email)) echo htmlentities(stripslashes($email)); else echo ""; ?>" size="25" style="font-family: Verdana; " /></font></p>
	<p style="margin-bottom: -4px"><span class="style2">
	<font face="Verdana" size="2">Telefoonnummer</font></span><font face="Verdana" size="2"><span class="style2">:</span><br />
    </font>
    <font color="#FFFFFF">
    <input n</p name="Telefoon" value="<?php if (isset($tel)) echo htmlentities(stripslashes($tel)); else echo ""; ?>" size="25"></font></p>
	<p style="margin-bottom: -4px"><font face="Verdana" size="2">
    <span class="style2">Onderwerp:</span><font color="#FFFFFF"><br />
    </font>
    </font>
    <font color="#FFFFFF">
    <input name="subject" value="<?php if (isset($subject)) echo htmlentities(stripslashes($subject)); else echo ""; ?>" size="25" style="font-family: Verdana; " />
	</font>
  </p>
	<p style="margin-bottom: -4px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
	<p style="margin-bottom: -4px">Maak uw Keuze:</p>
	<p style="margin-bottom: -4px" align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <select size="1" name="select">
	<option>Offerte</option>
	<option selected>Inlichtingen</option>
	</select></p>
	<p style="margin-bottom: -4px"><font face="Verdana" size="2">
    <font color="#FFFFFF">
    <br />
    </font>
    <span class="style2">Bericht:</span><font color="#FFFFFF"><br />
    </font>
    </font>
    <font color="#FFFFFF">
    <textarea name="text" cols="25" rows="7" style="font-family: Verdana; "><?php if (isset($text)) echo htmlentities(stripslashes($text)); else echo ""; ?>
    </textarea>
<font face="Verdana" size="2">
    <br />
    </font>
    </font>
<font face="Verdana" size="2">
    <span class="style2">Bijlagen:</span><font color="#FFFFFF"><br />
    </font>
    </font>
    <font color="#FFFFFF">
    <input type="file" name="probe" value="<?php if (isset($_POST['probe'])) echo htmlentities(stripslashes($_POST['probe'])); else echo ""; ?>" size="16" style="font-family: Verdana; "/>
  </p>
  </p>
  <p><font face="Verdana"><input type="checkbox" name="copy" value="true" /></font></font><font size="2"> </font>
    <span class="style2"><font size="2">
    Kopietje naar jezelf sturen<font color="#FFFFFF">?</font></font></span><font size="2" color="#FFFFFF">
    </font>
    <font color="#FFFFFF">
    <input type="submit" name="form_submitted" value="OK - Verzenden" style="font-family: Verdana; " /><font face="Verdana" size="2">
    </font> </p>
  </div>
</form>
<font color="#000000"><?php
 }
else
 {
  if (empty($email)) { ?></font></font><font color="#000000"> </font>
<p><font color="#000000"><b><font face="Verdana" size="1">Bedankt</font></b><font size="1" face="Verdana"><b>!</b><br />
Je mail is verzonden alleen kan ik je niet terug mailen omdat je geen e-mail 
adres hebt ingevuld! </font></font></p>
<font face="Verdana" size="1"><font color="#000000"><?php }
  else { ?></font></font><font color="#000000"> </font>
<p><font color="#000000"><b><font face="Verdana" size="1">Bedankt</font></b><font size="1" face="Verdana"><b>!</b><br />
Je bericht is met succes verzonden ik zal zo spoedig mogelijk terug mailen. </font>
</font></p>
<font face="Verdana" size="1" color="#FFFFFF"><?php }
 }


?>


Hij verzend alleen de helft maar.
Als ik het formulier invul geeft hij alleen het onderwerp en het bericht weer. De bijlage doet het ook.
Nu krijg ik de foutmeldingingen


Notice: Undefined variable: _post in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 29

Notice: Undefined variable: _post in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 30

Notice: Undefined variable: _post in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 31

Notice: Undefined variable: _post in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 32

Notice: Undefined variable: _post in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 33

Notice: Undefined variable: post in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 50

Notice: Undefined variable: mail_voornaam in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 94

Notice: Undefined variable: mail_achternaam in /storage/mijndomein/users/000811/public/sites/www.sonny-fashion.nl/HTML/test2.php on line 95


Ik zie door de bomen het bos niet meer kan iemand mij helpen A.U.B.

B.V.D

Arjan
$_POST is niet $_post.
Ik weet niet hoever je nu al bent maar dit kan toch ook niet (van je eerste script):
<?php
if($naam= "" || $email= "" || $subject= "" || $file= "" || $bericht= "" || $tel="" || $plaats="" || $adres="" )
?>

Moet volgens mij dit zijn:
<?php
if($naam== "" || $email== "" || $subject=="" || $file== "" || $bericht== "" || $tel=="" || $plaats=="" || $adres=="" )
?>

EDIT: @SanThe, klopt, aangepast.
Correct Kitty. Wel ook de =jes bij $subject= ="" tegen elkaar. ;-)
Hallo

Ik heb nog 1 vraagje .
Alles wat ik wil verzenden zit hier in:


    $text = stripslashes($text);
    $subject = stripslashes($subject);
    if ($voornaam != "") $mail_name=$voornaam; else $mail_voornaam="Unknown";
    if ($achternaam != "") $mail_name=$achternaam; else $mail_achternaam="Unknown";
     if ($tel != "") $mail_tel=$tel; else $mail_tel="Unknown";
      if ($adres != "") $mail_adres=$adres; else $mail_adres="Unknown";
       if ($woonplaats != "") $mail_woonplaats=$woonplaats; else $mail_woonplaats="Unknown";
                 


Waar ik zorg dat het verzend staat hier:

if (@mail($mailto,$mail_subject,"",$mail_header)) $sent = true; else $errors[] = "no connection to the mailserver - please try again later";


Maar hij vezend niet alles
Is dat omdat ik alles de zelfde naam geef "$mail_header"zoals hier:


$mail_header = "Van: ".$mail_voornaam." \n";
      $mail_header = "Van: ".$mail_achternaam." \n";
      $mail_header = "Telefoonnummer: ".$mail_tel." \n";
      $mail_header = "adres: ".$mail_adres." \n";
      $mail_header = "Woonplaats: ".$mail_woonplaats."\n";
      $mail_header .= "X-Sender-IP: $ip\n";
      $mail_header .= "Content-Type: text/plain";
      if (@mail($mailto,$mail_subject,$text,$mail_header)) $sent = true; else $errors[] = "no connection to the mailserver - please try again later";
     }


Arjan

Reageren