Accueil > Forum > > > > Signe + invisible
Signe + invisible
vendredi 25 avril 2008 à 21:02:45 |
Signe + invisible

_JMB
|
Bonjour à tous, J'ai un pb bizarre : j'ai programmé un chat sur mon site ( www.sapbm.com) avec PHP, MySQL et Javascript (Ajax) Tout va bien, sauf UNE chose : le signe "+" n'apparait pas ! Tous les autres caractères apparaissent, même ceux un peu critiques comme les guillemets, slashs etc. mais pas le signe + L'erreur semble venir de php ou mysql car j'ai testé la valeur retournée par javascript : on voit bien le signe + , par contre il n'y a rien qui s'inscrit dans la base ! Quelqu'un est-il au courant des signes + qui s'évanouissent dans la nature ? _JMB
|
|
vendredi 25 avril 2008 à 21:54:26 |
Re : Signe + invisible

Evangun
|
Hello,
au niveau des urls, le + peut être considéré comme un espace (ne me demande pas selon quelle norme...). Après il faudrait voir avec ton code, je ne sais pas à quel moment exactement il passe à la trappe.
à+
|
|
samedi 26 avril 2008 à 00:16:49 |
Re : Signe + invisible

_JMB
|
Merci pour ta réponse J'ai mis un alert() juste après l'envoi de l'objet XMLHttpRequest : pas de pb le signe + est encore là. Par contre c'est dans le traitement de la page php, quand j'envoie la fonction machin("truc.php") que ça coince... j'ai essayé de mettre un replace($string, '+', 'plus') mais ça me remplace tous les caractères ! j'ai l'impression que le + est traité comme un caractère générique... bizarre... php.ini peut-être ?
_JMB
|
|
samedi 26 avril 2008 à 00:33:37 |
Re : Signe + invisible

neigedhiver
|
Salut, Il n'y a rien dans le php.ini qui concerne le caractère +. Ni aucun autre caractère d'ailleurs. Comme il faut être inscrit pour utiliser le chat, est-ce que tu pourrais montrer un peu ton code qu'on voie où le caractère + se trouve (enfin la variable qui le contient) et comment c'est affiché tout ça ? Là, c'est pas évident de voir où peut être le problème... Sinon, concernant str_replace() : tu ne mets pas les arguments dans le bon ordre... http://fr.php.net/str_replace Neige
N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
|
|
samedi 26 avril 2008 à 00:34:47 |
Re : Signe + invisible

Evangun
|
Essaie la fonction javascript encodeURIComponent( ) sur tes données avant de les envoyer par ajax. Autrement, les envoyer par la méthode POST devrait aussi régler le problème. à+
|
|
samedi 26 avril 2008 à 03:02:58 |
Re : Signe + invisible

