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

AJAX Discussion :

Afficher une r�ponse Ajax dans un champ html input


Sujet :

AJAX

  1. #1
    Membre averti
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Avril 2020
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 30
    Localisation : France, Loz�re (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Avril 2020
    Messages : 12
    Par d�faut Afficher une r�ponse Ajax dans un champ html input
    Salut
    Je voudrais afficher le BIC d'un IBAN dans un champ input.
    J'arrive � obtenir la r�ponse ajax(j'ai test� avec firebug) qui affiche le BIC mais quand je clique sur le champ bic, le BIC ne s'affiche pas dans ce champ.
    je ne sais pas l� o� le probl�me se pose.

    Mon code curl.php pour afficher le bic:
    Code PHP : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <?php
    //Affichage des erreurs PHP
    error_reporting(E_ALL);
    ini_set('display_errors', TRUE);
    ini_set('display_startup_errors', TRUE);
     
    include_once('simple_html_dom.php');
      /* Utilisation de Curl */
     
    //On stock la valeur des variables POST
    $iban=!empty($_POST['iban']) ? $_POST['iban'] : null;
    //$iban = 'BE30293034556711';
     $url='https://www.ibancalculator.com/validate/'.$iban.'/';
    $data=array(
        'tx_valIBAN_pi1[iban]' => $iban) ;
    $fields_string = http_build_query($data);
     
    //Initialisation de curl dans $curl
    $ch = curl_init();
     
    curl_setopt($ch, CURLOPT_URL, $url); //Page sur laquelle envoyer les POST autrement dit la page vers laquelle pointe le formulaire
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,$fields_string); //On envoie les valeurs 
    curl_setopt($ch, CURLOPT_FAILONERROR, true); // Required for HTTP error codes to be reported via our call to curl_error($ch)
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
     
     
    $data = curl_exec($ch); //Recuparation de la page
    curl_close($ch);
     
    $html = file_get_html($url);
     
     
    $pattern='[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}'; //regex pour BIC EU
    preg_match_all('/'.$pattern.'/', $html->plaintext, $out);
    echo json_encode(array('bic'=>$out[0][0]));
     
    // clean up memory
    $html->clear();
    unset($html);
     
    ?>

    Mon code html:
    Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    <!DOCTYPE html>
    <html lang="fr">
    <head>
    	<meta charset="utf-8">
    	<title>Test</title>
    </head>
     
                <form action="../app/user/test" method="post">
                    <div class="form-group row">
                      <label class="col-form-label col-lg-2">IBAN</label>
                      <div class="col-lg-10">
                        <input type="text" name="iban" id="iban" class="form-control" required>
                      </div>
                    </div>
                    <div class="form-group row">
                      <label class="col-form-label col-lg-2">BIC</label>
                      <div class="col-lg-10">
                        <input type="text" name="bic" id="bic" class="form-control"  required>
                      </div>
                    </div>
     
                    <div class="text-center">
                      <button type="submit" class="btn bg-info">Test</button>
                    </div>
                </form>
     
            <script type="text/javascript" src="https://code.jquery.com/jquery-1.10.1.min.js"></script>
            <script type="text/javascript">
            $("#iban").on("blur",function(){
            //on récupére l'IBAN
                var iban = $(this).val();
                    getBIC(iban);
            
            });
            
            function getBIC(iban){
               //On prépare l'Ajax
            $.ajax({ 
                    type: "POST",
                   url:'curl.php', 
                   data: { iban:iban }, //On lui donne le nom des données à récupéré 
                    dataType: "json", //on indique le type de fichier que retourne notre url:'curl.php'
            
                     success: function(result) {
                        if(typeof(result)!="undefined" && result!=null){
                              if(result) {
                                  
                                    console.log(result);
                                    
                                    $("#bic").val(result.bic); 
                              }else{
                             /*  alert("Verifie la console") ;*/
                              }
                        } else{
                            /*  alert ("Erreur");*/
                            }
                     },
                     
                    error: function (err) {
               console.log("Erreur Ajax : ",err);
              /* alert("Erreur Ajax !  Regardez la console pour plus d’informations...");*/
            },
                     
                    });
            }
            </script>
     
        </body>
    </html>

    Lorsque je teste l'iban FR1420041010050500013M02606, voici les erreurs que j'obtiens
    Nom : form.PNG
Affichages : 882
Taille : 2,5 KoNom : 1.PNG
Affichages : 855
Taille : 17,0 KoNom : 2.PNG
Affichages : 879
Taille : 14,2 KoNom : 3.PNG
Affichages : 879
Taille : 24,6 Ko

    J'ai besoin d'aide svp
    Cordialement
    Joey

  2. #2
    Expert confirm� Avatar de Toufik83
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 506
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 506
    Par d�faut
    Salut,

    D'apr�s ce que je vois, la r�ponse renvoy�e par ton fichier php n'est pas proprement format� en "json" et c'est pour �a que $.ajax passe directement au bloc d'erreur.

    Il va falloir trouver la ligne qui g�n�re la cha�ne de caract�re "application/x-httpd......." et la supprimer, et garder seulement l'objet {"bic":"....."} afin que la r�ponse soit retourn� en json.

  3. #3
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 202
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 202
    Par d�faut
    Bonjour,
    effectivement, � quoi te sert cette ligne ?
    Code php : S�lectionner tout - Visualiser dans une fen�tre � part
    include_once('simple_html_dom.php');

  4. #4
    Membre averti
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Avril 2020
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 30
    Localisation : France, Loz�re (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Avril 2020
    Messages : 12
    Par d�faut
    Salut tout le monde,
    ligne
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    include_once('simple_html_dom.php')
    Il s'agit de la biblioth�que PHP Simple HTML DOM Parser, j'ai juste besoin du fichier simple_html_dom.php pour extraire ma cha�ne de caract�re contenant le bic.
    Pourriez-vous m'aider un peu plus s'il vous pla�t merci
    Joey

  5. #5
    Membre averti
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Avril 2020
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 30
    Localisation : France, Loz�re (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Avril 2020
    Messages : 12
    Par d�faut
    j'ai fait une mise � jour du fichier simple_html_dom.php et tout marche parfaitement, je vous remercie pour votre aide par contre je voudrais savoir comment afficher le bic dans une div et non dans un input.
    Cordialement,
    Joey

  6. #6
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 202
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 202
    Par d�faut
    je voudrais savoir comment afficher le bic dans une div et non dans un input
    de la m�me fa�on mais en utilisant la m�thode correspondant au type d'�l�ment � mettre � jour
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    // pour un <input> par exemple
    $("#bic").val(result.bic);
    // pour une <div> par exemple
    $("#bic").html(result.bic);
    Ressource :

  7. #7
    Membre averti
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Avril 2020
    Messages
    12
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 30
    Localisation : France, Loz�re (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Avril 2020
    Messages : 12
    Par d�faut
    Merci pour votre aide.
    Bonne soir�e � tous
    Joey

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 1
    Dernier message: 08/11/2008, 19h16
  2. [AJAX] Ins�rer une r�ponse ajax dans un div
    Par dzada dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 27/11/2007, 01h12
  3. R�cup�rer les valeurs d'une requ�te SQL dans un champs html SELECT
    Par tamiii dans le forum G�n�ral JavaScript
    R�ponses: 1
    Dernier message: 10/11/2007, 13h27
  4. [MySQL] Afficher une image stock�e dans un champs blob
    Par encoupe dans le forum PHP & Base de donn�es
    R�ponses: 1
    Dernier message: 08/11/2006, 12h00
  5. Afficher une Image stock�e dans un champs BLOB oracle
    Par nonaparus dans le forum Access
    R�ponses: 1
    Dernier message: 18/10/2006, 08h26

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