Exécuter une partie de code sur une même page en utilisant un bouton - PHP - Programmation
Marsh Posté le 29-07-2004 à 10:32:01
t'est obligé de reload ta page pour acceder a la DB ou executer quoi que ce soit en php
Marsh Posté le 29-07-2004 à 10:35:13
ok... je pense que je vais créer un input hidden associé à un form, ainsi je saurai si le bouton est cliqué ou pas et donc exécuter le code. Merci pour ta réponse !
Marsh Posté le 29-07-2004 à 10:36:49
c'est du code php?
pourquoi mettre des hidden et tout?
sinon si tu veut mettre ton code sur la meme page met en target un $_SERVER["PHP_SELF"]
et pour verifier que ton form à été soumis, fait un if(isset($_POST["nomDuSubmit"]))
Marsh Posté le 29-07-2004 à 13:36:08
Mon but est d'envoyer les infos à la base de données que lorsque toute autre modification est faite dans les différents champs. Ca évitera de créer plusieurs entrées dans la db qui ne veulent rien dire. Donc je voulais un bouton qui ne serait utilisé qu'à cette fin, et ce une fois que l'utilisateur a terminé d'entrer ses champs. C'est pourquoi j'ai besoin d'un bouton séparé. Le premier bouton ne servant qu'à updater la page et stocker les infos dans mon objet de type T_classe en fonction des ajouts. Une fois l'utilisateur prêt, il faut envoyer ces données à la db. L'action en deux étapes est nécessaire !
C'est pour cette raison que j'utilise des input hidden ds le deuxième form qui vont récupérer les différents champs du type T_classe pour pouvoir les envoyer à la db une fois activé (seulement si le bouton submit est utilisé, ce que je vérifie bien avec isset()). Malheureusement les caractères suivant un espace éventuel sont tronqués une fois passés ds le input hidden... alors qu'en passant par des input text et textarea (champs utilisés dans le premier form pour acquérir ces données) ils ne sont pas tronqués.
Si qqu'un a une idée, mon expérience de deux semaines en PHP ne me sont pas d'une grande aide...
Merci bcp !
Marsh Posté le 29-07-2004 à 14:27:21
Je ne suis pas sur d'avoir tout suivi , mais as tu essayé de mettre le texte que tu veux faire passer en hidden entre guillemets ? Normalement, plus de problème avec les espaces !
Marsh Posté le 29-07-2004 à 16:13:31
OK !! ça fonctionne, la syntaxe correcte est la suivante :
<input type="hidden" name="name" value="<?php echo $class->author; ?>">
Marsh Posté le 29-07-2004 à 10:28:36
Je suppose que ça doit être possible... J'aimerais exécuter du code PHP sur une page html, mais seulement lorsqu'on appuie sur un bouton.
Le boulot :
Une page html présentant différents champs que l'utilisateur va remplir pour entrer différentes info. Ces infos devront :
- dans un premier temps populariser une base de donnée MySQL.
- dans un deuxième temps récupérer les données et pouvoir faire des recherches.
La récupération des données est faite, il me faut les envoyer à la DB.
Architecture de la feuille main.php:
<html><head></head><body>
<form method=post action=main.php>
- création des champs pour récupérer les données et affichage des
valeurs par défaut des champs en fction des valeurs entrées
précédement.
- bouton "update fields" qui va envoyer le form, donc recharger la
même page et donc faire un update des champs.
</form>
////////////////////////////////////////////////////////////////////
Ce que j'ai besoin :
ici un autre bouton qui va exécuter du code, mais seulement après avoir été cliqué. Je pourrais me débrouiller (je pense) avec un deuxième form et une condition sur le form pour l'exécution du code, mais je me doute bien qu'il doit y avoir moyen de n'exécuter du code qu'après click et ce sans devoir recharger toute la même page...
Ce bouton gèrerait l'accès à la DB et afficherait une page en popup pour confirmer la création des entrées...
////////////////////////////////////////////////////////////////////
</body></html>
donc en résumé :
deux questions :
-création d'un bouton qui déclencherait l'exécution d'un code sans reload de la mm feuille.
-est il possible d'ouvrir une fenêtre "message info" type windows pour informer l'utilisateur qu'il s'est passé qque chose sans devoir ouvrir et créer une autre page.
MERCI BCP A TOUS DE ME LIRE !!!! C'EST DEJA BCP !!!