• User

    Modulo FrontPage - Invio carrello tramite email

    Ciao a tutti: ho bisogno di una vostra mano!
    Ho creato (non proprio da solo..) una specie di carrello. Nella pagina ordini, che raccoglie tutti i dati relativi alla spedizione, c'è questo modulo, che verrà inviato per email: so che è sconsigliato utilizzare l'html per questo genere di cose ma è l'unica soluzione che ho.
    Ora però non riesco a creare la funzione che invia il modulo tramite email!!! Questo è il codice (fatto tramite front page):

    <script language="javascript">
    var numprod=0;

    function punteggiatura(num) {
    retval =""+num;
    if (retval < 1000) {
    while (retval.length < 10){
    retval =" "+retval
    }
    }
    if ((retval <= 999999) && (retval >= 1000)) {
    temp1 = retval.substring(0,retval.length-3);
    temp2 = retval.substring(retval.length-3,retval.length+1);
    retval =temp1+"."+temp2;
    while (retval.length < 10){
    retval =" "+retval
    }
    }
    if(retval >= 1000000) {
    temp1 = retval.substring(0,retval.length-6);
    temp2 = retval.substring(retval.length-6,retval.length-3);
    temp3 = retval.substring(retval.length-3,retval.length+1);
    retval=temp1+"."+temp2+"."+temp3;
    while (retval.length < 10){
    retval =" "+retval
    }
    }
    return retval;
    }
    document.write('<div align="center"><center>');
    var quant=0;
    var prezzo=0;
    var totale=0;
    var string=document.cookie;
    var puntatore=string.lastIndexOf("Lampade=#");
    var lung=string.indexOf("##");

    function update(form) {
    var Prezzoup=0;
    var Qt=0;
    var Sub=0;
    var SubTotale=0;
    for (i=1; i<=cont; i++) {
    Prezzoup=eval("form.Prezzo"+i+".value");
    Qt=eval("form.Quant"+i+".value");
    if (isNaN(Qt) || (Qt<0) || (Qt=="")) {Qt=1;
    eval("form.Quant"+i+".value=1");}
    if (Qt>999) {Qt=999;
    eval("form.Quant"+i+".value=999");}
    Sub=(parseInt(Prezzoup))*(parseInt(Qt));
    SubTotale+=parseInt(Sub);
    eval("form.Totale"+i+".value=punteggiatura(Sub)");
    }
    var indice=form.Trasporti.selectedIndex;
    Prezzoup=form.Trasporti.options[indice].value;
    form.TotaleTrasporti.value=punteggiatura(Prezzoup);
    SubTotale+=parseInt(Prezzoup);
    form.TotaleFinale.value=punteggiatura(SubTotale);
    }

    function errore(campo) {
    alert("Il campo "+campo+" è vuoto");
    }

    function controllo(form) {
    var err=0;
    if (form.Email.value=="") err="Email";
    if (form.Nazione.value=="") err="Nazione";
    if (form.CAP.value=="") err="CAP";
    if (form.Provincia.value=="") err="Provincia";
    if (form.Comune.value=="") err="Comune";
    if (form.Indirizzo.value=="") err="Indirizzo";
    if (form.Societa.value=="") err="Società";
    if (form.Cognome.value=="") err="Cognome";
    if (form.Nome.value=="") err="Nome";
    if (err==0) Ordine.submit();
    else errore(err);
    }

    var quantit=0;
    var prezzo=0;
    var totale=0;
    var cont=0;
    var stop=0;
    var string=document.cookie;
    var puntatore=string.lastIndexOf("Lampade=#");
    var lung=string.indexOf("##");
    if (puntatore == -1) {document.write('<p><font size="1" face="Verdana" color="#FFFFFF">Per poter effettuare un ordine è necessario aggiungere almeno un articolo nel carrello. <br><br><b><a href="shop.htm">Vai alla pagina shop</a></font></b></p>'); stop=1;}
    else {
    document.write('<br><center><font size="1" face="Verdana" color="#FFFFFF">Tutti i campi sono obbligatori.<br>E' possibile cambiare la quantità degli articoli.<br>Per eliminare un articolo immettere il valore "0".</center><br>')
    document.write('<form METHOD="POST" ACTION="[email protected]"><!-- webbot bot="SaveResults" S-Email-Format="TEXT/PRE" S-Email-Address="[email protected]" S-Email-Subject="Nuovo ordine" S-Builtin-Fields -->');
    document.write('<div align="center"><center>');
    document.write('<table border="1" cellspacing="1"> <tr>');
    document.write('<td align="right">Nome</td>');
    document.write('<td><input type="text" name="Nome" size="20" tabindex="1"></td> </tr>');
    document.write('<tr> <td align="right">Cognome</td>');
    document.write('<td><input type="text" name="Cognome" size="20" tabindex="2"></td></tr>');
    document.write('<tr> <td align="right">Società</td>');
    document.write('<td><input type="text" name="Societa" size="20" tabindex="3"></td></tr>');
    document.write('<tr><td align="right">Indirizzo</td>');
    document.write('<td><input type="text" name="Indirizzo" size="30" tabindex="4"></td></tr>');
    document.write('<tr><td align="right">Comune e provincia</td>');
    document.write('<td><input type="text" name="Comune" size="20" tabindex="5"><input type="text" name="Provincia" size="4" tabindex="6" maxlength="2"></td></tr>');
    document.write('<tr><td align="right">CAP</td>');
    document.write('<td><input type="text" name="CAP" size="7" tabindex="7" maxlength="5"></td></tr>');
    document.write('<tr><td align="right">Nazione</td>');
    document.write('<td><input type="text" name="Nazione" size="20" tabindex="8"></td></tr>');
    document.write('<tr><td align="right">E-mail</td>');
    document.write('<td><input type="text" name="Email" size="20" tabindex="9"></td></tr>');
    document.write('</table></center></div>');
    document.write('<div align="center"><center><table border="1" cellspacing="1"><font>');
    while (puntatore<=lung) {
    if (string.charAt(puntatore) == "@") {
    cont++;
    document.write('<tr><td align="right">Articolo</td>');
    puntatore++;
    subpuntatore=puntatore;
    while (string.charAt(puntatore) != "@") puntatore++;
    document.write('<td align="right"><input type="text" name="Articolo'+cont+'" size="20"');
    document.write('value="'+string.substring(subpuntatore, puntatore)+'" onFocus="this.blur()">');
    puntatore++;
    subpuntatore=puntatore;
    while (string.charAt(puntatore) != "@") puntatore++;
    prezzo=parseInt(string.substring(subpuntatore, puntatore));
    document.write('<input type="hidden" name="Prezzo'+cont+'" value="'+prezzo+'"></td>');
    puntatore++;
    subpuntatore=puntatore;
    while (string.charAt(puntatore) != "@") puntatore++;
    quantit=parseInt(string.substring(subpuntatore, puntatore));
    document.write('<td align="right">Quantità</td>');
    document.write('<td align="right"><input type="text" name="Quant'+cont+'" size="5" ');
    document.write('value="'+quantit+'" onChange="update(this.form)" maxlength="3"></td>');
    puntatore++;
    subpuntatore=puntatore;
    while ((string.charAt(puntatore) != "@") && (string.charAt(puntatore) != "#")) puntatore++;
    document.write('<td align="right">Taglia</td>');
    document.write('<td align="right"><input type="text" name="Taglia'+cont+'" size="6" ');
    document.write('value="'+string.substring(subpuntatore, puntatore)+'" maxlength="4"></td>');
    totale+=prezzoquantit;
    document.write('<td align="right">Totale</td>');
    document.write('<td align="right">? <input type="text" name="Totale'+cont+'" size="12" ');
    document.write('value="'+punteggiatura(prezzo
    quantit)+'" style="text-align: right" onFocus="this.blur()"></td>');
    puntatore--;
    document.write('</tr>');
    }
    puntatore++;
    }
    }
    totale+=20000
    if (stop != 1) {
    document.write('<tr><td align="right">Spedizione</td>');
    document.write('<td align="right"><select size="1" name="Trasporti" onChange="update(this.form)">');
    document.write('<option value="7">Si</option>');
    document.write('<option value="0">No</option>');
    document.write('</select></td><td colspan="4" align="right"> </td>');
    document.write('<td align="right">Totale</td>');
    document.write('<td align="right">? <input type="text" name="TotaleTrasporti" size="12" value="'+punteggiatura(20000)+'" style="text-align: right" onFocus="this.blur()"></td>');
    document.write('</tr><tr><td colspan="6" align="right"> </td>');
    document.write('<td align="right"><b>Totale</b></td>');
    document.write('<td align="right">? <input type="text" name="TotaleFinale" size="12" value="'+punteggiatura(totale)+'" style="text-align: right" onFocus="this.blur()"></td>');
    document.write('</tr></table></center></div>');
    document.write('<p align="center"><input type="button" value="Invia" name="B1" tabindex="10" onClick="controllo(this.form)">');
    document.write('<input type="reset" value="Reimposta" name="B2" tabindex=11"></p>');
    }

    document.write('</form>');
    </script>

    Praticamente è uno script che raccoglie dai cookies i dati salvati precedentemente e, quando non sono presenti dati, da un messaggio di errore.
    Vi prego, datemi una mano!!!
    Grazie!


  • Super User

    Ciao, hai aperto 3 discussioni identiche cambiato solo il titolo.

    Ti invito a dare lettura al regolamento e soprattutto a tener un comportamento consono alle regole dettate dal rispetto altrui e dalla buona educazione. 🙂

    Chiudo questa discussione.