Hier ist eine Alternative mit AJAX, aber ohne jQuery, nur normales JavaScript:
Fügen Sie dies der ersten / Haupt-PHP-Seite hinzu, von der aus Sie die Aktion aufrufen möchten, ändern Sie sie jedoch von einem potenziellen aTag (Hyperlink) in ein buttonElement, damit keine Bots oder bösartigen Apps (oder was auch immer) darauf klicken.
<head>
<script>
// function invoking ajax with pure javascript, no jquery required.
function myFunction(value_myfunction) {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("results").innerHTML += this.responseText;
// note '+=', adds result to the existing paragraph, remove the '+' to replace.
}
};
xmlhttp.open("GET", "ajax-php-page.php?sendValue=" + value_myfunction, true);
xmlhttp.send();
}
</script>
</head>
<body>
<?php $sendingValue = "thevalue"; // value to send to ajax php page. ?>
<!-- using button instead of hyperlink (a) -->
<button type="button" onclick="value_myfunction('<?php echo $sendingValue; ?>');">Click to send value</button>
<h4>Responses from ajax-php-page.php:</h4>
<p id="results"></p> <!-- the ajax javascript enters returned GET values here -->
</body>
Wenn auf das buttongeklickt wird, onclickwird die Javascript-Funktion des Kopfes verwendet, um $sendingValueüber Ajax an eine andere PHP-Seite zu senden , wie in vielen Beispielen vor dieser. Die andere Seite ajax-php-page.phpsucht nach dem GET-Wert und gibt Folgendes zurück print_r:
<?php
$incoming = $_GET['sendValue'];
if( isset( $incoming ) ) {
print_r("ajax-php-page.php recieved this: " . "$incoming" . "<br>");
} else {
print_r("The request didn´t pass correctly through the GET...");
}
?>
Die Antwort von print_rwird dann zurückgegeben und mit angezeigt
document.getElementById("results").innerHTML += this.responseText;
Das +=füllt vorhandene HTML-Elemente auf und fügt sie hinzu, entfernt die +gerechten Aktualisierungen und ersetzt den vorhandenen Inhalt des HTML- pElements "results".