Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1285 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Page interprétée entièrement, pas d'output vers le browser

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Page interprétée entièrement, pas d'output vers le browser

n°621464
Tetedeienc​h
Head Of God
Posté le 25-01-2004 à 20:25:42  profilanswer
 

Quelles sont les raisons possibles ?
 
Nous ne faisons que de l'interfacage MySQL, sur un 90Plan OVH, et on gère des sessions, c'est tout.
 
Autrement dit, la page est interprétée ( les données sont insérées dans les bases, etc), mais aucun output n'est emis vers le browser ( IE en l'occurence ), même celles qui ne sont pas dans des balises PHP ( mais on passe par des includes pour les insérer ).
 
Avez vous des idées, des conseils concernant les causes les plus courante de ce type d'"erreur" ?
 
Quand elle arrive, on fait un refresh et ca passe nickel O_o

mood
Publicité
Posté le 25-01-2004 à 20:25:42  profilanswer
 

n°621465
gizmo
Posté le 25-01-2004 à 20:28:25  profilanswer
 

sans plus de détail, je pencherais pour une mauvaise initialisation de certaines variables, mais sans conviction.

n°621487
Tetedeienc​h
Head Of God
Posté le 25-01-2004 à 21:09:15  profilanswer
 

ben oui, mais comment expliquer que, par exemple, si la page commence par include("fichier.php" ); , et que ce fichier contienne que du texte ( en gros, des balises html avec un ti script php au bout), aucun output ne soit envoyé ?
 
Par exemple :
 
index.php

Citation :


<?include("session.php" );
include("contenu.php" );?>


 
contenu.php

Citation :


<HTML>....</HTML>


 
Et aucun message d'erreur rien au navigateur ?

n°622487
aspegic500​mg
Posté le 27-01-2004 à 04:32:52  profilanswer
 

et sans le session.php ca marche toujours pas :??:  
(faut reduire au strict minimum produisant toujours le problème)

n°622495
ethernal
Chercheur de vérité...
Posté le 27-01-2004 à 08:17:22  profilanswer
 

- exit;
- une fonction de type ob_* utilisée

n°624823
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 13:07:10  profilanswer
 

désolé d'etre resté muet pendant pas mal de temps :(
 
On a avancé : on sait que ca vient des sessions ( on vire le session_start() ca le fait plus, on le remet ca plante ).
 
Voici notre fichier de session utilisé actuellement ( appelé via un include() ) : ( je précise que je ne suis pas l'auteur de ce code :D )
 

Code :
  1. <?
  2. function VerifSession ($login,$pass,$conn)
  3. {
  4. if(empty($login) || empty($pass))
  5. {
  6.     return false;
  7. }
  8. $query = mysql_query("select USERPASSWD from tuser where USERNAME='$login' AND USERACTIVATION='0'" , $conn);
  9. $query = mysql_fetch_array($query);
  10. if( $query['USERPASSWD'] == $pass)
  11. {
  12.     // mot de pass encrypté
  13.     return true;
  14. }
  15. else
  16. {
  17.     return false;
  18. }
  19. }
  20. session_start();
  21. if($disconnect==1)
  22. {
  23. session_destroy();
  24. setcookie("login_nom","" );
  25. setcookie("login_pass","" );
  26. return(0);
  27. }
  28. else
  29. {
  30. if(isset($login))
  31. {
  32.  $login_nom=$login;
  33.  $login_pass=md5($pass);
  34. }
  35. if (VerifSession($login_nom,$login_pass,$link))
  36. {
  37.  $_SESSION ['login_nom'];
  38.  $_SESSION ['login_pass'];
  39.  $query = mysql_query("select * from tuser where USERNAME='$login_nom' AND USERACTIVATION='0'" , $link);
  40.  $query = mysql_fetch_array($query);
  41.  $login_nom = $query[USERNAME];
  42.  $expire = 7*24*3600;
  43.  setcookie("login_nom","$login_nom",time()+$expire);
  44.  setcookie("login_pass","$login_pass",time()+$expire);
  45.  return(1);
  46. }
  47. else
  48. {
  49.  //session_destroy();
  50.  return(0);
  51. }
  52. }
  53. ?>


 
Je précise que le probleme arrive au "hasard" et est des fois ( mais tres rarement) reproductible... avec des clicks dans le bon ordre et surtout le bon timing ( c'est ca qui est étrange).
 
Une idée ? ;) Merci :)


