bouton et include

Eléphant du PHP | 110 Messages

26 janv. 2008, 01:32

bonjour j'aimerais declencher avec un bouton un include("jjh.php") dans ma page
je code de la facon suivante
<form name="bt_sup" id="bt_sup" method="post" action="<?php include("ajout_invites.php");?>">
<input name="ajout" type="submit" value="ajouter" >
</form>
bien évidement ca ne marche pas :lol: a part les evenement bt submit et le javascript je n'arrive pas a declencher d'evenements avec un bt type buton j'ecris ca :
 <input name="ajout" type="buton" value="ajouter"  action="<?php include("ajout_invites.php");>">
et bien ca marche tjrs pas :wink:
je comprend pas bien comment declencher du php avec ces boutons type "buton"
merci

Mammouth du PHP | 1885 Messages

26 janv. 2008, 06:29

PHP est exécuté par le serveur avant l'envoi de la page à ton navigateur.
Tu ne peux donc pas exécuter de PHP via Javascript comme tu désires le faire.
Il faudra revoir ta méthode.
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphant du PHP | 110 Messages

26 janv. 2008, 11:42

je suis d'accord mais dans la deuxième solution il n'y pas de javascript et la je sèche aussi
merci A+

ViPHP
ViPHP | 4039 Messages

27 janv. 2008, 01:38

je suis d'accord mais dans la deuxième solution il n'y pas de javascript et la je sèche aussi
merci A+
:?:

Il faudra bien revoir ses bases.. le php s'exécute côté serveur.. une fois la page affiché chez le client php ne peut plus rien faire. Il a tout simplement déjà fini ce qu'il avait à faire, et est parti boire un bon café. Il ne reviendra que si l'internaute demande une nouvelle page, une autre page.

Tout le contraire du JS, qui ne s'exécute que chez l'internaute. et on ne peut pas simplement faire interagir PHP et JS, puisque dans la majorité des cas il ne se parlent même pas. :?

Pour ce qui est de ta deuxième solution (s'il s'agit bien de ton deuxième bout de code), c'est (sans vouloir être méchant, mais il faut dire ce qui est) un peu n'importe quoi. l'élément input (référence) n'a aucune propriété "action", et button s'écrit avec 2 t's (je sais, je chipote :wink: )

