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 :

Retour chariot remplacé par un espace


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Par défaut Retour chariot remplacé par un espace
    Bonjour à tous,

    Je dois envoyer un certain nombre de données à un webservice en POST.
    Le webService (sur lequel je n'ai pas la main) utilise les retours chariot comme séparateur.

    Mon soucis est que php "interprète" (je ne sais pas si c'est vraiment le bon terme...) ces retours chariot et les remplace par des espace (" "). Ces espaces bloquent ensuite ma requête au niveau du webservice.

    Ma question est donc : est-il possible de spécifier un retour chariot qui ne serait pas "interprété" ?

    exemple de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $stringToPost = "Produit|250123|30-01-2013|\r\n75018|Paris|\r\nTotal|150|\r\n"; 
    echo $stringToPost;
    Le rendu :

    Produit|250123|30-01-2013| 75018|Paris| Total|150|


    J'ai essayé avec "\r", "\n", "\r\n", PHP_EOL, chr(13), chr(10), chr(13).chr(10), "<br/>" (qui du coup est interprété en tant que texte) et même un saut de ligne "manuel" (avec la barre d'entrée -_-').

    Ca fait presque 4h que je tourne sur le net pour trouver une solution mais rien...
    Merci d'avance pour vos réponses!

  2. #2
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2011
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juin 2011
    Messages : 205
    Billets dans le blog
    1
    Par défaut
    Je t'avoue avoir un peu de mal à cerner ton problème, mais pour te répondre simplement : si tu ne veux pas que des caractères dans ta chaîne soient interprétés...dis le lui en mettant des simples quotes au lieu des doubles ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $stringToPost = 'Produit|250123|30-01-2013|\r\n75018|Paris|\r\nTotal|150|\r\n';
    Ceci t'affichera la chaîne suivante sans interpréter tes retours chariots (et du coup tu enverras \r\n à ton WS).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Produit|250123|30-01-2013|\r\n75018|Paris|\r\nTotal|150|\r\n
    si ce post vous a été utile, si votre problème est résolu.
    Pensez-y !
    __________________________________
    Doc officielle PHP | FAQ PHP | Cours PHP

  3. #3
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonsoir,

    Et si tu les supprimes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $stringToPost = preg_replace(''/(\n|\r)+/, "", $stringToPost);
    A+.

  4. #4
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Par défaut
    Bonsoir à tous les deux et merci pour vos réponses. Je vais essayer détailler un peu plus mon problème :

    Un retour chariot est absolument nécessaire à la fin de chaque ligne afin que le WS comprenne mes données correctement.
    J'ai donc utilisé "\r\n" comme précisé ci dessus.

    Le problème est que ces caractères (ainsi que tous les autres cités plus haut) génèrent un espace (" ") dans les données que j’envoie.

    Mon soucis est donc le suivant : il me faut un retour chariot qui ne serait pas affiché dans mes données postées. Pensez vous cela possible?

    @k'amm : malheureusement non je ne peux pas afficher les caractères dans ma requête

    @andry.aime : ces retours chariot sont nécessaire à la bonne compréhension de ma requête par le WS, je ne peux donc pas les enlever...

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

Discussions similaires

  1. plus (+) remplacé par un espace aprés un post request !
    Par jesslegende dans le forum Langage
    Réponses: 2
    Dernier message: 03/11/2011, 15h12
  2. Tabulations remplacées par des espaces entre les balises CODE
    Par Médinoc dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 21/09/2010, 11h34
  3. Réponses: 1
    Dernier message: 24/01/2008, 11h33
  4. Souci pour remplacer les Retours chariot par <BR>
    Par ahage4x4 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 01/06/2005, 11h24
  5. Réponses: 4
    Dernier message: 24/01/2005, 15h50

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