ERLEDIGT
JA
JA
ANTWORTEN
6
6
ZUGRIFFE
271
271
EMPFEHLEN
-
Hallo zusammen.
Ich habe ein Problem und ich weiß nicht, wie und womit ich es lösen kann. Ich denke aber, dass es mit Java lösbar ist.
Ich habe einen HTML Button und wenn ich auf diesen klicke soll ein PHP Script im Hintergrund ausgeführt werden. Jedoch soll im Vorderdrung keine neue Seite geladen werden.
<input type="button" value="Schaltfläche" name="B3" >
We würde der Code aussehen der die Fragezeichen oben ersetzt, wenn das PHP script "../mein_php.php" heißt?
Danke und lieben Gruß
Peter
-
Hi,
mit Ajax ist dein Vorhaben realisierbar. Erst gestern hatten wir einen Thread, der sich damit beschäftigt hat.
Etwas allgemeiner - ein Openbook.
Ansonsten - wenn es nur darum geht, ein PHP-Script anzustossen, ohne dessen Antwort zu benötigen, könntest du es auch über ein Bildobjekt realisieren.
CiaoCode :1 2
var objImg = new Image(); objImg.src = "../mein_php.php?" + new Date().getTime();
QuaeseVielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
----
Der "Fortsetzungsroman" auf www.leuteforum.de
New kind to realize large scalable projects with jQuery: jQuery SDK
-
also es ist eigentlich recht einfach. Du brauchst drei Dateien.
1. PHP Seite mit deinem Button ( Anzeige.php )
2. javascript datei die dir den Ajax krimskram macht und die php datei ausführt ( Ajax.js )
3. die PHP Datei die ausgeführt werden soll ( Ausfuehr.php )
1. PHP/Button/HTML ( Anzeige.php )
2. so nun die ( Ajax.js )PHP-Code:<html>
<body>
<!-- include der javascript Datei -->
<script language="JavaScript" type="text/javascript" src="./Ajax.js"></script>
<script>
function AjaxAufruf(){
// Aufruf der function aus der Ajax.js datei
Request;
}
</script>
<button onclick="AjaxAufruf">Go PHP Background</button>
</body>
</html>
3. so und hier kommt die ( Ausfuehr.php ) hier kannst du dein code ausführen.PHP-Code:// das hier nicht verändern einfach so hinnehmen *GG*
function createXMLHttpRequest() {
var ua;
if(window.XMLHttpRequest) {
try {
ua = new XMLHttpRequest();
} catch(e) {
ua = false;
}
} else if(window.ActiveXObject) {
try {
ua = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
ua = false;
}
}
return ua;
}
//Request für php Abfrage
var req = createXMLHttpRequest();
//Diese function wird in der Anzeige.php in der function aufgerufen hier drauf achten das //kein () hinter dem aufruf steht
function Request() {
//führt die Datei Ausführ.php aus wenn du noch werte übergeben musst kannst du die mit //? und & ganz normal an den req.open pfad anhängen z.b.
//req.open('get','./Ausfuehr.php?wert1=hallo&wert2=test');
req.open('get', './Ausfuehr.php');
req.onreadystatechange = handleResponse;
req.send(null);
}
function handleResponse() {
//Wenn du jetzt noch eine Ausgabe von Ausführ.php benötigst kannst du dir die
//in deiner Anzeige.php in einem <div id="Ausgabe"></div> ausgeben lassen.
document.getElementById('Ausgabe').innerHTML = req.responseText;
}
wenn noch fragen sind oder was nicht funktioniert weil ich das gerade aus dem kopf ungetestet runtergetippt habe dann meld dich einfach nochmal ansonsten hoffe ich ich konnte dir helfen.PHP-Code://get beispiel von oben
echo $_GET['wert1']; // Ausgabe wäre hallo
echo $_GET['wert2']; // Ausgabe wäre test
$rechnen = 1+ 2;
echo $rechnen;
-
Danke. Das ist schon sehr hilfreich. Eine Frage habe ich noch. Kann ich nun bei diesem Klicken auf den Button eine Variable von Anzeige.php an Ausfuehr.php per POST übergeben, so das in Ausfuehr.php mit der Variable gearbeitet wird, wenn man auf den Button klickt? Das wäre jetzt mein letztes Problem.

LG Peter
-
09.09.08 15:36 #5
- Registriert seit
- Feb 2007
- Beiträge
- 74
Jo klar geht das

Parameter per GET:
Parameter per POST:PHP-Code:function Request() {
req.open('get', './Ausfuehr.php?wert1=hallo&wert2=test');
req.onreadystatechange = handleResponse;
req.send(null);
}
Und in PHP kannst du dann einfach per $_POST['wert1'] auf den Wert zugreifen.PHP-Code:function Request() {
req.open('post', './Ausfuehr.php');
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
req.onreadystatechange = handleResponse;
req.send('wert1=hallo&wert2=test');
}
-
Hallo nochmal,
danke mal wieder für die gute Antwort.
Werden dann alle PHP Variablen aus der Anzeig.php an Ausfuehr.php übermittelt oder welche Variablen werden dann gesendet? Müssen die Variablen vielleicht an einer bestimmten Stelle in der Anzeig.php stehen? Sorry wenn ich ein bisschen blöd frage, aber mit AJAX hatte ich bis lang nicht viel zu tun.
-
10.09.08 10:58 #7
- Registriert seit
- Feb 2007
- Beiträge
- 74
Es werden nur die Variablen übermittelt die du in die Parameter einträgst.
Ein Beispiel:
Anzeig.php
Du hast 2 Javascript Variablen.
Diese kannst du per GET oder POST über AJAX an die Ausfuehr.php übergebenPHP-Code:var hallo = "Hallo";
var welt = "Welt!";
Ausfuehr.php:PHP-Code:// GET
req.open('get', './Ausfuehr.php?wert1='+ hallo +'&wert2='+ welt);
// POST
req.open('post', './Ausfuehr.php');
req.send('wert1='+ hallo +'&wert2='+ welt);
Diese 2 Variablen kannst du dann so ausgeben
Das sind natürlich alles nur Codeschnipsel und kein kompletter Code.PHP-Code:// GET
echo $_GET['wert1']." ".$_GET['wert2']; // Ausgabe: Hallo Welt!
// POST
echo $_POST['wert1']." ".$_POST['wert2']; // Ausgabe: Hallo Welt!
Ähnliche Themen
-
Button Befehl an die Db senden
Von AppleSeed im Forum .NET DatenverwaltungAntworten: 3Letzter Beitrag: 18.09.07, 10:43 -
SQL/PHP-Befehl per Button
Von vsitor im Forum PHPAntworten: 7Letzter Beitrag: 06.05.06, 12:58 -
Button nach bestimmter Zeit Aktion durchführen lassen
Von Raetsel im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 05.04.05, 23:54 -
onmouseover an bestimmter Position in einem Bild
Von tansamalaja im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 09.05.04, 00:26 -
Der Befehl <button> in Opera
Von santange im Forum HTML & XHTMLAntworten: 9Letzter Beitrag: 18.02.04, 17:02





Zitieren

Login





