weergave in formulier wilt niet

Status
Niet open voor verdere reacties.

comass

Gebruiker
Lid geworden
19 dec 2000
Berichten
456
Hallo,

Mijn formulier bestaat uit 2 gedeelten:

Code:
form action="bestelformulier.php" method="post" target="_self" name="myform">
    <p><b>Labels:</b><br>
 <input type="radio" name="aantal" id="36 labels: " value=12.50>
36 labels € 10,00
<input type="radio" name="aantal" id="72 labels: " value=17.50>
72 labels € 15,00
&nbsp;<input type="radio" name="aantal" id="144 labels: " value=22.50>
144 labels € 20,00<br><b>Taggits:</b><br>
 <input type="radio" name="taggits" id="geen taggits: " value=0.00>Geen taggits

 <input type="radio" name="taggits" id="100 taggits: " value=6.00>100 Taggits € 6,00
 
<input type="radio" name="taggits" id="200 taggits: " value=12.00>
    200 Taggits € 12,00<br>
<br>
<b>Betaalwijze</b><br>
 <input type="radio" name="bet" id="incasso: " value=0.00 checked>éénmalige incasso

 <input type="radio" name="bet" id="nota: " value=2.50>Nota achteraf + € 2,50 
    <br>

  <input type="radio" name="verz" id="Verzendkosten:" value=2.00 checked>Verzenkosten € 2,00

<br>    <b>Totaal:</b> <input type="text" name="totaal" value=€0.00 readonly size="10">

</p>
<p>
Code:
<input type="radio" name="betaling" id="machtiging" value="">Ik geef  hierbij éénmalig toestemming om het bedrag af te schrijven van mijn <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bank en/of girorekeningnummer

  <input size="14" name="rekeningnummer">
t.n.v. <input size="30" name="tennamevan"></p>
<p><input type="radio" name="betaling" id="nota achteraf" value="">Ik betaal
achteraf binnen 8 dagen na ontvangst van mijn bestelling d.m.v. een acceptgiro 
    en 
<br> &nbsp;&nbsp;&nbsp;&nbsp;betaal hiervoor € 2,50 extra voor
administratiekosten</p>

Deze waardes van de aantallen en de totaal prijs krijg ik niet terug in mijn antwoordformulier.
De overige gegevens wel.

Code:
Bestelling: ".$_POST['product']." 
Kleurencombinatie: ".$_POST['kleurcombinatie']." 
".$_POST['motief']." 


Specificatie:
".$_POST['aantal']." 
".$_POST['taggits']."
".$_POST['bet']."
".$_POST['verz']."
Totaal bedrag: ".$_POST['totaal']." 

U betaalt d.m.v. ".$_POST['betaling']."  ".$_POST['rekeningnummer']." ".$_POST['tennamevan']."

Iemand een idee waarom de gegevens onder specificatie niet ingevuld worden en vervolgens betaling etc wel??
 
Alle HTML-attributen dien je tussen quotes te plaatsen.

Ik zie bij al je value= geen quotes. Dat kan het probleem zijn.
 
Wat bedoel je hier mee?

Ik zie bij al je value= geen quotes. Dat kan het probleem zijn.

Ik maak eruit op dat ik hier een fout maak, maar welke?

Code:
<input type="radio" name="aantal" id="36 labels: " value=12.50>
36 labels € 10,00
<input type="radio" name="aantal" id="72 labels: " value=17.50>
72 labels € 15,00
&nbsp;<input type="radio" name="aantal" id="144 labels: " value=22.50>
144 labels € 20,00<br><b>Taggits:</b><br>
 <input type="radio" name="taggits" id="geen taggits: " value=0.00>Geen taggits

 <input type="radio" name="taggits" id="100 taggits: " value=6.00>100 Taggits € 6,00
 
<input type="radio" name="taggits" id="200 taggits: " value=12.00>
    200 Taggits € 12,00<br>
<br>
<b>Betaalwijze</b><br>
 <input type="radio" name="bet" id="incasso: " value=0.00 checked>éénmalige incasso

 <input type="radio" name="bet" id="nota: " value=2.50>Nota achteraf + € 2,50 
    <br>

  <input type="radio" name="verz" id="Verzendkosten:" value=2.00 checked>Verzenkosten € 2,00

<br>    <b>Totaal:</b> <input type="text" name="totaal" value="<? echo $totaal;?>" readonly size="10">

Of zit mijn fout hier?
Code:
Specificatie:
".$_POST['aantal']." 
".$_POST['taggits']."
".$_POST['bet']."
".$_POST['verz']."
Totaal bedrag: ".$_POST['totaal']."
 
Ik doe het altijd zo:
Code:
$naam=$_POST['naam'];             
$afzendermail=$_POST['afzendermail']; 
$titel = $_POST['titel']; 
$aanhef = $_POST['aanhef'];  
$voornaam=$_POST['voornaam'];

En dan kan ik evt met echo kijken of ze de juiste waarden bevatten.
 
Tha Devil bedoelt dit:

HTML:
<input type="radio" name="aantal" id="36 labels: " value=12.50>

Daar moeten bij het value attribuut nog quotes staan:

HTML:
<input type="radio" name="aantal" id="36 labels: " value="12.50">
 
Ik doe het altijd zo:
{code}
En dan kan ik evt met echo kijken of ze de juiste waarden bevatten.
Mwhoah, beetje jammer dat je dan extra variabelen een moet maken.

Als ik wil controleren of ze de juiste waardes bevatten doe ik het zo
PHP:
print_r($_POST);

En inderdaad ik bedoel wat ErikBooy007 zegt.
 
Hoi,

als ik dat doe bij value="12.50" wordt de waarde niet opgeteld in het javascript :mad:
 
Hoe ziet je JS er uit dan?
 
HTML:
<script type="text/javascript">
<!--//
function totaal(){
var form = document.forms['myform'];
for(var i=0; i<form.elements.length; i++){
if(form.elements[i].type.match(/(radio)/i)){
form.elements[i].onclick = function(){
for(var i=0,totaal=0; i<this.form.elements.length; i++){
var input = this.form.elements[i];
if(input.type.match(/(radio)/i) && input.checked){
totaal += input.value/1;
} this.form.totaal.value = '€'+totaal.toFixed(2);
}
}
}
form.onsubmit = function(){
for(var i=0; i<this.elements.length; i++){
var input = this.elements[i];
if(input.type.match(/(radio)/i)){
input.value = input.id+''+input.value;
}
}
}
}
} window.onload = totaal;
//-->
</script>
 
Laatst bewerkt door een moderator:
Hoi,

Het probleem is opgelost, het lag niet aan de PHP maar aan het gebruikte javascript.

Deze heb ik nu gebruikt, en het werkt prima.

Code:
<SCRIPT LANGUAGE="JavaScript">
<!-- hide javascript from non-JavaScript browsers.
// This function calculates the total for items in the form which are selected
var PriceAry=[];
PriceAry[0]=['Machtiging : € 0,00',0,00];
PriceAry[1]=['Nota achteraf : € 2,500',2,50];
PriceAry[2]=['36 Labels : € 10,00',10,00];
PriceAry[3]=['72 Labels : € 20,00',20,00];
PriceAry[4]=['144 Labels : € 30,00',30,00];
PriceAry[5]=['Geen taggits : € 0,00',0,00];
PriceAry[6]=['100 Taggits : € 6,00',6,00];
PriceAry[7]=['200 Taggits : € 12,00',12,00];
PriceAry[8]=['Verzendkosten : € 2,00',2,00];

function CalculateTotal(inputItem) {
var frm=inputItem.form;
if (!frm.fields) frm.fields='';
if (!frm.fields.match(inputItem.name)) frm.fields+=inputItem.name+',' // add the inputItem name to frm.fields
var fieldary=frm.fields.split(','); // convert frm.fields to an array
var cal=0;
for (var zxc0=0;zxc0<fieldary.length-1;zxc0++){ // loop through the field names
var input=document.getElementsByName(fieldary[zxc0]); // an array of fields with the mame
for (var zxc0a=0;zxc0a<input.length;zxc0a++){ // loop through the input array to detect checked fields
if (input[zxc0a].checked){
for (var zxc0b=0;zxc0b<PriceAry.length;zxc0b++){ // loop through PriceAry to match input value with field 0 of each field
if (input[zxc0a].value==PriceAry[zxc0b][0]){
cal+=PriceAry[zxc0b][1];
}
}


}
}
}
frm.calculatedTotal.value=cal;
frm.total.value=formatCurrency(cal);
}



// format a value as currency.
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');

if(isNaN(num))
num = "0";

sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();

if(cents<10)
cents = "0" + cents;

for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3)) + ',' + num.substring(num.length-(4*i+3));

return (((sign)?'':'-') + '€ ' + num + ',' + cents);
}

// This function initialzes all the form elements to default values
function InitForm() {
//Reset values on form
var frm=document.selectionForm;
frm.total.value='€0,00'; // set initial total
frm.calculatedTotal.value=0;
frm.previouslySelectedRadioButton.value=0;

//Set all checkboxes and radio buttons on form to unchecked:
for (i=0; i < frm.elements.length; i++) {
if (frm.elements[i].type == 'checkbox' || frm.elements[i].type == 'radio') {
frm.elements[i].checked =(frm.elements[i].value!='None')? false:true;
}
}

}

// end commenting javascript -->
</SCRIPT>
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan