Partage
  • Partager sur Facebook
  • Partager sur Twitter

losange et point d'interrogation

Sujet résolu
    18 avril 2014 à 8:57:53

    Bonjour, 

    J'ai un petit code pour du ping, tout fonctionne bien mais le rapport contient des "losanges et points d'interrogation", je sais qu'il s'agit d'une anomalie d'encodage mais je ne parvient pas à trouver ou.

    Mon navigateur : Chrome et est bien en UTF-8

    Mon OS : W7

    Serveur : WAMP (avec php-5.4.15)

    Mes fichiers *.php sont bien en UTF-8 (sans BOM) avec ou sans de toute façon l'anomalie est présente.

    Mon code :

    <?php
     
    include('../includes/haut.php');
     
    if (!empty($_POST['ip'])) {
    $ip = $_POST['ip'];
     
    $ping = exec("ping -n 1 $ip", $array);
     
    foreach ( $array as $value )
      echo $value . '<br />';
      }
    ?>

    Pour ceux qui se demanderai, j'ai un formulaire qui demande l'ip et dans "haut.php" il y a bien

    "<meta http-equiv="Content-Type" content="text/html"; charset="UTF-8" />"

    Mais le rapport, enfin ce qui est affiché dans le tableau et que donc j'affiche sur la page renvoi : 

    Envoi d'une requ�te 'Ping' 127.0.0.1 avec 32 octets de donn�es�:
    R�ponse de 127.0.0.1�: octets=32 temps<1ms TTL=128

    Statistiques Ping pour 127.0.0.1:
    Paquets�: envoy�s = 1, re�us = 1, perdus = 0 (perte 0%),
    Dur�e approximative des boucles en millisecondes :
    Minimum = 0ms, Maximum = 0ms, Moyenne = 0ms

    je bloque donc ici

    -
    Edité par Plysken 18 avril 2014 à 12:00:14

    • Partager sur Facebook
    • Partager sur Twitter
      18 avril 2014 à 11:22:05

      C'est que ton système ne te renvoie pas de l'UTF-8.

      Quel OS ?

      Solutions :

      • changer la locale (pour Apache) (systèmes Unixoïde)
      • reconvertir la chaîne reçue (fonction iconv & co)
      • changer le jeu de ta page pour de l'iso/ansi

      -
      Edité par julp 18 avril 2014 à 11:45:40

      • Partager sur Facebook
      • Partager sur Twitter
        18 avril 2014 à 11:47:34

        Et des solutions proposés, qu'as-tu essayé ?

        • Partager sur Facebook
        • Partager sur Twitter

        Je ne suis plus modérateur, ne me contactez plus pour des demandes, je n'y répondrai pas.

          18 avril 2014 à 11:55:19

          En faisant 

          <?php
          
          if (!empty($_POST['ip'])) {
          $ip = $_POST['ip'];
          
          $ping = exec("ping -n 1 $ip", $array);
          
          foreach ( $array as $value ) 
          //  echo $value . '<br />'; 
            echo iconv("ISO-8859-1", "UTF-8", $value . '<br />');
            }
          ?>

          ça renvoi : 

          Envoi d'une requte 'Ping' 127.0.0.1 avec 32 octets de donnesÿ:
          Rponse de 127.0.0.1ÿ: octets=32 temps<1ms TTL=128

          Statistiques Ping pour 127.0.0.1:
          Paquetsÿ: envoys = 1, reus = 1, perdus = 0 (perte 0%),
          Dure approximative des boucles en millisecondes :
          Minimum = 0ms, Maximum = 0ms, Moyenne = 0ms

          Ce qui ne résous pas le problème :D

          Changer "la locale" je suis déjà sous Apache.

          Changer ISO ou AINSI renvoi là même chose (ou alors je m'y prend mal).

          EDIT : merci pour le temps que vous passez pour me répondre :)

          -
          Edité par Plysken 18 avril 2014 à 11:58:59

          • Partager sur Facebook
          • Partager sur Twitter
            18 avril 2014 à 13:56:42

            Merci en effet ça fonctionne.

            Sans vouloir abuser, avoir la réponse est super mais je souhaiterai savoir pourquoi ça fonctionne avec ta réponse, peux tu (ou quelqu'un d'autre) m'expliquer?

            • Partager sur Facebook
            • Partager sur Twitter
              18 avril 2014 à 14:23:28

              Bah, qu'est-ce que tu veux que je te donne comme explication ? C'est le jeu de la console windows, c'est tout.

              • Partager sur Facebook
              • Partager sur Twitter

              losange et point d'interrogation

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown