Beste,

Ik ben dringend opzoek naar iemand die voor mij tegen vergoeding een bruikbaar script kan schrijven voor een gewoon contactform (html-code op aanvraag) met de mogelijkheid om een bestand te uploaden dat mee met het form verstuurd kan worden. (geen database)
Ik heb alleen kennis van Flash & Html en het lukt me niet om iets van het internet in mijn Html form te passen.
Alvast bedankt!
Je wilt dus dat er een bestand geupload wordt naar je server? Kijk eens naar dit voorbeeld. Dit uploadscriptje kun je zelf vrij eenvoudig toepassen in je formulier.
Niet helemaal.
Het gaat over een gewoon html formulier waarin de mogelijkheid gegeven wordt om ook een bijlage mee te versturen. Deze zou dan ook mee met het form via mail verstuurd moeten worden.
Normaal gezien wordt dit form verstuurd door een algemeen script op de hostingserver.
Maar voor de upload werkt dit niet.
Ik zou nu gewoon een nieuw totaal script willen dat ook de rest van het form aankan (algemene zaken), alsook de upload.

Hieronder een voorbeeld van de html-code.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>:: test form ::</title>

</head>
<BODY bgcolor="#FFFFFF" text="#000000">

<table width="583" cellspacing="0" cellpadding="0" border="0">
<tr>
<FORM ACTION="?????" METHOD="POST" ENCTYPE="multipart/form-data">
<INPUT TYPE="hidden" NAME="recipient" value="[email protected]">
<INPUT TYPE="hidden" NAME="subject" value="test form">
<INPUT TYPE="hidden" NAME="required" value="Bedrijfsnaam">
<INPUT TYPE="hidden" NAME="missing_fields_redirect" value="http://www.mijndomein.be/map/return.html">;
<INPUT TYPE="hidden" NAME="redirect" value="http://www.mijndomein.be/map/bedankt.html">;
<td colspan="4"><br><br>
Graag ontving ik advies voor mijn <INPUT TYPE="radio" NAME="wens" VALUE="advies project" tabindex="1"> project<br><br>
</td>
</tr>
<tr>
<td>Aanvrager</td><td><select name="Aanvrager" class="form" tabindex="2"><option>Architect</option><option>Aannemer</option><option>Projectontwikkelaar</option></select></td>
<td>Bedrijfsnaam * (required)</td><td><INPUT TYPE="text" NAME="Bedrijfsnaam" SIZE="25" class="form" tabindex="3"></td>
</tr>
<tr>
<td>Heer/Mevrouw</td><td><select name="Heer/Mevrouw" class="form" tabindex="4"><option>Dhr.</option><option>Mevr.</option></select></td>
<td>Contactpersoon</td><td><INPUT TYPE="text" NAME="Contactpersoon" SIZE="25" class="form" tabindex="5"></td>
</tr>
<tr><td colspan="4"><br>
<INPUT TYPE="file" NAME="Upload" SIZE="25" class="form"> kies uw bestand<br></td>
</tr>
<tr>
<td colspan="4"><br>
Eventuele vragen:<br>
<textarea wrap=virtual name="Vraag" cols=28 rows=2 tabindex="15"></textarea></td>
</tr>

<tr>
<td colspan="4"><br><INPUT TYPE="SUBMIT" class="form" name="submit" VALUE="Verzend">&nbsp;&nbsp;&nbsp;<INPUT TYPE="RESET" class="form" name="Reset" VALUE="Delete"></td>
</tr>
</table>


</BODY>
</HTML>
Het gaat niet zozeer om het toevoegen aan je formulier, als wel om de afhandeling van je formulier als het eenmaal verstuurd is. Dat script zul je dus moeten aanpassen zodat een gepost bestand ook verwerkt wordt.

Ongeveer op dezelfde manier als in het voorbeeldje dat ik gaf, alleen moet het bestand dan als attachment bij een emailtje verstuurd worden.
Klopt.
Mijn html formulier zou correct moeten zijn.
Maar ipv. dat het afgehandeld wordt door een algemeen formscript op de hostingserver, zou ik nu een totaal nieuw (losstaand) script moeten hebben dat ook mijn andere velden verstuurd incl. de upload.
In de scriptlib zijn vast wel wat scriptjes te vinden die een formulier versturen per mail. Ik zou zeggen zoek daar eens tussen ;)
Als je zelf een beetje handig bent wil ik vanavond wel iets maken. Tenzij iemand anders daar zin in heeft :P.
Ik ken helemaal niets van php, zelfs niet hoe ik het in mijn html code moet gebruiken. Dus alle hulp is welkom!!
Ik ben hier dus ook mee bezig =P lucky you:

<?php
      $to = "" //je email...
      // 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 = "From: Someone <[email protected]>\n"; 
      $mail_header .= "X-Sender-IP: ".$_SERVER['REMOTE_ADDR']."\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"; 
      // 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($to,'-','-',$mail_header)) $sent = true; else $errors[] = "no connection to the mailserver - please try again later"; 
?>
<form name="form1" enctype="multipart/form-data" method="post" action="">
  <label>
  <input type="file" name="probe">
  </label>
</form>

Lees dit maar eens door
Hé bedankt voor je werk.
Misschien een domme vraag, maar werkt dit nu ook voor mijn andere invoervelden??

Reageren