(non so se devo postare questo thread qui o in php... credo qui....)

Ho questa funzione per un piccolo carrello:

codice:
function passavalori(art, prz, qnt)
			{
			document.carrello['articolo'].value=art;
			document.carrello['prezzo'].value=prz;
			document.carrello['quantita'].value=qnt;		
			document.carrello.submit();
			}
Se nel form metto name="carrello" funziona regolarmente e le variabili vengono spedite ad una pagina php senza problemi con questa chiamata:
codice:
javascript:passavalori('maglietta bianca','5.00','50')
Le variabili vengono richiamate con $_POST['nome_var']

Siccome il sito è in xhtml strict quando vado a validare la pagina ottengo l'errore there is no attribute "name".

Ho provato a sostituire tutti i "name" con id e a modificare la funzione così:

codice:
function passavalori(art, prz, qnt)
			{
			window.document.getelementbyid('articolo').value=art;
			window.document.getelementbyid('prezzo').value=prz;
			window.document.getelementbyid('quantita').value=qnt;		
			window.document.getelementbyid('carrello').submit();
			}
ma le variabili non arrivano più a destinazione...
Dove sto sbagliando??