Appeler une fonction PHP après onClick HTML événement
But:
Appeler une fonction PHP pour lire des données à partir d'un fichier et de le réécrire. J'ai utilisé PHP uniquement pour ce but - FileIO - et je suis nouveau en PHP.
Solution?
J'ai essayé à travers de nombreux forums et je savais que nous ne pouvons pas l'atteindre par la voie normale: événement onClick > appel de la fonction. Comment pouvons-nous le faire, il existe d'autres moyens, en particulier dans mon cas?
Mon code HTML et du code PHP est sur la même page: Admin.php.
C'est la partie HTML:
<form>
<fieldset>
<legend>Add New Contact</legend>
<input type="text" name="fullname" placeholder="First name and last name" required /> <br />
<input type="email" name="email" placeholder="[email protected]" required /> <br />
<input type="text" name="phone" placeholder="Personal phone number: mobile, home phone etc." required /> <br />
<input type="submit" name="submit" class="button" value="Add Contact" onClick="" />
<input type="button" name="cancel" class="button" value="Reset" />
</fieldset>
</form>
C'est PHP partie:
function saveContact()
{
$datafile = fopen ("data/data.json", "a+");
if(!$datafile){
echo "<script>alert('Data not existed!')</script>";
}
else{
...
$contact_list = $contact_list . addNewContact();
...
file_put_contents("data/data.json", $contact_list);
}
fclose($datafile);
}
function addNewContact()
{
$new = '{';
$new = $new . '"fullname":"' . $_GET['fullname'] . '",';
$new = $new . '"email":"' . $_GET['email'] . '",';
$new = $new . '"phone":"' . $_GET['phone'] . '",';
$new = $new . '}';
return $new;
}
Un oeil à ces code, je tiens à appeler saveContact lorsque les gens cliquent sur le bouton Ajouter un Contact. On peut recharger la page si besoin. Pour info, j'utilise JQuery, HTML5 en page.
Merci,
- u devrez utiliser de l'ajax. vous ne pouvez pas exécuter un serveur de fonction est appelé par un client gestionnaire d'événements côté
- Où est votre javascript ??? vous ne pouvez pas appeler PHP formulaire HTML événements tels que onClick ... vous avez besoin d'AJAX pour faire l'affaire pour vous
- Oui, d'accord, mais je veux aussi trouver une autre solution à côté de l'AJAX un. Regarder vers le bas et vous pouvez y trouver quelques la peine d'essayer 🙂 @TR / min
- Hmm je n'ai rien sur mon code javascript, mais le chargement d'une table. Merci @Baba
Vous devez vous connecter pour publier un commentaire.
Il existe deux façons. la première consiste à actualiser la page à l'aide d'une forme typique de soumission
La deuxième solution serait d'utiliser AJAX. faire que vous voulez complètement seprate le traitement du formulaire dans un fichier séparé:
//process.php
Et puis dans votre code html/js
action="<?php echo $_SERVER['PHP_SELF']?>"
Vous n'avez pas besoin de javascript pour le faire. Il suffit de supprimer le onClick et écrire le php
Admin.php
fichier comme ceci:Pensé que je n'aime pas le PHP bits. Voulez-vous VRAIMENT créer un fichier de contacts? Il serait BEAUCOUP préférable d'utiliser une base de données mysql. En outre, l'ajout de quelques pauses pour que le fichier doit être sympa aussi...
Autre pensée, IE ne supporte pas d'espace réservé.
il se porte comme un charme, le javascript est à l'intérieur d'un php while