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

jQuery Discussion :

Encodage de données post / serialize()


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    710
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 710
    Par défaut Encodage de données post / serialize()
    Bonjour,

    Je suis en train de développer un formulaire composé de 3 champs :
    - catégorie
    - titre
    - texte

    Le champs texte intègre le plugin CKEditor qui permet de faire de la mise en forme de texte + insertion image et vidéo.

    Une fois que les champs sont complétés, je fais un $.post pour enregistrement en base de données.

    Le souci est le suivant : Lors de l'intégration d'une vidéo, le code associé est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div class="embeddedContent oembed-provider- oembed-provider-youtube" data-align="center" data-maxheight="315" data-maxwidth="560" data-oembed="https://youtu.be/vjzWGxrP_rY" data-oembed_provider="youtube" data-resizetype="custom" style="text-align: center;"><iframe allowfullscreen="true" allowscriptaccess="always" frameborder="0" height="315" scrolling="no" src="//www.youtube.com/embed/vjzWGxrP_rY?wmode=transparent&amp;jqoemcache=0sWQ4" width="560"></iframe></div>
    A la fin de ce code, j'ai le caractère & (...transparent&amp;jqoemcache=0sWQ4...), donc si j'envoie ça à mon script php, via la variable POST, le & sera considéré comme un séparateur de variable (var1=val1&var2=val2&var3=val3...) et va m'empêcher d'enregistrer la totalité de la valeur.

    Pour éviter cela, j'ai décidé d'utiliser la fonction serialize() et voici le résultat de la serialization :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    %3Cdiv+class%3D%22embeddedContent+oembed-provider-+oembed-provider-youtube%22+data-align%3D%22center%22+data-maxheight%3D%22315%22+data-maxwidth%3D%22560%22+data-oembed%3D%22https%3A%2F%2Fyoutu.be%2FvjzWGxrP_rY%22+data-oembed_provider%3D%22youtube%22+data-resizetype%3D%22custom%22+style%3D%22text-align%3A+center%3B%22%3E%3Ciframe+allowfullscreen%3D%22true%22+allowscriptaccess%3D%22always%22+frameborder%3D%220%22+height%3D%22315%22+scrolling%3D%22no%22+src%3D%22%2F%2Fwww.youtube.com%2Fembed%2FvjzWGxrP_rY%3Fwmode%3Dtransparent%26amp%3Bjqoemca…3E%3C%2Fiframe%3E%3C%2Fdiv%3E%0D%0A%0D%0A%3Cp%3E%26nbsp%3B%3C%2Fp%3E%0D%0A
    Si le & semble bien converti en %26, juste après, dans la string j'ai ça : 26amp%3Bjqoemca…3E%3C%

    Pour ces ... au lieu de la fin du mot "cache" ? Du coup le texte n'est pas complètement enregistré et la vidéo n'est pas correctement affichée. Comment faire pour convertir correctement cette chaîne et comment faire pour passer en jQuery les variables au script php sans que les valeurs soient altérées ?

    Merci de vos idées / aide / conseils !

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    utilise encodeURIComponent au lieu du serialize et urldecode coté serveur
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

Discussions similaires

  1. Problème d'encodage avec jquery post et serialize (IE8)
    Par Aerofly dans le forum ASP.NET MVC
    Réponses: 1
    Dernier message: 05/11/2012, 16h07
  2. Problème encodage des données POST lues
    Par cheprod dans le forum Apache
    Réponses: 2
    Dernier message: 12/11/2007, 09h59
  3. encodage des données lors du post en AJAX
    Par jibouze dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 19/04/2006, 21h26
  4. Envoyer des données POST à une page !
    Par wishmastah dans le forum Langage
    Réponses: 11
    Dernier message: 11/04/2006, 19h37
  5. Récupérer des données postés
    Par doudoustephane dans le forum Langage
    Réponses: 2
    Dernier message: 02/11/2005, 22h11

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