Message édité par Tetedeiench le 29-01-2004 à 13:12:39
n°624845
belgique
Posté le 29-01-2004 à 13:38:56  profilanswer
 

Ben tu fais un return dans le main avec tes sessions, c'est pas ça le problème ?  
Puis je me rapelle des sessions chez OVH + IE, j'ai changé les deux maintenant donc je ne sais pas d'où venait le problème... C'était temps de déconnection aléatoire (Ca venait d'IE quasi sûr :p)

n°624871
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 14:07:16  profilanswer
 

belgique a écrit :

Ben tu fais un return dans le main avec tes sessions, c'est pas ça le problème ?  
Puis je me rapelle des sessions chez OVH + IE, j'ai changé les deux maintenant donc je ne sais pas d'où venait le problème... C'était temps de déconnection aléatoire (Ca venait d'IE quasi sûr :p)


 
"il" fait, et non c possible, le include permet le return ( ca arrete le include et continue le script principal ).
 
Ca le fait sur un 90Plan OVH ET sur un dédié OVH ( avec config spéciale donc ).
 
D'autres sites connus utilisant les sessions sur le meme serveur dédié ont aucun souci.


Message édité par Tetedeiench le 29-01-2004 à 14:07:38
n°624880
belgique
Posté le 29-01-2004 à 14:18:55  profilanswer
 

Ah oui tiens, faudrait que je lise la doc une fois. Mais un problème aléatoire comme tu le dis, doit être provoqué quand il perd la session. Regarde bien le code dans ce cas.

n°624907
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 14:36:28  profilanswer
 

ben la ou on capte pas, c'est que si on met ca a la place du code :
 

Code :
  1. session_start();
  2. $succ_sess2=1;


 
A la place de notre include session.php, le bug apparait :(

mood
Publicité
Posté le 29-01-2004 à 14:36:28  profilanswer
 

n°624937
Sh@rdar
Ex-PhPéteur
Posté le 29-01-2004 à 14:57:15  profilanswer
 

compression de page ?
session.cache dans le php.ini ?
 
faudrait peut être creuser au niveau des entêtes aussi, getallheaders() & co
 
EDIT : en y réflechissant un peu et en lisant ce code infâme, t'irais plus vite à tout réécrire :D
 
file le code complet du script qu'on puisse tester aussi


Message édité par Sh@rdar le 29-01-2004 à 15:17:36

---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°625030
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 15:59:59  profilanswer
 

phpinfo :  

session
Session Support  enabled  
Registered save handlers  files user  
 
Directive Local Value Master Value  
session.auto_start Off Off  
session.bug_compat_42 On On  
session.bug_compat_warn On On  
session.cache_expire 180 180  
session.cache_limiter nocache nocache  
session.cookie_domain no value no value  
session.cookie_lifetime 0 0  
session.cookie_path / /  
session.cookie_secure Off Off  
session.entropy_file no value no value  
session.entropy_length 0 0  
session.gc_divisor 100 100  
session.gc_maxlifetime 1440 1440  
session.gc_probability 1 1  
session.name PHPSESSID PHPSESSID  
session.referer_check no value no value  
session.save_handler files files  
session.save_path /tmp /tmp  
session.serialize_handler php php  
session.use_cookies On On  
session.use_only_cookies Off Off  
session.use_trans_sid On On  


 
Ca le fait que sous IE on dirait ( impossible de le reproduire sous firebird par exemple ).
 
Pour le code complet, vu le nombre d'include, ca risque d'etre chaud :D Je regarde encore un peu et je vous dit quoi.

n°625032
belgique
Posté le 29-01-2004 à 16:01:06  profilanswer
 

Cf ce que j'ai dit, regarde ce qu'il se passe quand il n'arrive pas à créer une session. En fait quand il arrive sur la page, c'est comme si c'était un nouvel utilisateur.

n°625040
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 16:07:26  profilanswer
 

belgique a écrit :

Cf ce que j'ai dit, regarde ce qu'il se passe quand il n'arrive pas à créer une session. En fait quand il arrive sur la page, c'est comme si c'était un nouvel utilisateur.


 
oui, mais a ce moment la, pourquoi n'avoir AUCUN output, comme si rien ne s'était executé ?
 
par exemple, si je fais :

Citation :


<?php
 include('session.php')?>
<HTML>blablablabla</HTML>


 
donc avec du code non interprété par php et forcément envoyé au browser ( notre code ne contenant pas de exit() ), il ne le recoit pas ?
 
Ca a l'air d'arriver qu'avec IE en plus, et lors de la page blanche, on fait un refresh et ca passe...
 
Aucune trace, aucun message d'erreur affiché, meme quand on lui demande d'afficher... rien. le néant total. Sur deux serveurs différents.


Message édité par Tetedeiench le 29-01-2004 à 16:07:41
n°625043
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 16:10:47  profilanswer
 

Vu la taille du truc, je vais bosser dessus et je posterai le script minimal avec lequel on reproduit le bug ;)
 
