caracteres illisibles

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : caracteres illisibles

par Ripat » 15 mars 2006, 10:52

La compression des pages par le serveur http n'est pas courante. L'avantage principal est l'économie de bande passante (de l'ordre de 65%).

Accessoirement, un autre avantage est un chargement plus rapide de la page sur le navigateur du client (surtout pour les connexions lentes).

Pour le mettre en place, il faut que ton fai ait installé un module spécial (mod_gzip pour le serveur http apache).

par Euroxpet » 15 mars 2006, 09:40

:shock:

Magnifique,
ça fonctionne à merveille.
Je peux donc continuer mon travail. =D>
Merci mille fois :D


Juste une petite chose, si tu as encore un peu de temps à me consacrer :
Je n'ai presque rien compris de ce que tu as dis :?
(sauf que les données sont gzippées).
A quoi cela sert-il ?

En tout cas, si tu n'as pas le temps de m'expliquer, merci quand même pour m'avoir débrouillé ça :D

par Ripat » 09 mars 2006, 15:03

Trouvé!

Voici le response header renvoyé par le serveur (curl --trace-ascii) qui m'a mis sur la voie:

Code : Tout sélectionner

<= Recv header, 17 bytes (0x11) 0000: HTTP/1.1 200 OK <= Recv header, 37 bytes (0x25) 0000: Date: Thu, 09 Mar 2006 12:45:14 GMT <= Recv header, 25 bytes (0x19) 0000: Content-Type: text/html <= Recv header, 24 bytes (0x18) 0000: Content-Encoding: gzip <= Recv header, 13 bytes (0xd) 0000: Refresh: 60 <= Recv header, 19 bytes (0x13) 0000: Via: 1.1 xwis.net <= Recv header, 28 bytes (0x1c) 0000: Transfer-Encoding: chunked <= Recv data, 1275 bytes (0x4fb)
Vu le Content-Encoding: gzip ? :wink:

Solution:
$fp = gzopen($adresse, 'r');
$page = '';
while (!feof($fp)) {
  $page .= gzread($fp, 8192);
}
gzclose($fp);

Re: caracteres illisibles

par Ripat » 09 mars 2006, 13:33

... et pourquoi c'est illisible ?
Curieux en effet. Je n'ai pas non plus réussi à capturer de manière lisible le contenu de ce lien.

J'ai essayé CURL, wget ainsi que toutes les fonctions de manipulation de fichier, fsockopen compris. Si on prend le code source de cette page et qu'on la place sur un autre serveur, tout se passe conformément aux attentes des fonctionnalités de ces fonctions.

Je sais que ce post ne t'aide pas beaucoup mais il servira au moins à te rassurer qu'on essaye de notre côté.

Le header renvoyé par le serveur donne ceci:

Code : Tout sélectionner

curl -I http://xwis.net/ra2/online HTTP/1.1 502 Bad Gateway Date: Thu, 09 Mar 2006 11:29:23 GMT Server: Apache/2.0.55 (Debian) PHP/5.1.2-1 mod_ssl/2.0.55 OpenSSL/0.9.8a Vary: accept-language,accept-charset,Accept-Encoding Accept-Ranges: bytes Content-Type: text/html; charset=iso-8859-1 Content-Language: en
Rien d'anormal sauf peut-être l'erreur 502 que j'ai du mal à interpréter. Il doit y avoir une solution car si un client (j'ai essayé IE et FF) le lit correctement, on doit bien trouver une fonction PHP qui y arrive aussi...

Bref, je n'ai pas de réponse, mais je suis intrigué. Je cherche encore.

par Euroxpet » 09 mars 2006, 11:39

oups ...
$connection = on;

par Invité » 09 mars 2006, 11:36

:oops:

Je me permet un petit up avant qu'il ne se noie :mrgreen:

caracteres illisibles

par Euroxpet » 07 mars 2006, 18:04

Bonjour,

Je souhaite faire un tableau à partir de cette page : http://xwis.net/ra2/online

Je commence et voici le début de mon code :

Code : Tout sélectionner

<?php $url="http://xwis.net/ra2/online"; $page = file_get_contents($url); $zone = explode("(",$page); // recherche des zones apres les parenthèses print_r($zone); ?>
Quand j'affiche la source de mon url, j'ai trois zones apres "(". C'est sur ces zones que je veux travailler.
Pourtant quand j'exécute mon code, je trouve 67 zones, et le texte est devenu illisible et inexploitable.

Quelqu'un voit où j'ai fais une erreur (67 zones) et pourquoi c'est illisible ?