per me sei un'apparizione...tanto sperata quanto desiderata...

sono nella
sto cercando di metter su un piccolo carrello e sto disgraziatamente usando javascript.
in sostanza...quando clicco sul carrello relativo a prodotti presi da un db mysql creo un cookie con nome@prezzo@quantità (si aggiungono altri prodotti nello stesso cookie separandoli con #).

Chiaramente anche il modulo finale di riepilogo è in javascript...legge il cookie e mi restituisce i campi, quantità e prezzo.
codice:
<script language="javascript">

function punteggiatura(num) {
	retval =""+num;
	if (retval < 100) {
							retval="0,"+retval;
							 	while (retval.length < 10){ 
                        	retval =" "+retval 
									}
								}
	if ((retval <= 99999) && (retval >= 100)) {
								temp1 = retval.substring(0,retval.length-2);
								temp2 = retval.substring(retval.length-2,retval.length+1);
                       		retval =temp1+","+temp2;
								while (retval.length < 10){ 
                        	retval =" "+retval 
									}
								}
	if(retval >= 100000) {
								temp1 = retval.substring(0,retval.length-5);
								temp2 = retval.substring(retval.length-5,retval.length-2);
								temp3 = retval.substring(retval.length-2,retval.length+1);
								retval=temp1+"."+temp2+","+temp3;
								while (retval.length < 10){ 
                        	retval =" "+retval 
									}
								}
return retval;
}

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*100))*(parseInt(Qt));
		SubTotale+=Sub;
		eval("form.Totale"+i+".value=punteggiatura(Sub)");
	}
	var indice=form.Trasporti.selectedIndex;
	Prezzoup=parseInt(form.Trasporti.options[indice].value)*100;
	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);
}

document.write('<p align="center">Modulo d\'ordine</p>');


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('
<center>Il carrello è vuoto</center>'); stop=1;}
	else {
	document.write('
<center>Tutti i campi sono obbligatori.
E\' possibile cambiare la quantità degli articoli.
Per eliminare un articolo immettere il valore \"0\".</center>
')
	document.write('<form method="post" name="Ordine" action="send_ord.php">');
	document.write('<div align="center"> <center>');
	document.write('<table class="ordina" width="600" bgcolor="#CEE7FF" border="0" cellpadding="5"> <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 class="ordina" width="600" bgcolor="#CEE7FF" border="0" cellpadding="5">');
	while (puntatore<=lung) {
		if (string.charAt(puntatore) == "@") {
			cont++;
			document.write('<tr><td align="right">Titolo</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=parseFloat(string.substring(subpuntatore, puntatore));
			document.write('<input type="hidden" name="Prezzo'+cont+'" value="'+prezzo+'"></td>');
			puntatore++;
			subpuntatore=puntatore;
			while ((string.charAt(puntatore) != "@") && (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>');
			totale+=parseInt(prezzo*quantit*100);
			document.write('<td align="right">Totale</td>');
			document.write('<td align="right">&euro;<input type="text" name="Totale'+cont+'" size="12" ');
			document.write('value="'+punteggiatura(parseInt(prezzo*quantit*100))+'" style="text-align: right" onFocus="this.blur()"></td>');
			puntatore--;
			document.write('</tr>');
			}
		puntatore++;
		}
}
totale+=1052; //prezzo delle spese di spedizione di default (10,52*100)
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 selected value="10,52">Italia</option>');
	document.write('<option value="20,41">Europa</option>');
	document.write('<option value="30,85">Asia</option>');
	document.write('<option value="54,23">America</option>');
	document.write('</select></td><td colspan="2" align="right"></td>');
	document.write('<td align="right">Totale</td>');
	document.write('<td align="right">&euro;<input type="text" name="TotaleTrasporti" size="12" value="'+punteggiatura(1052)+'" style="text-align: right" onFocus="this.blur()"></td>');
	document.write('</tr><tr><td colspan="4" align="right"></td>');
	document.write('<td align="right">Totale</td>');
	document.write('<td align="right">&euro;<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>
Adesso invio il tutto con POST a send.php (non sono così fagiano come credi..avevo usato il post ma lavoro in locale con easyphp e non so perchè ma non va)
Codice PHP:
<?php

// L'INDIRIZZO DEL DESTINATARIO DELLA MAIL
$to "webmaster@progedit.com";

//errori
$back "<font class='estratto'>[url='javascript:history.go(-1);']Torna indietro[/url]</font>";
$errore "<center>



<font class='breve'>Si sono verificati i seguenti errori:</font>\n</center>"
;

//semplifico le var
$nomex trim(stripslashes($_POST['nome']));
$cognomex trim(stripslashes($_POST['cognome']));
$societax trim(stripslashes($_POST['societa']));
$indirizzox trim(stripslashes($_POST["indirizzo"]));
$comunex trim(stripslashes($_POST["comune"]));
$provinciax trim(stripslashes($_POST["provincia"]));
$capx trim(stripslashes($_POST["cap"]));
$nazionex trim(stripslashes($_POST["nazione"]));
$emailx trim(stripslashes($_POST["email"]));
$articolox trim(stripslashes($_POST["Articolo"]));
$prezzox trim(stripslashes($_POST["Prezzo"]));
$quantx trim(stripslashes($_POST["Quant"]));


// IL SOGGETTO DELLA MAIL
$subject "Ordine: ";

// COSTRUIAMO IL CORPO DEL MESSAGGIO
$body "Ecco il messaggio inviato dal visitatore:\n\n";
$body .= "Nome: " $nomex "\n";
$body .= "Cognome: " $cognomex "\n\n";
$body .= "Società: " $societax "\n\n";
$body .= "Indirizzo " $indirizzox "\n";
$body .= "Comune " $comunex "\n";
$body .= "provincia " $provinciax "\n";
$body .= "CAP " $capx "\n";
$body .= "Nazione " $nazionex "\n";
$body .= "Email " $emailx "\n";
$body .= "Articolo " $articolox "\n";
$body .= "Prezzo " $prezzox "\n";
$body .= "Quantità " $quantx "\n";

// INTESTAZIONI SUPPLEMENTARI
$headers "From: Modulo utenti<modulo@progedit.com>";

if (
$nomex == '') {
$errore .= "<center>
<font class='breve'>Hai dimenticato di inserire il tuo nome</font>


$back</center>";
echo 
$errore;
die();
}


//controllo sul campo email 
if(ereg(".+\@.+\..+"$emailx) && (ereg("^[a-zA-Z0-9_@.-]+$"$emailx)) && ($emailx != '')) {

// INVIO DELLA MAIL
if(@mail($to$subject$body$headers)) { // SE L'INOLTRO E' ANDATO A BUON FINE...

echo "<center>



<font class='breve'>La mail è stata inviata con successo
La nostra redazione ti risponderà al più presto
Grazie</font>

$back</center>";

} else {
// ALTRIMENTI...

echo "<center>



<font class='breve'>Si sono verificati dei problemi nell'invio della mail</font>


$back</center>";

}
}
else { echo 
"<center>



<font class='breve'>Inserisci una email corretta</font>


$back</center>"; }
?>