A ce soir !

n°625071
ratibus
Posté le 29-01-2004 à 16:41:52  profilanswer
 

Un truc qui m'est deja arrivé c'est de rien avoir à l'écran et quand j'ai regardé le code source de la page blanche affichée, en fait y a avait plein de trucs dont une erreur PHP qui était indiqué.
 
Donc quand tu dis "pas d'output vers le browser" c'est juste visuel ou bien c'est la source de la page qui est vide aussi ?

n°625094
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 16:57:32  profilanswer
 

ce que je comprends pas, c'est que j'ai jamais réussi a reproduire le bug avec mozilla. Juste avec IE. C'est plutot simple : cliquer comme un taré et hop il apparait.
 
Il est la actuellement sur ma page : http://www.ocbase.com .
 
Baladez vous avec IE un peu partout, en naviguant notamment entre les news et la cat OCCT en haut, en cliquant dans le sous-menu et sur le titre des news. Vous allez voir, au bout d'une trentaine de clicks, il apparait.

n°625133
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 17:29:40  profilanswer
 

Putain je viens de truver :heink:
 
Ca venait du meta ( en gros, si je faisait outputter a PHP avant le meta ca marchait , apres ca marchait plus).
 
j'ai testé en déplacant ce petit script :
 

Code :
  1. <?
  2. foreach ($headers as $header => $value) {
  3.    echo "$header: $value <br />\n";
  4. }
  5. ?>


 
Le meta qui merde :

Code :
  1. <meta http-equiv="content-Type" content="text/html; charset=iso-8859-15" />


 
Le meta quivabien ( forum ) :

Code :
  1. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />


 
A part le 5 au bout et le iso en minuscule, rien ne change.
 
un bug d'IE en fait, qui des fois devait pas comprendre ce charset j'imagine :(


Message édité par Tetedeiench le 29-01-2004 à 17:30:09
n°625162
belgique
Posté le 29-01-2004 à 17:51:58  profilanswer
 

J'ai comme un doute là :D

n°625177
Sh@rdar
Ex-PhPéteur
Posté le 29-01-2004 à 18:02:00  profilanswer
 

moi j'ai cliqué comme un fou sans jamais avoir ce problème (avant ta "solution" je précise..)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°625179
Tetedeienc​h
Head Of God
Posté le 29-01-2004 à 18:03:09  profilanswer
 

Sh@rdar a écrit :

moi j'ai cliqué comme un fou sans jamais avoir ce problème (avant ta "solution" je précise..)


 
on le reproduisait assez facilement sous IE6, on a changé le meta et hop disparu :)

n°1195660
Rei Ishido
Posté le 09-09-2005 à 00:56:30  profilanswer
 

Bonjour à tous.
 
Après avoir beaucoup cherché sur le net pour voir si qqun avait le même problème que moi, j'ai enfin trouvé ce topic :)
 
