Visa ett inlägg
Oläst 2011-11-03, 11:23 #1
JeZZifelt JeZZifelt är inte uppkopplad
Flitig postare
 
Reg.datum: Feb 2006
Inlägg: 326
JeZZifelt JeZZifelt är inte uppkopplad
Flitig postare
 
Reg.datum: Feb 2006
Inlägg: 326
Standard Posta utan submit-knapp

Jag har en enkel beställningssida som sparar produkterna med hjälp av javascript tills att det är dags att skicka iväg de beställda produkterna till min mejl. För att checka ut och skicka iväg mejlet klickar man på <a href="javascript:;" class="simpleCart_checkout" style="margin-top:8px;">Beställ</a>.
Ovanför denna länk har jag placerat två fält som jag skulle vilja skickades med i mejlet, så här ser koden i checkout.html ut:

Var god fyll i namn och telefonnummer innan du beställer.
<input placeholder="Namn" type="text" namn="namn" />
<input placeholder="Mobilnummer" type="text" name="telefon" />

Du är på väg att beställa <span class="simpleCart_quantity"></span> produkter för totalt <span class="simpleCart_total"></span>.</span>
<a href="javascript:;" class="simpleCart_checkout" style="margin-top:8px;">Beställ</a>


Men på detta vis får jag ju inte med de ifyllda fälten i mitt mejl, eftersom ingen submit-knapp klickas på. Jag kan ju inte heller byta ut länken mot en submit-knapp eftersom utcheckningen måste gå via javascriptet för att få med produkterna, eller har jag fel?


Javascriptkoden som hanterar mejlutcheckningen ser ut så här:

me.emailCheckout = function() {

itemsString = "";
for( var current in me.items ){
var item = me.items[current];
itemsString += item.quantity + " st\n" + item.name + "\n Pris: " + item.price + " kr/st \n\n";
}

me.total += "" + " KR"

var form = document.createElement("form");
form.style.display = "none";
form.method = "POST";
form.action = "sendjs.php";
form.acceptCharset = "ISO-8859-1";
form.appendChild(me.createHiddenElement("jcitems", itemsString));
form.appendChild(me.createHiddenElement("jctotal", me.total));
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
}

me.customCheckout = function() {
return;
};


Min sendjs.php har jag byggt upp så att det ser ut så som jag skulle vilja få informationen, tror allt ska stämma i den koden, får där lär inget behöva ändras väl?

<?php
$to = '[email protected]';
$subject = 'Beställning';
$jcitems = $_POST['jcitems'] .
" \n SUMMA: " . $_POST['jctotal'] .
" \n\n Namn: " . $_POST['namn'] .
" \n Telefon: " . $_POST['telefon'] .

$headers = 'From:' . "\r\n" .
'Reply-To:' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $jcitems, $headers);
Header('Location: tack.html');
?>

Antar att det är i javascriptkoden jag behöver lägga till något så att fälten infogas, men jag har verkligen ingen aning om hur, så vore oerhört tacksam för er hjälp här!
Tacksam om ni skickar med lite kodexempel så jag har något humm om vad ni menar när ni försöker förklara.

Tack på förhand!
JeZZifelt är inte uppkopplad   Svara med citatSvara med citat