Aankruisvakjes formulier doorsturen naar php

Status
Niet open voor verdere reacties.

ice-twirl

Gebruiker
Lid geworden
28 dec 2002
Berichten
93
Hallo mensen,

Ik ben bezig met een formuliertje op te zetten dat doorgemailt wordt naar mijn emailadres.
Hierbij gebruik ik verschillende invoermogelijkheden zoals text, radio en ook checkbox

Wanneer ik deze doorstuur naar mijn mail krijg ik alleen het laatst aangevinkte vakje te zien als waarde. Dit probleem is echter op te lossen door [] in de naam te zetten dus: name="naam[]". Mooi dacht ik. Nu krijg ik echter een mailtje met:

- Naam: Array (Ipv de verschillende waarde).

Ik heb echter niet bijster veel verstand van php en arrays heb ik nooit echt goed begrepen.

Kan iemand me helpen hoe ik de aankruisvakjes verder kan verwerken in mijn php code?

Alvast heel erg bedankt voor de moeite !

Groeten !
 
Kun je het volledige script even posten, dat kijkt vind ik iets makkelijker.
 
PHP:
<?php 

extract($_POST);

// Als er op submit word gedrukt. 
if($submit) 
{ 

  // Controleren of er al een cookie gezet is of niet. 
  if(!isset($_COOKIE[post])) 
  { 

  // Velden controleren op leegte. 
  if($web_pages == "" || $web_copyright == "" || $des_webtemplate == "" || $des_advbanner == "" || $des_overige == "" || $scripts == "" || $promotie == "" || $service == "" || $pers_naam == "" || $pers_email == "" || $pers_telnr == "") 
  { 
     echo "<center><small><font color=\"#6a693c\" face=\"Arial\">Een of meerdere velden zijn niet goed ingevuld.<br><a href=\"javascript:history.back(-1)\">Probeer het opnieuw</a></font></small></center>"; 
  } 
  else 
  { 
     // Formulier versturen. 
     $jouwemailadres = "jeffrey_menkehorst@hotmail.com"; 
     $datum = date("d-m-Y H:i"); 
     $ip = $_SERVER[REMOTE_ADDR]; 

     $ontvanger = $jouwemailadres; 
     $onderwerp = "Offerte gemaakt op A-style Webdesign"; 
     $verzender = "From: $pers_naam"; 
     $inhoud = "Beste webmaster,\n\nOp $datum heeft $pers_naam via je website het offerteformulier ingevuld :\n\nDe Website\n- Aantal pagina's: $web_pages\n- Copyright: $web_copyright\n\nDesigns:\n- Website Template: $des_webtemplate\n- Advertentiebanner: $des_advbanner\n- Overige Designs: $des_overige\n\nScripts:\n- Gekozen scripts: $scripts\n\nPromotie\n- Gekozen promotie: $promotie\n\nService\n- Gekozen service: $service\n\nPersoonlijke Gegevens:\n- Naam: $pers_naam\n- Email: $pers_email\n- Telnr: $pers_telnr\n- Bedrijfsnaam: $pers_bedrijfsnaam\n- KVK nummer: $pers_kvk\n- Adres: $pers_adres\n- Postcode: $pers_postcode\n- Woonplaats: $pers_plaats\n- Huidige website: $pers_website\n\nVerdere Opmerkingen:\n $pers_opmerkingen\n\nHoe heeft hij ons gevonden:\n $pers_hoegevonden\n\n---------------------------------------------------------------------\nDe IP van $pers_naam = $ip"; 
     mail($ontvanger, $onderwerp, $inhoud, $verzender); 

     // Cookie post zetten. 
     setcookie(post, "Het offerteformulier is succesvol verzonden", time()+300); 

     echo "<center><small><font color=\"#6a693c\" face=\"Arial\">Uw offerteformulier is succesvol verstuurd naar de webmaster.<br>U zult zo snel mogelijk een antwoord krijgen!</font></small></center>"; 
  } 

  } 
  else 
  { 
     echo "<center><small><font color=\"#6a693c\" face=\"Arial\">U heeft zojuist al een offerte opgemaakt,<br>over een aantal minuten kunt u weer een offerte maken.</font></small></center>"; 
  } 

} 
else 
{ 

// Het formulier. 
?> 
<form action="offerte.php" method="POST"> 
<table border="0" width="430" cellspacing="0" cellpadding="0"> 
  <tr> 
    <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="2"> 
	<tr>
	<td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial" size="3"><b>De Website</b></font></td>
	</tr>
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Aantal pagina's: *</font></small></td> 
        <td width="62%"><INPUT TYPE="radio" NAME="web_pages" VALUE="0 - 5"><font color="#6a693c" face="Arial" size="1">0 tot 5</font><BR><INPUT TYPE="radio" NAME="web_pages" VALUE="5 - 10"><font color="#6a693c" face="Arial" size="1">5 tot 10</font><BR><INPUT TYPE="radio" NAME="web_pages" VALUE="10 - 20"><font color="#6a693c" face="Arial" size="1">10 tot 20</font><BR><INPUT TYPE="radio" NAME="web_pages" VALUE="20 - 30"><font color="#6a693c" face="Arial" size="1">20 tot 30</font><BR><INPUT TYPE="radio" NAME="web_pages" VALUE="30 - 50"><font color="#6a693c" face="Arial" size="1">30 tot 50</font><BR><INPUT TYPE="radio" NAME="web_pages" VALUE="Meer dan 50"><font color="#6a693c" face="Arial" size="1">Meer dan 50</font><br><br></td> 
      </tr> 
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Copyright: *</font></small></td> 
        <td width="62%"><INPUT TYPE="checkbox" NAME="web_copyright" VALUE="Geen link naar A-style Webdesign"><font color="#6a693c" face="Arial" size="1">Geen link naar A-style Webdesign<br><INPUT TYPE="checkbox" NAME="web_copyright" VALUE="Wel Link naar A-style Webdesign"><font color="#6a693c" face="Arial" size="1">Wel een link naar A-style Webdesign</td> 
      </tr>
	<tr>
	<td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial" size="3"><b>Designs</b></font></td>
      </tr>  
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Website Template: *</font></small></td> 
        <td width="62%"><INPUT TYPE="radio" NAME="des_webtemplate" VALUE="standaard"><font color="#6a693c" face="Arial" size="1">Standaard</font><BR><INPUT TYPE="radio" NAME="des_webtemplate" VALUE="bewegend"><font color="#6a693c" face="Arial" size="1">Bewegend<BR></font><INPUT TYPE="radio" NAME="des_webtemplate" VALUE="flash"><font color="#6a693c" face="Arial" size="1">Flash (Coming Soon)<br><INPUT TYPE="radio" NAME="des_webtemplate" VALUE="geen"><font color="#6a693c" face="Arial" size="1">Geen</font><br><BR></td> 
      </tr>
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Advertentiebanner: *</font></small></td> 
        <td width="62%"><INPUT TYPE="radio" NAME="des_advbanner" VALUE="standaardgroot"><font color="#6a693c" face="Arial" size="1">Standaard Groot</font><BR><INPUT TYPE="radio" NAME="des_advbanner" VALUE="standaardmiddel"><font color="#6a693c" face="Arial" size="1">Standaard Middel</font><BR><INPUT TYPE="radio" NAME="des_advbanner" VALUE="standaardklein"><font color="#6a693c" face="Arial" size="1">Standaard Klein</font><BR><INPUT TYPE="radio" NAME="des_advbanner" VALUE="bewegendgroot"><font color="#6a693c" face="Arial" size="1">Bewegend Groot</font><BR><INPUT TYPE="radio" NAME="des_advbanner" VALUE="bewegendmiddel"><font color="#6a693c" face="Arial" size="1">Bewegend Middel</font><BR><INPUT TYPE="radio" NAME="des_advbanner" VALUE="bewegendklein"><font color="#6a693c" face="Arial" size="1">Bewegend Klein</font><BR><INPUT TYPE="radio" NAME="des_advbanner" VALUE="geen"><font color="#6a693c" face="Arial" size="1">Geen</font><br><BR></td> 
      </tr>
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Overige Design:*</font></small></td> 
        <td width="62%"><INPUT TYPE="checkbox" NAME="des_overige[]" VALUE="logo"><font color="#6a693c" face="Arial" size="1">Logo Design<br><INPUT TYPE="checkbox" NAME="des_overige[]" VALUE="poster"><font color="#6a693c" face="Arial" size="1">Poster<br><INPUT TYPE="checkbox" NAME="des_overige[]" VALUE="flyer"><font color="#6a693c" face="Arial" size="1">Flyer<br><INPUT TYPE="checkbox" NAME="des_overige[]" VALUE="Wallpapers"><font color="#6a693c" face="Arial" size="1">Destkop Achtergronden<br><INPUT TYPE="checkbox" NAME="des_overige[]" VALUE="anders"><font color="#6a693c" face="Arial" size="1">Andere Designs</td> 
      </tr>
	<tr>
	<td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial" size="3"><b>Scripts</b></font></td>
      </tr>
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Kies uw scripts: *</font></small></td> 
        <td width="62%"><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="webtemplate"><font color="#6a693c" face="Arial" size="1">Website Template Coderen<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="contact"><font color="#6a693c" face="Arial" size="1">Contactformulier<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="gastenboek"><font color="#6a693c" face="Arial" size="1">Gastenboek<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="forum"><font color="#6a693c" face="Arial" size="1">Forum<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="fotoalbum"><font color="#6a693c" face="Arial" size="1">Fotoalbum<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="kalender"><font color="#6a693c" face="Arial" size="1">Kalender<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="agenda"><font color="#6a693c" face="Arial" size="1">Agenda<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="chatbox"><font color="#6a693c" face="Arial" size="1">Chatbox<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="muziek"><font color="#6a693c" face="Arial" size="1">Muziekspeler<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="nieuwsbrief"><font color="#6a693c" face="Arial" size="1">Nieuwsbrief<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="nieuwssysteem"><font color="#6a693c" face="Arial" size="1">Nieuwssysteem<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="poll"><font color="#6a693c" face="Arial" size="1">Poll<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="quiz"><font color="#6a693c" face="Arial" size="1">Quiz<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="statistieken"><font color="#6a693c" face="Arial" size="1">Statistieken<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="offerte"><font color="#6a693c" face="Arial" size="1">Offertesysteem<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="anderescripts"><font color="#6a693c" face="Arial" size="1">Andere Scripts<br><INPUT TYPE="checkbox" NAME="scripts[]" VALUE="geen"><font color="#6a693c" face="Arial" size="1">Geen van alle scripts!<br><br></td> 
      </tr>
	<tr>
	<td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial" size="3"><b>Promotie</b></font></td>
      </tr>
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Kies uw promotie: *</font></small></td> 
        <td width="62%"><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="flyer"><font color="#6a693c" face="Arial" size="1">Flyers uitdelen<br><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="poster"><font color="#6a693c" face="Arial" size="1">Posters plakken<br><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="adv_andere"><font color="#6a693c" face="Arial" size="1">Adverteren op andere websites<br><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="adv_astylegroot"><font color="#6a693c" face="Arial" size="1">Adverteren op a-style webdesign Grote banner<br>
<INPUT TYPE="checkbox" NAME="promotie[]" VALUE="adv_astyleklein"><font color="#6a693c" face="Arial" size="1">Adverteren op a-style webdesign Kleine banner<br><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="zoekmachines"><font color="#6a693c" face="Arial" size="1">Aanmelden bij zoekmachines<br><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="anders"><font color="#6a693c" face="Arial" size="1">Andere Promotie<br><INPUT TYPE="checkbox" NAME="promotie[]" VALUE="geen"><font color="#6a693c" face="Arial" size="1">Geen promotie<br><br></td> 
      </tr>
	<tr>
	<td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial" size="3"><b>Service</b></font></td>
      </tr>
      <tr> 
        <td valign="top" width="38%"><small><font color="#6a693c" face="Arial">Kies uw service: *</font></small></td> 
        <td width="62%"><INPUT TYPE="checkbox" NAME="service[]" VALUE="webhost"><font color="#6a693c" face="Arial" size="1">Laat A-style uw webhosting regelen<br><INPUT TYPE="checkbox" NAME="service[]" VALUE="domein"><font color="#6a693c" face="Arial" size="1">Laat A-style uw domeinnaam regelen<br><INPUT TYPE="checkbox" NAME="service[]" VALUE="andere"><font color="#6a693c" face="Arial" size="1">Andere Service<br><INPUT TYPE="checkbox" NAME="service[]" VALUE="geen"><font color="#6a693c" face="Arial" size="1">Geen Service<br><br></td> 
      </tr>
	<tr>
	<td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial" size="3"><b>Persoonlijke Gegevens</b></font></td>
      </tr>
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw naam: *</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_naam" size="29"></td> 
      </tr>  
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw E-mail: *</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_email" size="29"></td> 
      </tr>  
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw Telefoonnummer: *</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_telnr" size="29"></td> 
      </tr> 
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw Bedrijfsnaam:</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_bedrijfsnaam" size="29"></td> 
      </tr>
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">KVK nummer:</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_kvk" size="29"></td> 
      </tr>
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw adres:</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_adres" size="29"></td> 
      </tr>
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw Postcode:</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_postcode" size="29"></td> 
      </tr>
      <tr> 
        <td width="38%"><small><font color="#6a693c" face="Arial">Uw Woonplaats: *</font></small></td> 
        <td width="62%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_plaats" size="29"></td> 
      </tr>
      <tr> 
        <td width="40%"><small><font color="#6a693c" face="Arial">Uw Huidige Website:</font></small></td> 
        <td width="60%"><input STYLE="background-color: transparent; font-color: font-size: 10px; font-family: verdana; color: #6a693c;" type="text" name="pers_website" size="29"></td> 
      </tr>
      <tr> 
        <td colspan="2"><small><font color="#6a693c" face="Arial">Verdere opmerkingen:</font></small></td>
	</tr>
	<tr> 
        <td colspan="2"><textarea STYLE="background-color: transparent;" rows="6" name="pers_opmerkingen" cols="40"></textarea></td> 
      </tr>
      <tr> 
        <td colspan="2"><small><font color="#6a693c" face="Arial">Hoe heeft u ons gevonden?</font></small></td>
	</tr>
	<tr> 
        <td colspan="2"><textarea STYLE="background-color: transparent;" rows="6" name="pers_hoegevonden" cols="40"></textarea></td> 
      </tr>
      <tr> 
        <td width="100%" valign="top" colspan="2"><small><small><small><small><small><small><small> 
        &nbsp;&nbsp;&nbsp; </small></small></small></small></small></small></small></td> 
      </tr> 
      <tr> 
        <td width="100%" valign="top" colspan="2"><input type="submit" value="Versturen" 
        name="submit"></td> 
      </tr>
      <tr> 
        <td width="100%" valign="top" colspan="2"><font color="#6a693c" face="Arial">* Deze velden zijn verplicht om in te vullen!<br><br>Wij zullen zorgvuldig omgaan met uw gegevens en deze nooit doorgeven aan derden!</font></td> 
      </tr> 
    </table> 
    </td> 
  </tr> 
</table> 
</form> 
<?php } ?>
 
