Wie kann ich beim html <button> drücken eine php Variable setzen?


11.09.2022, 21:39

Vielleicht kann man ja Gebrauch von der isset oder !empty Funktion machen.

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

a) Du verwendest einen Link, den du mit CSS äußerlich wie einen Button gestaltest.

<a href="yourscript.php?set">Click me</a>

yourscript.php:

if (isset($_GET['set'])) {
  // set variable
}

b) Du schickst mit JavaScript einen Request an dein PHP-Skript. Im folgenden Beispiel schicke ich erneut via GET-Methode. Das PHP-Skript kann sich also genauso gestalten, wie bei Lösungsweg a.

<button id="set-button">Click me</button>
<script>
  document.getElementById("set-button").addEventListener("click", evt => fetch("yourscript.php?set"));
</script>

Bedenke allerdings, dass das Skript bei beiden Lösungswegen neu interpretiert wird. Du kannst nur Zustände ändern, die zuvor persistent gespeichert wurden (sei es in der Session, als Cookie, in einer Datenbank, o.ä.).

crRaphi  11.09.2022, 22:20

Ich nehme jedoch auch an, dass sich die Seite dadurch neu aufbaut.

0
regex9  11.09.2022, 22:22
@crRaphi

Im ersten Fall ja (das PHP-Skript müsste daher noch zurückleiten oder ein HTML-Dokument enthalten), im zweiten Fall nicht.

0