yoman64
|
Salut, Sans être inscrit on peut tout de même voir le code: Voici un extrait qui vient de poster_chat.js: xhr_object.open("POST", url, true); xhr_object.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); txt =document.getElementById('message'); xhr_object.send("textemessage="+escape(txt.value));Tu envois tes données en post urlencoded, donc Evangun à vu juste quand il disait que le + était remplacer par un espace. La fonction encodeURIComponent peut rêgler ton problème, sinon un replace aussi (mais préfère la fonction, puisqu'elle va remplacer tous les chars) txt = txt.replace('+','%2B'); ou txt = encodeURIComponent(txt); Juste avant d'envoyer les données avec ton objet xhr ------------------- Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ?? Et bien c'est la : www.e3b.org 
|
|
samedi 26 avril 2008 à 08:46:10 |
Re : Signe + invisible

_JMB
|
Merci à tous pour vos réponses yoman64 : j'ai essayé mais on me renvoie littéralement "%2B" à la place de "+" ! En fait le pb ne vient pas de javascript mais de PHP ! C'est PHP qui fait des siennes, j'ai ajouté une ligne après le traitement du message posté avec Ajax : $textemessage = $_POST["textemessage"]; $textemessage = str_replace($textemessage, "+", chr(43)); Et là, je vois bien le + mais il n'y a que ça ! Si je tapes par ex "azerty" il me renvoie "+" C'est comme si c'était un caractère générique style "%" en SQL... _JMB
|
|
samedi 26 avril 2008 à 08:54:12 |
Re : Signe + invisible

neigedhiver
|
str_replace() : ATTENTION A L'ORDRE DES PARAMETRES !!!!!!! Je te l'ai déjà dit ! Lis la doc, quoi... Neige
N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
|
|
samedi 26 avril 2008 à 10:19:54 |
Re : Signe + invisible

malalam
|
Hello,
je vais me permettre quelques remarques, _JMB : tout d'abord, ce ne sont ni javascript ni php qui font des leurs, c'est ton code. A moins qu'ils t'en veuillent personnellement, ce dont je doute... ;-) Bref : ne te braque pas sur un bug bizarre de php ou de javascript. Cherche la bêtise que tu as faite parce que le problème vient forcément de là. Ensuite, en 2 minutes, j'ai pris connaissance de ton post et des messages postés, et je suis allé voir ton site (j'y suis tjrs là), et déjà, plusieurs choses me sautent aux yeux. Lis correctement les documentations, car de toute évidence tu ne le fais pas correctement : tu utilises mal str_replace() pourtant très bien documentée, tu n'as pas lu, ou de travers, Neige qui t'a averti sur cette mauvaise utilisation. Et idem pour Ajax. Le 1er truc qui m'a sauté ux yeux sur ton sdite c'est que tu utilises curieusement Ajax; la page d'accueil de ton chat est soumise à Ajax sans arrêt, même quand on ne fait rien. Enfin, je pense que tu devrais montrer un peu plus de code : que fait PHP dans l'histoire du message posté sur ton chat ?
|
|
samedi 26 avril 2008 à 11:15:39 |
Re : Signe + invisible

