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 :

Caractères de controles ascii


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut Caractères de controles ascii
    Salut pour récupérer un champs je fait un trim avec comme paramètre "\x00..\x1F"

    Tout marche nickel, cependant quand je tape un champ avec un x ils sont supprimés.

    Il doit correspondre à un ascii de cet ensemble non "\x00..\x1F"?

    Si oui lequel.

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 42
    Points : 44
    Points
    44
    Par défaut
    Je ne veux pas dire de bétise mais quand on utilise des valeurs hexadécimales en PHP (comme en C), on met 0x devant, or là je ne vois que x devant...

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut
    Je pense que ca marche aussi ma manière.

    Mais je ne comprends pas pourquoi le x est effacé dès qu'il est utilisé.

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par masseur
    je ne comprends pas pourquoi le x est effacé dès qu'il est utilisé.
    Donne-nous un exemple fonctionnel mettant en évidence le problème ;)
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut
    Ben tout simplement je récupère le nom tapé dans le formulaire, je le récupère comme ceci.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $bonbon = trim($_POST['bonbon']," \0x00 \0x01 \0x02 \0x03 \0x04 \0x05 \0x06 \0x07 \0x08 \0x09 \0x10 \0x1A \0x1B \0x1C \0x1D \0x1E \0x1F");
    ET dès que je vais dans mon formulaire et que je tape xxxx ben dans ma base y a un champ vide.

    Alors que ca marche pour tout le reste.

  6. #6
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Comment t'aider sans testcase ?
    De plus le code que tu donnes ne correspond plus à l'énoncé initial (des \0x? dans une chaîne ne risquent pas d'être reconnus...).
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  7. #7
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
        header('Content-Type: text/plain') ;
        $s = "Ax\x01" ;
        echo strlen($s), "\n" ; // 3
        $s = trim($s, "\x00\x01\x02") ;
        echo strlen($s) ; // 2
    ?>
    Ok pour moi, le "x" de $s n'est pas supprimé.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 42
    Points : 44
    Points
    44
    Par défaut
    0x10 = 16 en base 10 => enlève-le...c'est peut-etre ça ton problème non ?

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut
    De plus le code que tu donnes ne correspond plus à l'énoncé initial (des \0x? dans une chaîne ne risquent pas d'être reconnus...).
    C'était ca mon problème.

    C'est la faute à x86-master ^^

    Je rigole.
    J'ai été trop vite.

    MErci à tous ^^

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 42
    Points : 44
    Points
    44
    Par défaut
    Désolé

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 193
    Points
    193
    Par défaut
    T'inquiète, j'apprécie ton geste de venir tenter de m'aider.

    ++ pour un autre problème ^^

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

Discussions similaires

  1. Stockage de caractères accentués et ASCII (non imprimable)
    Par psychomatt dans le forum Requêtes
    Réponses: 9
    Dernier message: 08/02/2008, 17h00
  2. Caractère du code ascii 0x94
    Par lolita4882 dans le forum C++
    Réponses: 5
    Dernier message: 04/12/2007, 21h32
  3. Aide :convertir caractére vers code ascii
    Par MAXIMIX dans le forum C++
    Réponses: 2
    Dernier message: 19/08/2006, 10h46
  4. [REGEX] Récupérer tous les caractères non US-ASCII
    Par nonhosonno dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 11/08/2006, 10h02
  5. Réponses: 2
    Dernier message: 30/05/2006, 08h04

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