La seule façon de "provoquer" un include sur ta page, c'est d'avoir un lien du type "http://www.chezmoi.com/mapage.html?incl ... nvites.php", qui va alors, si c'est prévu dans le code, impliquer l'inclusion de la page demandée, parce qu'on lui transmet l'info (a noter que l'exemple est didactique), dans une nouvelle page.

mais dynamiquement, tu ne peux pas "inclure" de code php sur ta page (déjà rien que parce que sur la page que tu vois, y'a pas de code php. nulle part. Le navigateur ne sait même pas que ça vient de php.).
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 271 Messages

27 janv. 2008, 02:00

Pour preuve affiche le code source de ta page et tu verras apparaître le code html, le code javascript, éventuellement le css s'il y en a et les données que tu fais afficher via ton code php. Mais aucune ligne en php.
Patience et obstination sont des qualités !

Eléphant du PHP | 110 Messages

27 janv. 2008, 12:17

merci de l'intérêt que vous portez a ma question.
on me dit tu ne peut pas utiliser include() dynamiquement,dommage!
je comprend pas bien a quoi servent les boutons html si on ne peut pas leur associer d'action php, et que ds un même form les boutons de type submit feront tous la même chose.j'ai bien compris qu'on pouvait leur mettre du javascript qui s'exécute coté client contrairement a php.
alors ds mon problème où, je cherche dynamiquement après un évènement de type bouton a ajouter un champ formulaire input supplémentaire je n'ai que la solution d'envoyer le form avec l'évènement submit et de recharger une page complète, contenant mon ancienne page plus le champ input supplémentaire et si l'utilisateur veut enocre un champs sup ?
en fait ce que je cherche a faire, c'est la même chose que phpmyadmi... lorsque ds une base de donnée sql il nous propose d'ajouter par ex 5 champs sup. ca ca doit etre codé en php, non ?
merci pour vos lumieres
si ca continue je retourne a flash :lol:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

27 janv. 2008, 16:30

Il est possible d'ajouter des champs dynamiquement MAIS en passant par javascript... exemple 100% javascript.

Pour appeler un fichier .php tu peux passer par ajax (donc toujours javascript).

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 110 Messages

28 janv. 2008, 00:03

slt a toutes et a tous
après une longue journée de recherche sur le net ds les bouquins et bien oui ! je crois avoir resolue mon problème.
on peut utiliser plusieurs bouton ds le même form et déclencher des action php avec ces meme boutons.
il suffit d'appeler le fichier php precise ds le action du form par la fonction submit de chaque bouton et de traiter l'information ds ce fichier en récupérant les élément de $_POST qui nous dit quel bouton a était clicqué en nous renvoyant son nom et sa valeur :lol: il suffit ensuite a l'aide de boucle if ou switch de traiter l'information ouf.
un gd merci a tous ceux qui sur cette toile nous laisse des mine d'or
voici un lien qui vous éclairera
http://www.zdnet.fr/builder/programmati ... 6-1,00.htm
et tout ca que PHP
A+

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

28 janv. 2008, 00:15

a l'aide de boucle if
"if" n'est pas une boucle mais une structure (instruction) conditionnelle

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

28 janv. 2008, 11:56

on peut utiliser plusieurs bouton ds le même form et déclencher des action php avec ces meme boutons.
il suffit d'appeler le fichier php precise ds le action du form par la fonction submit de chaque bouton et de traiter l'information ds ce fichier
Attention, on ne met qu'un submit et qu'une seule action par formulaire !
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

d0m
Mammouth du PHP | 1141 Messages

28 janv. 2008, 12:00

Attention, on ne met qu'un submit et qu'une seule action par formulaire ![/color]
Un seul submit?

Comment faire alors si on a un choix par bouton radio d'élements et 2 boutons : modifier et supprimer?

Eléphant du PHP | 110 Messages

28 janv. 2008, 13:12

Non ! je pense qu'on peut mettre plusieurs submit ds un bouton. Ce code fonctionne bien a mes yeux de débutant a ceux de mon serveur
<form name="liste_invite" id="liste_invite" method="post" action="traitement_liste_invites.php" >
<label>NOM</label><input name="nom_invite" type="text" >
<label>prénom</label><input name="prenom_invite" type="text" >
<label>email</label><input name="email_invite" type="text" >
<br><input name="BT_envoyer" type="submit" value="envoyer">
<input name="BT_ajout" type="submit" value="ajouter" >
<input  name="BT_sup" type="submit" value="suprimer" >
</form>
car ds la variable $_POST je récupères le nom et la valeur du bt cliquer par l'utilisateur , je traite ensuite cette information ds mon fichier "traitement ...php" a l'aide de if (qui n'est pas une boucle pardon ! maitre) mais une instruction conditionnelle.
A+[/php]

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

28 janv. 2008, 15:52

Techniquement tu peux mettre deux fois un champ submit dans un formulaire, la Terre ne tremblera pas.
http://frederic.bouchery.free.fr/?2004/ ... rs-Boutons
Ok, alors fais un petit test : remplis ton form et valide en appuyant sur la touche ENTREE.
Tu as toujours le même bouton qui est pris en compte...

Quand je dis un submit par formulaire, je parle de norme du W3C et d'accessibilité de ton site web (çàd que ça passe au mieux sous tous les navigateurs).

Tu peux mettre un input submit et une balise button par contre.

NB : pour supprimer une donnée, tu n'as pas besoin d'aller sur le formulaire, normalement, puisque tu ne veux pas éditer la data. Je te propose donc d'avoir un form avec ton submit qui va modifier et en dessous un second form avec juste

input hidden : ID de l'invité
input submit : bouton supprimer
Cela fera le même effet graphique, avec les CSS, mais sera plus facile à maintenir dans le futur.

edit : Tu as en fait 3 actions possible sur le mm form ?
Comment peux-tu t'assurer que les utilisateurs ne se tromperont pas ?

Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

d0m
Mammouth du PHP | 1141 Messages

28 janv. 2008, 16:31

Il faut donc lorsque tu selectionnes un element avoir une fonction javascript qui change l'id de l'élément avec celle que tu vient de sélectionner. Niveau accessibilité on troque le 2ème submit contre du javascript.

Eléphant du PHP | 110 Messages

28 janv. 2008, 19:00

merci pour toute c'est explications
c'est en forgeant .....

j'ai pas bien compris ! tu peus mettre des input et des bouton (balises), pourrais tu approfondir un peu

j'ai teste ce que tu m'as explique et vu sur le tut de .bouchery en effet en appuyant sur le bt entree le bouton execute est le premeir declaré ds le code.

merci A+