IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Invoquer une fonction php dynamiquement depuis un formulaire


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 11
    Points
    11
    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

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    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é).

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    @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

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    Quoi que quand j'y réfléchi il est surement possible d'invoquer un script PHP décentralisé vers une autre page...

  5. #5
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    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

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php
       echo '<input type="submit" name="submit" onClick="maFonctionJS('.$tab.')">';
    ?>

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    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

  8. #8
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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/

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 11
    Points
    11
    Par défaut
    d'accord merci de ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/02/2010, 06h34
  2. Javascript et php - Creer une fonction javascript dynamiquement
    Par eppo81 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/05/2009, 20h46
  3. select/insert depuis une fonction PHP et SOAP
    Par roblescriso dans le forum XQUERY/SGBD
    Réponses: 4
    Dernier message: 06/06/2008, 11h06
  4. Appel d'une fonction PHP dans un formulaire
    Par Mut dans le forum Langage
    Réponses: 4
    Dernier message: 27/08/2007, 11h34
  5. Réponses: 41
    Dernier message: 27/08/2006, 15h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo