"Connexion interrompue" en fonction du contenu de ma variable POST

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 12:13

Bonjour à vous
J'ai une erreur de l'espace, un des grands mystères de notre monde. Accrochez-vous. J'ai une interface administrateur qui permet de modifier les contenus des sites à l'aide d'un WYSIWYG (un éditeur de texte javascript).

Lors de l'enregistrement, la page s'appelle elle-même en passant le nouveau contenu HTML de l'élément modifié dans une variable POST. Aucun problème pour n'importe quel code HTML transmi, je m'en sert depuis de longs mois.

Mais je découvre avec stupeur que les serveurs me renvoient tous une erreur "Connexion interrompue" quand le code HTML contient une balise <object>, soit lors de l'ajout d'une animation. Aucun problème sans ce type de balise. Celà se produit sur tous les serveurs, et tous les navigateurs... J'ai réalisé un script super basique pour voir si mon WYSIWYG y serait (encore) pour quelquechose, mais le résultat est le même avec un formulaire des plus simples !

Mince alors, les serveurs savent lire les chaines de caractères contenues dans les variables, et faire le tri ?? Ils sont objectophobes ?

Là, j'ai vraiment besoin d'aide et d'un p'tit kawa.

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

28 oct. 2008, 13:30

Y a-t-il la même chose si tu passes le mot object mais pas dans une balise ?
Fais tu un strip_tags
http://fr.php.net/manual/fr/function.strip-tags.php ?
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

ViPHP
ViPHP | 5924 Messages

28 oct. 2008, 13:44

Mine ton code de points de débuggage (écrit dans un fichier par exemple) pour voir où l'exécution s'arrête…

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 15:07

Yop ! Merci pour vos réponses.

C'est là que le bas blesse, je ne peux pas faire de point de débuggage car il n'y a même pas de traitement de la variable : la page cible n'est jamais atteinte.

Celà se produit dès que la variable contient
<object
N'importe ou. Cette seule et unique chaine de caractères fait planter l'appel de la page en "Connexion interrompue". Pas de traitement donc.

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 15:09

J'oubliais : ca fonctionne hors ligne. J'utilise VertrigoServ pour le développement.
Est-il possible que les serveurs en ligne soient configurés pour lire les variables POST et refuser celles contenant une chaine de caractère contenant <object> ? Ca me paraît un peu gros : /

ViPHP
ViPHP | 2287 Messages

28 oct. 2008, 15:14

Es-tu bien sûr que ça ne peut pas venir du navigateur ? D'ailleurs, quel navigateur(s) as-tu utilisé(s) pour faire apparaître ce problème ?
if(!@work()){ Nespresso(); } else { what(); }
______________________________

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 15:26

Même problème sur Firefox, IE, Flock... (suis sous Windows)

ViPHP
ViPHP | 4674 Messages

28 oct. 2008, 15:52

Hey :),

As-tu essayé la solution de mere-teresa ?
Sinon, est-ce qu'on pourrait voir les textes que tu essayes ?
As-tu essayé un textarea tout simple dans lequel tu repasses (ré-envoies) tes exemples/tests. Est-ce que tu as la même erreur ?
Flock c'est pas un navigateur … c'est une blague :P.
On peut tester en ligne ?
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

28 oct. 2008, 16:01

Yop ! Merci pour vos réponses.

C'est là que le bas blesse, je ne peux pas faire de point de débuggage car il n'y a même pas de traitement de la variable : la page cible n'est jamais atteinte.

Celà se produit dès que la variable contient
<object
N'importe ou. Cette seule et unique chaine de caractères fait planter l'appel de la page en "Connexion interrompue". Pas de traitement donc.
Tu parles de variable....donc une page PHP qui serait atteinte ?

J'attends plus de détails : ton javascript transforme-t-il ton formulaire ? Si oui, à quel point ? Est-ce que ton Rich Editor squizze le mot object (qui est un mot réservé en Javascript) ?
Est-ce que c'est juste la balise ?
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 16:05

D'accord pour Flock ;)

Désolé, mais pour tester il faudrait vous filer l'accès à l'admin. J'y tiens moyennement :p
Je suis athée, alors malgré mon respect pour Théresa, je ne peux accéder à cette solution.
J'ai fait un formulaire tout simple, effectivement, même problème. Ce qui est fou c'est que j'essaie sur différents serveurs, chez différents prestataires...

Je fais les tests avec des lecteurs exportables Dailymotion :
ICI, le code

EDIT : j'ai le meme message d'erreur SUR CE FORUM ! en essayant de joindre le code source HTML que je cherche à intégrer (lecteur exportable dailymotion). Héhéhahaheuh....

PAR CONTRE : Je viens de passer une série de tests, ca marche si j'enlève une chiée de caractères, notemment les espaces. Evidemment, j'obtient un code tout planté. Mais au moins je n'ai plus d'erreur serveur. Je SUPPUTE donc qu'il s'agit d'un bug du à l'encodage, qui n'est pas précisé dans mes pages de formulaire. Je vais explorer cette piste.

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 16:11

- Le javascript : N'y est pour rien, il n'y en a pas dans mes formulaires simples.
- Dailymotion : N'y est pour rien car une animation flash vide pose le même problème.
- Mon Rich Text Editor est TinyMCE, je le pense innocent car encore, même problème sur un formulaire basique, et sur ce site.
- Je parlais de variable pour dire celle envoyée par le formulaire, dès qu'il est validé.
- La solution de Mère Thérésa impose que la page cible soit atteinte.

Là, gentes femmes et jeunes gens je crois qu'il est inutile de vous importuner davantage. Je vais me pendre, et vous remercie de votre aide acharnée...

ViPHP
ViPHP | 4674 Messages

28 oct. 2008, 16:28

EDIT : j'ai le meme message d'erreur SUR CE FORUM ! en essayant de joindre le code source HTML que je cherche à intégrer (lecteur exportable dailymotion). Héhéhahaheuh....
Est-ce qu'on pourrait voir ce code au juste ? Ajoute des espaces ou vire les chevrons (< et >) pour ne plus avoir le bug.
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Invité
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 16:42

Par exemple :

<div><object width = "420" height="257"><param name="movie" value="http://www.dailymotion.com/swf/k4TXkJF0 ... ram><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed src="http://www.dailymotion.com/swf/k4TXkJF0 ... &related=0" type="application/x-shockwave-flash" width="420" height="257" allowFullScreen="true" allowScriptAccess="always"></embed></object><br /><b><a href="http://www.dailymotion.com/video/x76eg3 ... un">Wassup 2008</a></b><br /><i>envoyé par <a href="http://www.dailymotion.com/60Frames">60 ... ></i></div>

loicpennamen
Invité n'ayant pas de compte PHPfrance

28 oct. 2008, 16:44

|*() |*() |*()
Et là, ca a marché. J'en ai vraiment marre.