Nou moet iemand mij maar corrigeren als ik het fout heb, maar je kunt het volgende proberen:

- de array aanmaken ( $var=array(); )
- De checkboxen via php een var geven

dit lijken mij de meest logische dingen....
Als ik het fout heb spijt het me.
 
hey kan heel dom overkomen maar ik snap arrays totaal niet

$scripts = array(scripts);

als ik zo kijk naar je reactie zou ik het bovenstaande denken. alleen dit veranderd niets?

hulp graag :rolleyes:
 
zelf ben ik ook niet helemaal goed thuis in array's (mislukt helft van de tijd), daarom gaf ik ook een 2e optie aan, dat moet dan wel werken, je krijgt alleen wel een gigascript.
Misschien moet je dan helaas toch nog even wachten op ander advies.

succes verder
 
Je kunt ook in je formulier voor het verzenden een variabele input veld setten met het aantal waarden in de scripts-array.

HTML:
<input type="hidden" name="countScripts">

<script>
document.formulier.onsubmit = getScriptsCount;

function getScriptsCount(){
var count = scripts.length;
document.formulier.countScripts.value = count;
}
</script>

Dan moet je je

HTML:
<form>

tag het attribuut:

HTML:
name="formulier"

geven.

Nu kun je in PHP het aantal waarden in de scripts-array opvragen met

PHP:
$countScripts

En dan de waarden via een for-loop in een PHP-variabelen zetten en van daaruit kun je er denk ik wel mee werken toch?

PHP:
for($i = 0; $i < $count; $i++){
    $varName = 'script' . $i;
    $$varName = $scripts[$i];
}

Nu heb je dus:

PHP:
$script0 = '....';
$script1 = '....';
enz...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan