Javascript Array an PHP

hdw 2006

Grünschnabel
Hallo Leute,
bin absolut neu hier und auch kein Experte fürs Programmieren.
Meine Frage:
Wie übergebe ich Daten von einem JS-Array (ganz einfacher Shop) zum Versenden an ein PHP-Formmailer.
Für den fehlerfreien Code gibts 'nen Zwanziger!
mfg
HDW
 
Zuletzt bearbeitet:
Was ist das für ne Beschreibung?

Aber generell brauchst du wahrscheinlich AJAX, auch wenn ich sonst nix genaueres sagen kann.
 
JSON ist vielleicht auch noch ein Begriff...?

PS: Wie soll man dir einen richtigen Quelltext liefern, wenn du keine Vorlage bringst..?
 
Entschuldige, war falsch formuliert:
Wie übergebe ich Daten von einem JS-Array (ganz einfacher Shop) zum Versenden an einen PHP-FORMMAILER?
 
Hier hast du den fertigen Code. Da du keine Daten angegeben hast, habe ich entsprechende Platzhalter verwendet, die du dann ersetzen musst.
HTML:
<html>
<head>
<script type="text/javascript">
function sendRequest(){
  var  skript="deinSkript.php";
  var  vorname=window.document.ajax.vor.value;
  var  nachname=window.document.ajax.nach.value;
  var  request=skript+'?vorname='+vorname+'&nachname='+nachname;
  var ajaxRequest;
  if(window.XMLHttpRequest){
    ajaxRequest=new XMLHttpRequest();
  }
  else{
    ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
  }
  ajaxRequest.open("GET",request,false);
  ajaxRequest.send();
  var response =ajaxRequest.responseText;
  document.getElementById('content').innerHTML = response;
  
} 
</script>
</head>
<body>

<form name="ajax">
<input type="text" id='vor'  >Vor<br>
<input type="text" id='nach' >Nach<br>
<input type="button" id='send' value="Senden" onclick="sendRequest();">
<input type="reset" value="Clear">
</form>
<div id='content'>Blank</div>
</body>
</html>
Und das zugehörige PHP Skript:
PHP:
<?php
echo htmlentities("Du heißt ");
echo $_GET["vorname"];
echo $_GET["nachname"];
?>

Getestet mit FF 17
 
Hallo,
Danke für Deine Mühe. Das mag schon funktionieren, weil die Daten direkt aus einer input-Form kommen.
Bei mir werden die Daten (Vorname, Nachname etc.) in einem Array übergeben. Folglich müsste, dieses sendRequest das Array erst umwandeln?
"Grosser Gott ich krieg die Krise!"
 
Typischerweise werden solche Arrays als JSON Objekt übergeben.
https://de.wikipedia.org/wiki/JSON
Du könntest das Ganze aber auch zu einem langen String verketten und diesen übergeben. Dann musst du den String in deinem PHP-Skript halte wieder zerlegen.
Javascript:
var sendString =""
sendString +=Vorname+"#";
sendString +=Name+"#";
sendString +=Email;
//Dann analog den RequestBilden
var  request=skript+'?RequestString='+sendString;
Ich habe # in den String eingebaut, die du im PHP als Trennzeichen verwenden kannst um den String wieder zu zerlegen. Hier geht natürlich auch jedes andere Zeichen, das nicht in den Usereingaben vorkommt.
 
Zurück