PHP Script übe Button aufrufen

Ador

Erfahrenes Mitglied
Hallo,

ich würde gerne eine PHP Script das ich geschrieben habe, über klick (Butto) aufrufen.
Dabei soll nicht die Seite gewechselt werden, der Button soll praktisch nur das Script starten, sodass es abläuft.
Per Javascript würde auch gehen.

Wie mach ich das am besten?

MfG
 
Ok, das mit AJAX hat soweit geklappt.
Nun habe ich noch das Problem, dass ich den Inhalt (POST) vom Form an das PHP Script übertragen möchte.
Wie mach ich das, dass der POST auch in meinem PHP Script ankommt?

FORM:
Code:
<form>
<textarea method="post" name="content" ></textarea>
<br> 
<input type="submit" value="Speichern" onclick="javascript:setRequest()">
</form>

JAVASCRIPT
Code:
var url = "ausgabe.php";
			// Request öffnen
			request.open('post', url, true);
			// Request senden
			request.send(null);
			// Request auswerten
			request.onreadystatechange = interpretRequest;

PHP (ausgabe.php)
Code:
$information = $_POST['content'];
echo $information;

Mal alles gekürzt.
 
Code:
<input type="submit" value="Speichern" onclick="javascript:setRequest()">

Wo hast du diesen Schnipsel her?
Wenn man schon mit dem onclick-Attr. arbeitet, dann ohne "javascript:".

Nun habe ich noch das Problem, dass ich den Inhalt (POST) vom Form an das PHP Script übertragen möchte.
Wie mach ich das, dass der POST auch in meinem PHP Script ankommt?
Du willst praktisch den Submit einer Form triggern, ohne dass die Seite neugeladen wird? Im Prinzip alle Daten per AJAX verschicken?

Du könntest das über FormData lösen:
Javascript:
var formData = new FormData(document.getElementById("Gib deinem <form> eine ID!"));
// ... (dein Code zur Erstellung des XMLHttpRequest-Objekts [AJAX])
request.send(formData);

Siehe auch: https://developer.mozilla.org/en-US/docs/Web/Guide/Using_FormData_Objects

Bzgl. Browsersupport schaust du hier: http://caniuse.com/#feat=xhr2
 
Ja genau.
Ich möchte die Daten aus dem Form (textarea) per Button an das PHP-Script schicken, ohne das die Seite neu geladen wird. Es soll also einfach nur über den Button das PHP-Script gestartet werden. Dabei müssen aber eben die Daten aus dem Form auch dort ankommen.

Wenn man schon mit dem onclick-Attr. arbeitet, dann ohne "javascript:".
Wieo, was ist falsch daran? Wenn ich ein Submit-Button nehme, dann wird ja wieder die Seite neu geladen.

Bisher hatte ich das ohne Javascript oder AJAX gelöst. Dabei war dann aber das Problem, dass beim Klick auf den Button immer die komplette Seite neu geladen wurde oder ein Seitenwechsel statt fand.
 
Wieo, was ist falsch daran? Wenn ich ein Submit-Button nehme, dann wird ja wieder die Seite neu geladen.

Weil man das nicht mit javascript: beim onclick-Attr. anfangen sollte. Da wird eh JS erwartet, von daher solltest du dir dies sparen.
Achso... du hast "JavaScript" verstanden, ich meinte "javascript:", den Teil am Anfang deines onclick-Attrs.
 
Nein brauchst du auch nicht. Du kannst ja mehr Code schreiben und für jeden Browser was eigenes implementieren. :-)

Javascript:
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = /* ... */;
xhr.open("GET", "...");
xhr.send(null);
Und jetzt nennst du mir bitte die Browser, die diesen Code nicht unterstützen! Sogar IE 7 unterstützt das.

Sorry, aber an diejenigen, die immer sofort jQuery empfehlen:

Hört damit auf. Wenn man nur kleine Funktionalitäten braucht, die jQuery auch bereitstellt, braucht man keine 32kB extra!
Ich finde jQuery definitiv nützlich und will es nicht in den Schmutz ziehen, aber jQuery nur für eine AJAX-Aktion zu verwenden ist wirklich sehr übertrieben.
Außerdem sollte man sich über den Browsersupport erstmal informieren!
 
Zurück