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

WordPress PHP Discussion :

Passer une variable dans URL (ajax)


Sujet :

WordPress PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 203
    Points : 82
    Points
    82
    Par défaut Passer une variable dans URL (ajax)
    Bonjour,

    Je souhaite inclure la variable get_template_directory_uri() dans mon script ajax de cette façon mais cela ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $.ajax({
    url: "<?php get_template_directory_uri()?>contact.php", type: "POST",
    J’ai l’impression qu’on ne peut pas ajouter du php dans « URL »

    Je tiens à dire que mon formulaire php fonctionne bien, mais pas l’ajax dans « success » et qu’habituellement, je mets juste le chemin de mon script php comme ceci et cela fonctionne bien donc sur une page php en dehors de wordpress :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    $.ajax({
            url: "contact.php",
            type: "POST",
    Je vous remercie de votre aide.

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 405
    Points : 4 841
    Points
    4 841
    Par défaut
    get_template_directory_uri() est une fonction js ?

    Si oui, et si ta fonction retourne bien une variable, pourquoi alors ne pas la mettre directement dans data d'ajax ?

    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $.ajax({
            url: "contact.php",
            type: "POST",
            data: { params : get_template_directory_uri() }

    puis pour récupérer la valeur de params dans le fichier php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php 
    $pa=$_POST["params"];
    ?>

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 203
    Points : 82
    Points
    82
    Par défaut
    Merci je vais regarder ça.

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 380
    Points : 10 410
    Points
    10 410
    Par défaut
    Salut,

    Toufik83 a répondu à ta question, pour peu que get_template_directory_uri() soit bien une fonction js.

    J'ajoute au passage qu'il faut éviter au maximum de mettre du code php dans du code javascript (même si dans l'absolu cela peut fonctionner) car cela créé une dépendance ce qui implique aussi que tu ne pourras pas externaliser tes scripts par exemple.

    Si tu voulais faire passer des valeurs ou un tableau de valeurs de php vers javascript dès l'affichage de la page (je veux dire sans requête ajax supplémentaire) tu peux par exemple faire afficher ces valeurs en php dans un input de type hidden, puis ensuite récupérer la valeur de cet input avec javascript.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    pour ceux qui ne savent pas (), get_template_directory_uri() est une fonction PHP de WordPress.

    Cette fonction :
    • contient un return : il faut donc utiliser echo pour l'afficher
    • à priori, il ne contient pas de / à la fin : il faut donc l'ajouter


    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $.ajax({
    url: "<?php echo get_template_directory_uri(); ?>/contact.php", type: "POST",...

    CONSEIL : AFFICHER le code HTML généré ("Ctrl"+"U") pour vérifier...
    Dernière modification par Invité ; 09/03/2019 à 17h43.

  6. #6
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 405
    Points : 4 841
    Points
    4 841
    Par défaut
    jreaux62 ha ! merci pour l'info , je ne connais pas les fonctions de wordpress parce que je ne l'ai jamais utilisé.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Autre info importante :


  8. #8
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 203
    Points : 82
    Points
    82
    Par défaut
    Merci pour vos réponses, mais apparemment get_stylesheet_directory_uri ne fonctionne pas le echo me renvoi la même chose, il n'accepte pas de php alors j'ai fait :

    url: "wp-content/themes/TBA-CHILD/contact.php",

    et cela fonctionne bien.

    Merci encore.

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

Discussions similaires

  1. Passer une variable dans une redirection url
    Par Hippocrène dans le forum AngularJS
    Réponses: 1
    Dernier message: 17/09/2015, 11h56
  2. Passer une variable dans un objet URL
    Par Mouke dans le forum Android
    Réponses: 2
    Dernier message: 16/04/2014, 08h31
  3. [MySQL] Passer une variable dans l'URL
    Par Budy123 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 31/01/2011, 15h09
  4. [MySQL] passer une variable dans url
    Par mussara dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/03/2007, 22h37
  5. [Struts] Passer une variable dans l'url
    Par pilz dans le forum Struts 1
    Réponses: 2
    Dernier message: 30/03/2005, 15h23

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