Page 1 sur 1

varibles magiques ! elles apparaissent et disparaissent !

Posté : 22 juin 2005, 11:18
par mr.loool
bonjour, bon je suis déjà de retour !

alors j'explique la situation :

un gars a fait un site en php, une vrai merde, pour l'utiliseré tu dois copier tout le repertoire easyphp sur le poste de l'utilisateur, et au soir pour sauvegarder tes infos sur le serveur, tu dois le recopier par dessus l'ancien.

Pourris dans le sens ou tu dois toujours installer easyphp sur le poste et aussi si 2 personnes font des modifs, les premieres serront éffacées.

Du coup j'ai supprimé EasyPhp, et j'ai fait a partir de php serveur, mysql serveur et phpmyadmin serveur. Pour rendre le site accessible par serveur depuis n'importe quel poste je me suis servi de IIS.

Mon problème est le suivant :

j'ai 2 variables qui ne s'affichent pas sous IIS et qui s'affichent correctement sur Easyphp.

En fait il faut saisir une chaine de caractère contenant l'intitulé du projet et une autre concernant la raison.

Ces deux variables sont réutilisées dans plusieurs autres pages, hors elles ne s'affichent pas.
Lorsque j'ouvre le site sous Easyphp elles s'affichent correctement...

Easyphp = Houdini ?

Merci bonne journée. ++[/img]

Posté : 22 juin 2005, 12:50
par Cyrano
Des précisions et éventuellement un bout de code aiderait à comprendre ton problème: si cette variable est une variable de session, le fait qu'elle n'apparaisse pas vient probablement du fait qu'un session_start a été oublié quelque part. Mais si ce n'est pas une variable de session, comment est-elle initialisée ?

Posté : 22 juin 2005, 13:50
par Guakamol
peut etre aussi au niveau du php.ini, register_globals par exemple ?

Posté : 22 juin 2005, 14:16
par mr.loool

Code : Tout sélectionner

<? if ($nprojet !=null) { $requete="select * from projet where numprojet='".$nprojet."'"; $resultat=mysql_query($requete,$link); $proj=mysql_fetch_array($resultat); $titre=$proj['intitulé']; $note=$proj['note']; ?> <? $re="select * from dates where num='".$nprojet."'"; $resi=mysql_query($re,$link); $pi=mysql_fetch_array($resi); $alertes=$pi['alertes']; $reson=$pi['réson']; ?> <table border=1 bgcolor="white"><tr><td> date d'alerte : <? print("$alertes");?><br> raison : <? print("$reson");?> </td></tr></table> <table border=0 width=80%> <tr> <td width=30% bgcolor="#C0C0C0"><center><i>Intitulé du projet n°<? print("$nprojet");?> </i></center></td> <td width=50% bgcolor="yellow"><center><u><b><? print("$titre");?></b></u></center></td> </tr> </table>
voila donc ca sur Easyphp ca me donne :

[ intitulé du projet n° 205-268 ] [ Rue des oliviers ]
par exemple, alors que par IIS j'obtiens

[ intitulé du projet n° 205-268 ] [ ]

Quant a mon php.ini :

;-------------------------------------------------------------------------------------;valeur origine = off
register_globals = on
;
;-------------------------------------------------------------------------------------[/code]

Posté : 22 juin 2005, 14:22
par Guakamol
$titre=$proj['intitulé'];

Ya un accent dans la bdd?

Posté : 22 juin 2005, 14:25
par mr.loool
j'y avait déjà pensé, j'ai viré tous les accents mais ca n'a rien changé...

Posté : 22 juin 2005, 14:40
par Guakamol
Bon faut reconnaitre que IIS est tordu :)

Je vois pas 36 solutions, soit c'est IIS qui deconne grave (essait de reset le serveur avec la commande iisreset on sait jamais ...), et là ben faut repenser le script (au lieu de select * essai select intitule, note .... par exemple ).

Soit et c'est peut etre plus plausible les 2 fichiers php.ini sont differents (celui de easyphp et IIS) et donc la tu peut farfouiller et voir ou ca differe (je te déconseille la methode "bourrin" du copier/collé du php.ini de easyphp vers celui de IIS)

Dernier point es tu sur que ca marche sous easyphp ? (essaies de rajouter des tests ou autre)

Voila desolé je vois pas vraiment comment t'aider autrement ....

Posté : 22 juin 2005, 14:42
par mr.loool
je met a disposition un screenshot du bug, demandez le moi je vous l'envoie en pv.

Posté : 23 juin 2005, 14:45
par Guakamol
essai peut etre d'utiliser echo $titre au lieu de print (sans conviction mais je vois pa vraiment quoi faire :p)

Teste tes variables $titre et $note de suite apres les avoir affectées (avec print et echo)