_JMB
|
neigedhiver : Tu es sûr que tu ne confonds pas avec ereg_replace ? parce que dans ereg_replace on met la chaine en dernier et dans str_replace en premier ! donc je ne vois pas ce qui cloche... malalam : j'utilise la fonction setInterval pour faire marcher mon chat. Donc forcément, toutes les secondes la div est rafraîchie avec les données de ma base pour afficher les posts. Je reconnais que c'est artisanal : même quand on ne poste rien la div est rafraichie quand même ! Mais pourquoi diantre seul le signe + n'apparait pas ? Cela dit c'est pas très grave, sauf pour dire "a+"... J'ai une fonction poster_chat("bidule.php") qui envoie chaque message dans la BD avec du code PHP et une autre afficher_chat("machin.php") qui affiche dans une div les 15 derniers messages. C'est cette fonction qui est encapsulée dans un setInterval paramétré à 1000 millisecondes... ça te parait loufoque ?
_JMB
|
|
Cette discussion est classée dans : javascript, php, mysql, invisible, signe
Répondre à ce message
Sujets en rapport avec ce message
Utilisation des variables javascript dans php [ par bekir_net ]
Salutj'ai besoin d'utiliser des variable javascript dans du php sacahnt que j'utilise le php dans le javascript; le code suivant explique le probeleme
Utilisation des variables javascript dans php [ par bekir_net ]
salut, je veut utiliser des variables JavaScript dans du code php pour les stocker dans des bases de données.voilà le code et merci de m'aider:functio
Javascript PHP et Mysql [ par 111702 ]
Bonjour à tous, Je vous expose mon problème : J'ai une base de donnée Mysql avec 1 table et 3 champs, j'ai aussi une page en PHP qui me permet de l'al
php mysql html [ par hela31 ]
je travaille sur un site web dans mes etude gestion d une residence j ai table client table tarifs table disponibilite dans une page j ai un tableau q
MySql en PHP en RTF [ par seby20 ]
Bonjour, j'ai un script php qui fonctionne tres bien et qui appelle un document .rtf et qui insère et remplacec les $variables provenant du php.Jusque
Mise à jours de champs mysql 1+0,1 depuis requête php [ par stella2809 ]
Bonjourvoici ma question :Je souhaiterais mettre à jours un champs de table MySql valeure actuelle + 0,1 et je bug :)champs mysql : <td al
php/sql join query [ par theunknown0o ]
Bonjour tout le monde,j'essaie d'executer une requete 'join' sql dans un fichier php, mais a chaque fois j'ai une erreur,au niveau de la connexion au
mysql ne comprend pas les valeurs... [ par nanti ]
Bonjour à tous !J'essaie actuellement de gérer un diaporama en JS via une page en php.Le problème est que lorsque dans l'HTML, je place mon php, celui
Messagerie instantannée avec php+mysql [ par Kanouo ]
bonjour je suis etudiant en 3 eme année et je dois realiser pour mon projet de fin d'étude un portail intranet client/serveur mais la réalité c'est qu
connexion a mysql () easyphp) [ par angelimad ]
bonjour,via du code php j'essaye de me connecté a mysql (easyphp), l'erreur que j'ai rencontré c'est que j'ai pas le droit de me connecter a la base d
Livres en rapport
|
Derniers Blogs
CSS CONTENT STATE SELECTORS (PERSONNAL DRAFT)CSS CONTENT STATE SELECTORS (PERSONNAL DRAFT) par FREMYCOMPANY
Bonjour à tous, Je viens de publier une proposition comprenant 5 pseudo-classes pour le CSS Working Group ayant trait à l'état de chargement d'un élément (ex: IMG,VIDEO,AUDIO,OBJECT pour l'HTML.). Si le c½ur vous en dit, vous pouvez retrouver cette p...
Cliquez pour lire la suite de l'article par FREMYCOMPANY MBA : POURQUOI FAIRE ET COMMENT LE CHOISIR ?MBA : POURQUOI FAIRE ET COMMENT LE CHOISIR ? par ROMELARD Fabrice
Formation initiale Durant la formation, le découpage classique est le suivant (je donnerai les équivalences Suisse lorsque je les connaîtrais) : Ecole primaire jusqu'au Collège : Formation générale permettant d'obtenir les méthodes...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice Y'A DES ERREURS QUI PEUVENT RENDRE LE DéVELOPPEUR VIOLENTY'A DES ERREURS QUI PEUVENT RENDRE LE DéVELOPPEUR VIOLENT par Aleks
Quand on a ce genre d'erreur sans log :
Et bas on a juste envie de choper le gas de Microsoft qu'a développé ça et lui foutre des baffes de Coboye ! ...
Cliquez pour lire la suite de l'article par Aleks [HYPER-V 3] PRéSENTATION DES COMMANDLETS POWERSHELL[HYPER-V 3] PRéSENTATION DES COMMANDLETS POWERSHELL par Pierrick CATRO-BROUILLET
Avec la sortie prochaine de la Beta Consumer Preview de Windows 8, j'avais envie de revenir sur une des fonctionnalités que j'attends le plus et que, en bon geek que je suis, j'utilise déjà : Hyper-V 3 ainsi son module PowerShell.
Il y a déjà pléthor...
Cliquez pour lire la suite de l'article par Pierrick CATRO-BROUILLET IIS7 - COMPRESSION GZIPIIS7 - COMPRESSION GZIP par cyril
La compression GZIP permet d'améliorer les performances de navigation en compressant ce qu'envoie le serveur à un client. Pour comprendre comment cela fonctionne, regardons ce qu'il se passe au niveau HTTP lorsqu'un client tente d'accéder à une ress...
Cliquez pour lire la suite de l'article par cyril
Logiciels
Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning Academy System (17.1.3.0)ACADEMY SYSTEM (17.1.3.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|