J'ai créé une page appelée functioncalling.php qui contient deux boutons, Soumettre et Insérer . En tant que débutant en PHP, je souhaite tester quelle fonction est exécutée lorsqu'un bouton est cliqué. Je veux que la sortie soit sur la même page. J'ai donc créé deux fonctions, une pour chaque bouton. Le code source de functioncalling.php est le suivant:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<body>
<form action="functioncalling.php">
<input type="text" name="txt" />
<input type="submit" name="insert" value="insert" onclick="insert()" />
<input type="submit" name="select" value="select" onclick="select()" />
</form>
<?php
function select(){
echo "The select function is called.";
}
function insert(){
echo "The insert function is called.";
}
?>
Le problème ici est que je n'obtiens aucune sortie après avoir cliqué sur l'un des boutons.
Où est-ce que je me trompe exactement?
Réponses:
Oui, vous avez besoin d'Ajax ici. Veuillez vous référer au code ci-dessous pour plus de détails.
Changez votre balisage comme ceci
jQuery:
Dans ajax.php
la source
Les clics sur les boutons sont côté client alors que PHP est exécuté côté serveur , mais vous pouvez y parvenir en utilisant Ajax :
Dans votre fichier PHP:
la source
Vous devez faire en sorte que le bouton appelle la même page et dans une section PHP, vérifiez si le bouton a été enfoncé:
HTML:
PHP:
la source
Vous ne pouvez pas appeler des fonctions PHP comme cliquer sur un bouton depuis HTML. Parce que HTML est côté client tandis que PHP s'exécute côté serveur.
Soit vous devez utiliser un peu d'Ajax, soit le faire comme dans l'extrait de code ci-dessous.
Vous devez publier les données de votre formulaire, puis vérifier le bouton approprié sur lequel vous avez cliqué.
la source
Pour afficher $ message dans votre entrée:
Pour utiliser functioncalling.php comme fichier externe, vous devez l'inclure d'une manière ou d'une autre dans votre document HTML.
la source
Essaye ça:
la source
Vous pouvez écrire comme ça en JavaScript ou jQuery Ajax et appeler le fichier
la source
L'
onclick
attribut en HTML appelle des fonctions JavaScript, pas des fonctions PHP.la source
J'étais coincé dans cela et je l'ai résolu avec un champ caché:
Dans
value
vous pouvez ajouter ce que vous voulez ajouter.Dans test.php, vous pouvez récupérer la valeur via
$_Post[ID]
.la source
ID
être cité$_Post[ID]
? PHP supporte-t-il les mots bruts, comme en Perl?Utilisez un appel récursif où l'action de formulaire s'appelle elle-même. Ensuite, ajoutez du code PHP sous la même forme pour l'attraper. Dans
foo.php
votre formulaire fera appelfoo.php
àpost
Une fois que le formulaire a été soumis, il s'appellera (
foo.php
) et vous pouvez l'attraper via la variable prédéfinie PHP$_SERVER
comme indiqué dans le code ci-dessousla source
Voici un exemple que vous pourriez utiliser:
la source
Vous pouvez simplement le faire. En php, vous pouvez déterminer le clic sur le bouton en utilisant
Par conséquent, vous devez modifier votre code comme suit:
la source