[Résolu] Exécution d’un code php via un bouton – France Billet (Créer un compte)

  • WordPress :5.2
  • Statut : résolu
15 sujets de 1 à 15 (sur un total de 15)
  • Auteur
    Messages
  • #2281711
    doyz17
    Participant
    Initié WordPress
    12 contributions

    Bonjour,

    Ma configuration WP actuelle :
    – Version de WordPress : 5.2.4
    – Version de PHP/MySQL : 7.2.22 / 5.5.5
    – Thème utilisé : my-listing-child
    – Thème URI : https://exclumed.com/my-listing-child/
    – Extensions en place : Checkout Field Editor for WooCommerce (1.3.8), Coming Soon Page & Maintenance Mode by SeedProd (5.0.26), Contact Form 7 (5.1.4), Duplicate Post (3.2.3), Elementor (2.7.2), Essential Addons for Elementor (3.3.1), Flamingo (2.1), Forum_wordpress_fr (4.2), Insert PHP Code Snippet (1.3), iThemes Security (7.4.1), Popup Maker (1.8.11), Redirection (4.4), Smart Slider 3 (3.3.22), UpdraftPlus – Backup/Restore (1.16.17), WooCommerce (3.7.0), WooCommerce Memberships (1.13.1), WP-Optimize – Clean, Compress, Cache (3.0.11), WP Fastest Cache (0.8.9.8)
    – Adresse du site : https://exclumed.com
    – Nom de l’hébergeur : Apache

    Problème(s) rencontré(s) : Exécution d’un code php via un bouton – France Billet

     

    Je vous explique mon problème. Je travaille sur le site d’un de mes clients. Celui-ci à un partenariat avec France Billet.

    France Billet m’a envoyé un code PHP qui permet de redirigé un visiteur lorsque qu’il clique sur un bouton.

    Le code est fonctionnel :

    <?php
    $codece = 'mon_code';
    $id = $utilisateur->getIdentifiant();
    $url = 'https://<url.partenaire>.ce.francebillet.com/';
    $headers = get_headers($url.'servlets/autologon?codece='.$codece.'&id='.$id, 1);
    $jeton= $headers['jeton'];
    header('Location: '.$url.'?jeton='.$jeton);
    ?>

    Mais je ne sais pas comment l’insérer sur un bouton et encore plus avec WordPress qui ne permet pas, de base, d’exécuter un code PHP.

    Pouvez-vous m’aider sur ce point ? Cela fait plusieurs jours que je sèche sur cela et le contact francebillet n’est pas techncien et ne m’apporte pas t’aide…

    #2281749
    PhiLyon
    Modérateur
    Maître WordPress
    25685 contributions
    #2281762
    doyz17
    Participant
    Initié WordPress
    12 contributions

    Merci pour le lien. Je vais essayer de le mettre en place…

    est-ce que WordPress accepte l’ AJAX dans ces pages classiques ? J’attend par là, sans aller dans le code ?

    sinon est-ce qu’une personne a déjà travaillé avec France Billet?

    #2281763
    PhiLyon
    Modérateur
    Maître WordPress
    25685 contributions

    Pour l’Ajax un tuto https://www.seomix.fr/ajax-wordpress/

    Pour ta deuxième question il va falloir attendre, perso les billets se font rares chez moi 😆

    🙂

    #2281764
    doyz17
    Participant
    Initié WordPress
    12 contributions

    😂

    merci pour les liens en tout cas!

    reste plus qu’à s’y mettre…

    #2282180
    doyz17
    Participant
    Initié WordPress
    12 contributions

    Ça marche enfin!!! après plusieurs essais infructueux et de message d’erreur !!

    Je vous explique la “procédure”. cela aidera certainement quelqu’un un jour.

     

    1. Envoi des informations à votre contact France Billet  (url du site / IP du serveur / url de redirection en cas d’echec)
    2. votre contact vous enverra : votre url partenaire (sous la forme : https://monsite.com.ce.francebillet.com/) et votre code CE
    3. Créez un fichier à la racine et insérez-y le code suivant :
    <?php 
      require( 'wp-load.php' );
      
      $codece = 'votre-code-ce';
      $id = get_current_user_id();
      $url = 'https://monsite.ce.francebillet.com/';
      $headers = get_headers($url.'servlets/autologon?codece='.$codece.'&id='.$id, 1);
      $jeton= $headers['jeton'];
     header('Location: '.$url.'?jeton='.$jeton);
    ?>
    france billet

    Il est important d’inclure la ligne require( ‘wp-load.php’ ); car sinon vous ne pouvez pas récupérer l’ID de votre utilisateur  avec la fonction get_current_user_id();

     

    Il ne vous reste plus qu’a faire un lien (balise a) vers votre page php créée. (en fait, pas besoin d’ajax car c’est un simple lien sous forme de bouton ;))

     

    J’espère vraiment que cela aidera quelqu’un et lui éviter de galérer car il n’y a aucune info dispo sur le web.

     

    • Cette réponse a été modifiée le il y a 7 mois et 1 semaine par doyz17.
    #2282183
    PhiLyon
    Modérateur
    Maître WordPress
    25685 contributions

    Bonjour.

    Merci pour l’info.

    🙂

    #2301223
    lorytif
    Participant
    Initié WordPress
    3 contributions

    Coucou,

    J’ai exactement le même besoin que toi ^^

    Tu me sauves la vie ^^bon peut etre pas la vie ^^mais quand même. J’ai bien compris ce que tu as fait. Mais qu’as tu derriere get_current_user_id ? comment est fait le lien avec notre id et le leur ?

    • Cette réponse a été modifiée le il y a 2 mois et 3 semaines par lorytif.
    #2301226
    doyz17
    Participant
    Initié WordPress
    12 contributions

    Hello,

     

    Je récupère l’ID WordPress de mon utilisateur. 😉

     

    et le leur ? Via le jeton

    • Cette réponse a été modifiée le il y a 2 mois et 3 semaines par doyz17.
    #2301228
    lorytif
    Participant
    Initié WordPress
    3 contributions

    Oui ça j’ai bien compris ^^mais je comprends pas comment l’autologon de francebillet se fait alors que francebillet ne sait rien sur le mec qu’est connecté sur mon wordpress

    #2301230
    doyz17
    Participant
    Initié WordPress
    12 contributions

    Tu dois t’inscrire une première sur leur site après avoir été redirigé vers leur site

    #2301232
    lorytif
    Participant
    Initié WordPress
    3 contributions

    mais si ils ont deja des comptes ? ils mettent juste une fois leur login / mot de passe et c’est bon, après on ne leur redemandera plus ?

    #2301241
    doyz17
    Participant
    Initié WordPress
    12 contributions

    Bonjour,
    Oui c’est tout à fait normal.

    Le paramètre ID envoyé pour chaque utilisateur permet de lier le compte en question.
    Ex : A la première connexion du compte 12345 l’utilisateur doit créer un compte.
    Les fois suivantes il sera reconnu automatiquement.

    Bonne journée.

     

    Cordialement,

    De : La Web fabrik
    Envoyé : lundi 21 octobre 2019 16:04
    À : XXX
    Objet : Re: Information France Billet – partenariat

    Bonjour,
    Après de multiples essais et adaptation au code WordPress, il semblerait que le code soit fonctionnel.
    Cependant, est-ce normal d’obtenir une fenêtre d’inscription express (cf pj) ?

     

    Cordialement.

    Voici les échanges avec le commercial france billet 😉

    • Cette réponse a été modifiée le il y a 2 mois et 3 semaines par doyz17.
    #2301242
    PhiLyon
    Modérateur
    Maître WordPress
    25685 contributions

    @web.fabrik – Bonjour.

    Quand tu fais un copier/coller utilise Ctrl+Maj+V cela évite de récupérer le code.

    🙂

    #2301247
    doyz17
    Participant
    Initié WordPress
    12 contributions

    merci pour l’astuce 😉

15 sujets de 1 à 15 (sur un total de 15)
  • Vous devez être connecté pour répondre à ce sujet.