Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/06/2011, 17h55   #1
Invité de passage
 
Inscription : juin 2011
Messages : 10
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 10
Points : 0
Points : 0
Par défaut Invoquer une fonction php dynamiquement depuis un formulaire

Bonjour,

En 2 mots je voudrais pouvoir insérer une entrée dans une table de ma bdd lorsque l'utilisateur clique sur un bouton de mon formulaire.
Mais je veux que ce soit dynamique (pas à avoir à charger une nouvelle page ou re-chargée la page courante) !

Suis-je obliger d'utiliser Ajax?

En gros je veux appeler une fonction PHP (écrite sur la même page) lorsque mon bouton est Onclick.

Si ce n'est pas possible comment faire pour écrire dynamiquement dans ma bdd? (j'ai toujours utilisé PHP)

Merci pour vos éclaircissements.

PS: je ne met pas de code car mon problème est à mon avis plus qualitatif qu'autre chose
serge-B est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 18h12   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 011
Points : 5 011
Hello

Tu ne peux pas déclencher un trigger coté PHP sans rafraichissement de la page à moins d'utiliser Ajax.

Mais qu'a cela ne tienne, on a justement un nombre incalculable d'articles sur developpez.com qui n'attendent que toi

Cette question dénote d'une incompréhension sur la nature du langage: PHP est un langage de script exécute coté serveur - le client demande une page > apache appelle PHP > PHP produit un résultat qui est renvoyé à l'utilisateur > PHP s'arrête > FIN. JavaScript quand à lui est exécuté coté client donc il reste "en mouvement" jusqu'à ce que l'utilisateur change de page ou ferme son navigateur. Avec Ajax, il est possible d'envoyer des "sous-requêtes" - transparentes pour l'utilisateur - qui permettront de demander au serveur de recalculer des morceaux de pages (par exemple la page suivant d'un tableau paginé).
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 11h42   #3
Invité de passage
 
Inscription : juin 2011
Messages : 10
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 10
Points : 0
Points : 0
@Benjamin Delespierre

Hi guy
Merci pour ta réponse
et sorry que mon temps de réponse soit à peu long

Je me suis peut-être un peu mal exprimé.
Evidemment je comprend que PHP est un langage interprété par un serveur
donc ça me parait évident que le navigateur doit rechargé la page.

En revanche Ajax, me semble-t-il permet de faire des requêtes désynchronisées vers le serveur isn't it?
So, peut-on par exemple faire des requêtes vers une DB?
Ce n'est pas tant une fonction PHP que je voulais invoquer mais plus les instructions SQL que celle-ci contenait!
En effet quand je relis mon post je vois que je me suis TRES mal exprimé.

Sur ce je m'en vais lire tes liens.

Me préconises-tu d'aller chercher du coté de AJAX + BDD ou plutôt JavaScript + BDD ?

Bonne journée ensoleillée
serge-B est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 11h48   #4
Invité de passage
 
Inscription : juin 2011
Messages : 10
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 10
Points : 0
Points : 0
Quoi que quand j'y réfléchi il est surement possible d'invoquer un script PHP décentralisé vers une autre page...
serge-B est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 12h35   #5
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 011
Points : 5 011
Citation:
So, peut-on par exemple faire des requêtes vers une DB?
Pas directement, il faut appeller un script PHP qui s'en chargera et qui renverra les données à JavaScript (en Json ou XML généralement).

T'imagine la faille de sécurité béante comme le grand canyon si JavaScript (le client donc) pouvait aller taper directement dans la base de données
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 14h11   #6
Invité de passage
 
Inscription : juin 2011
Messages : 10
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 10
Points : 0
Points : 0
oui ce serait en effet problématique...

donc dans mon formulaire je met une balise contenant un champ onClick par exemple qui appelle une fonction javascript qui exécute un script PHP de mon serveur

et si je passe un array en paramètre de ma fonction javascript j'ai la possibilité de le récupérer convenablement parce qu’apparemment j'ai du mal (juste pour savoir si c ma faute ou si je laisse tomber)

en gros j'ai un tableau $tab associatif et dans mon code PHP je balance

Code :
1
2
3
4
 
<?php
   echo '<input type="submit" name="submit" onClick="maFonctionJS('.$tab.')">';
?>
serge-B est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 14h37   #7
Invité de passage
 
Inscription : juin 2011
Messages : 10
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 10
Points : 0
Points : 0
non encore une fois ma question est stupide puisque PHP est interprété sur le serveur

en fait je rencontre un petit soucis quand je transmet mes arguments qui sont des chaines de caractères

EDIT: j'ouvre un autre topic ça n'a rien à voir
serge-B est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 15h56   #8
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 011
Points : 5 011
Comme ça:
Code :
1
2
3
<?php
   echo '<input type="submit" name="submit" onClick="maFonctionJS('.json_encode($tab).')">';
?>
Un tableau PHP est ainsi converti en JavaScript, cependant c'est pas tellement sexy comme ça. Tu peux aller piocher des idées par là: http://www.phpied.com/json-data-island/
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 16h11   #9
Invité de passage
 
Inscription : juin 2011
Messages : 10
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 10
Points : 0
Points : 0
d'accord merci de ton aide
serge-B est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h02.


 
 
 
 
Partenaires

Hébergement Web