Je rencontre exactement le même problème incomprehensible sur un serveur OVH.
Sous IE 6, sans comprendre pourquoi, sur certaines pages je n'ai aucun output vers le navigateur. Je ne peux même pas afficher la source de la page, celle-ci ne contient absolument rien.
Une page defaillante ne fonctionne que si je la réactualise.
Je ne trouve aucune explication rationelle. :(
 
Si je regarde ce qu'à posté Tetedeiench, ce qu'on a en commun c'est le fait qu'on est tous les 2 sur un serveur OVH, qu'on utilise les sessions et que le bug apparait sous IE6. En local ou avec Firefox, aucun souci.
J'ai essayé ce qui a marché pour lui (le meta) mais ça ne fonctionne pas pour moi  :s
 
Quelqu'un d'autre a déjà rencontré ce problème vraiment bizzar?
 
Merci de m'aider, c'est vraiment une galère.

n°1195664
kalex
Posté le 09-09-2005 à 01:36:50  profilanswer
 

Essaye de mettre ça à la première ligne de ton fichier de base :
error_reporting(E_ALL);
Y a tjs pas d'erreur ?

n°1195665
Rei Ishido
Posté le 09-09-2005 à 01:41:40  profilanswer
 

Non rien, je peux même pas accéder à la source de la page :s
 
Je sais pas si c'est spécifique à OVH, mais je suis pas le 1er à rencontrer ce problème :
 
http://forum.ovh.com/showthread.ph [...] eadid=3704
 
Je sais vraiment pas quoi faire :sweat:  

n°1195666
Rei Ishido
Posté le 09-09-2005 à 01:45:40  profilanswer
 

Je sais pas comment expliquer ça mais j'ai carrément viré la meta de charset et ça semble fonctionner. Enfin, la page s'affiche quoi...
 
Mais je tiens pas à laisser mes pages bancales sans cette meta mais je vois pas trop comment la modifier.
 
La voici au cas où :
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

n°1195667
kalex
Posté le 09-09-2005 à 01:48:30  profilanswer
 

et :
ini_set('zlib.output_compression', 'Off');
???

n°1195668
Rei Ishido
Posté le 09-09-2005 à 01:49:04  profilanswer
 

Autre élémentn sait-on jamais :
 
Je sais pas si IE6 est complétement buggué où si c'est normal qd on ne specifie pas le charset mais je peux pas afficher la source de ma page.
Pareil que quand rien ne s'affiche donc.


Message édité par Rei Ishido le 09-09-2005 à 01:51:08
n°1195670
Rei Ishido
Posté le 09-09-2005 à 01:50:14  profilanswer
 

kalex a écrit :

et :
ini_set('zlib.output_compression', 'Off');
???


Non pas mieux.

n°1208356
oscar31
Posté le 27-09-2005 à 10:22:52  profilanswer
 

bonjour,  
j'ai eu le même problème et j'ai perdu un tas de temps... en effet cela ne semble se produire que sur ie pc, quand les sessions php sont activées, mais de manière tout à fait aléatoire : le cache ie du client, ainsi que les questions de securité parentale semblent jouer. Autre remarque on dirait aussi que ça tourne autour du fournisseur ovh (mais c'est peut être seulement une coincidence)
je n'ai toujours pas compris ce qui se passe, mais depuis jeudi cela semble reglé (des copains ont cliqué comme des fous sur plusieurs installations et il n'y a plus de pages blanches).
 
pour ma part j'ai fait comme ça : ce n'est pas super propre comme code, mais en tout cas ça marche et ç'est toujours du valide...
 
bien que le debut de ma sortie (bien après le session_start() et de tas d'autres ops) soit

Code :
  1. $out="<!DOCTYPE html PUBLIC \\"-//W3C//DTD XHTML 1.0 Strict//EN\\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\\"><html xmlns=\\"http://www.w3.org/1999/xhtml\\">";
  2. $out.= "<head>\\n<meta http-equiv=\\"content-type\\" content=\\"text/html; charset=UTF-8\\" />\\n";


 
la ligne http-equiv du charset ne serait pas toujours prise en compte par ce "cher" ie/pc
du coup, mon script commence par

Code :
  1. <?php session_start();
  2. header("Content-Type: text/html; charset=UTF-8" );


voilà... Le meta tag http-equiv reste toujours en place dans $out, et du coup l'information est redondante, mais si ce n'est pas beau au moins ça ne semble pas poser de problèmes...
merci à tous de m'avoir mis sur la voie et de me signaler toute solution meilleure, ou, si vous avez compris ce qui se passe, de bien vouloir nous l'expliquer...

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Page interprétée entièrement, pas d'output vers le browser

 

Sujets relatifs
[PHP] Connexion à MySQL[HTML/ Flash] Lire en Live un fichier depuis une page HTML, ou Flash ?
[RESOLU] Insertion d'une page php dans une page jspportage vers linux
Page généré en jspProteger son code PHP
[Impression] Page Web sur imprimante noir & blancimpresion d'une page html
[PHP] Convertir une ip en un INT...Comment mettre des photos en miniature sur une page
Plus de sujets relatifs à : [PHP] Page interprétée entièrement, pas d'output vers le browser


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR