Forum: PC-Programmierung Variablen Weitergabe von HTML Seiten.


von Martin M. (ats3788)


Lesenswert?

Bezug
http://stackoverflow.com/questions/13470285/how-can-i-pass-values-from-one-html-page-to-another-html-page-using-javascript

Hallo HLML Freunde
Ich weiß die Überschrift ist nett toll, sorry.
Wie man sehen kann ist der Funktions Ablauf wunderbar um eine
Variable zu einer anderen Seite zu schicken.


<form action="param-received.html" method="GET">
   <input type="text" id="foo" name="foo">
   <input type="submit" value="Send" name="submit" id="submit">
</form>

<script language="JavaScript">
  function processForm()
  {
    var parameters = location.search.substring(1).split("&");
    var temp = parameters[0].split("=");
    l = unescape(temp[1]);
    alert(l); //Dialog with the text you put on the textbox
  }
  processForm();
</script>

Meine frage
Kann ich den HTML Teil auch mit Javascript ausführen, programmieren,
es geht da vor allem um den method="GET" Teil

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ja. Ein Stichwort ist "XMLHttpRequest".

von Planlos (Gast)


Lesenswert?

Martin M. schrieb:
> <script language="JavaScript">

Ups. Such dir mal ein neuererereres Buch/Tutorial.

Seit ca. 1997 schreibt man <script type="text/javascript"> statt <script 
language="JavaScript">

von Daniel A. (daniel-a)


Lesenswert?

Planlos schrieb:
> <script type="text/javascript">

Eigentlich wäre application/javascript korrekt, aber das verwendet 
keiner.

von Martin M. (ats3788)


Lesenswert?

Danke für die Infos

von Martin M. (ats3788)


Lesenswert?

Also ich habe das folgendermaßen gelöst

PHP Script

<?php

  $date = time();

  $name = strip_tags($_POST['name']);
  $email = strip_tags ($_POST['email']);
  $subject = strip_tags ($_POST['subject']);

  $mails = array();
  $mails [] = array(
  'time' => $date,
  'email' => $email,
  'name' => $name,
  'subject' => $subject,
  'success' => 'yEs'
  );

  $doc = new DOMDocument();
  $doc->formatOutput = true;

  $r = $doc->createElement( "mails" );
  $doc->appendChild( $r );

  foreach( $mails as $mail )
  {
  $b = $doc->createElement( "mail" );

  $time = $doc->createElement( "time" );
  $time->appendChild(
  $doc->createTextNode( $mail['time'] )
  );
  $b->appendChild( $time );

  $email = $doc->createElement( "email" );
  $email->appendChild(
  $doc->createTextNode( $mail['email'] )
  );
  $b->appendChild( $email );

  $name = $doc->createElement( "name" );
  $name->appendChild(
  $doc->createTextNode( $mail['name'] )
  );
  $b->appendChild( $name );

  $subject = $doc->createElement( "subject" );
  $subject->appendChild(
  $doc->createTextNode( $mail['subject'] )
  );
  $b->appendChild( $subject );

  $success = $doc->createElement( "success" );
  $success->appendChild(
  $doc->createTextNode( $mail['success'] )
  );
  $b->appendChild( $success );


  $r->appendChild( $b );
  }

  echo $doc->saveXML();
  $doc->save("EmailSuccess.xml");

und auf der HTML Seite mit Java Script


function ReadXMLFile(xml) {
    var x, i, txt, xmlDoc;
    xmlDoc = xml.responseXML;
    txt = "";
    x = xmlDoc.getElementsByTagName("success");
    for (i = 0; i < x.length; i++) {
        txt += x[i].childNodes[0].nodeValue + "<br>";
    }
    document.getElementById("Label1").innerHTML = txt;

}


function ReadXML() {
var xhttp;
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
        ReadXMLFile(xhttp);
    }
};
xhttp.open("GET", "EmailSuccess.xml", true);
xhttp.send();
}

jetzt versuche ich noch ein anhängen von Daten in der XML
Datei wenn das jemanden interessiert, sagt Bescheid.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.