PHP-Datei/Befehl durch JS ausführen lassen

Da dein php-code keine Antwort zurück gibt, kann es sein, dass "Schalter ein" funktioniert. Bei 404 findet er die Datei nicht dort, wo sie liegen soll.
 
Versuch mal mit console.log() zu arbeiten und schau ob deine Funktion überhaupt per JS angesprochen wird. :)
Zudem stell dein execute.js Script in den Head Bereich.

Könnte mir vorstellen dass du switchOn() bzw. switchOff() aufrufst bevor deine function überhaupt existiert. :)

Oder setz deine function wie folgt:
Code:
$(document).ready(function() {
    function switchOn() {
        $.get("SchalterEIN.php");
        return false;
    }

    function switchOff() {
        $.get("SchalterAUS.php");
        return false;
    }
});
 
Bei dem Button zum ausschalten "404 not found"
Entweder die Datei existiert nicht (was @Kalito schon schrieb) oder deine PHP-Datei sendet absichtlich einen 404-Code zurück. (Letzteres kann durchaus unabsichtlich passieren, gerade wenn man ein größeres Framework nutzt. Andersrum geht's auch: bei mir hat neulich der lokale Server konstant die index.html zurückgeliefert, auch wenn ich einen nichtexistenten Pfad /a/b/c.js angesprochen habe ;) )

Code:
$(document).ready(function() {
    function switchOn() {
        $.get("SchalterEIN.php");
        return false;
    }

    function switchOff() {
        $.get("SchalterAUS.php");
        return false;
    }
});
Das wird so sehr wahrscheinlich nicht funktionieren. Der Code wird die zwei Funktionen nur innerhalb des Kontextes der umgebenen anonymen Funktion bekannt machen. Dementsprechend werden sie nie von außen ansprechbar sein.

Wenn du sie global verfügbar haben möchtest, müsstest du
Javascript:
window.switchOn = function () { /* ... */ }
schreiben. Das ist dann aber äquivalent zu dem, wenn du die Funktionen einfach direkt in einem <script> definierst.
 
Zurück