Hello
J'ai installer un serveur 2003 avec iis 6 php 5.2.1 et mysql, tout fonctionne corectement sauf que la fonction include n'a pas l'air de fonctionner
Quelqu'un aurai-t-il une idée ?
a priori meme symptome pour la fonction require.
Merci
Version imprimable
Hello
J'ai installer un serveur 2003 avec iis 6 php 5.2.1 et mysql, tout fonctionne corectement sauf que la fonction include n'a pas l'air de fonctionner
Quelqu'un aurai-t-il une idée ?
a priori meme symptome pour la fonction require.
Merci
Il nous faudrait plus de détails : la hiérarchie des fichiers (seulement ceux qui sont intéressants) et la manière dont est fait ce ou ces include/require !
Vous n'auriez pas un problème avec la définition de la directive include_path ? Vous n'utiliseriez pas des variables lors de cet include ? Autres ? Des messages d'erreur ?
Julp.
En faite je viens de m'apercevoir que ces function fonctionner. Par contre le vrai probleme c'est les " et les ' quand le code html et php s'entremele. Et il ne reconnai pas le \" du coup sa fais merder mes script sa serai une histoire de magic quotes ?
Les directives magic_quotes_xxx ne servent que pour les chaînes qui sont transmises du client vers le serveur. Si tu as un problème avec les guillemets dans ton code, c'est là qu'il faut le résoudre. Mets-nous ton code d'inclusion en ligne (avec la balise #code# qui va bien ;) ), on verra si ça vient de là.
Page d'index :
page config.phpCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 <?php //titre page $page=Identification; $titre=Identification; $rubrique="Merci de vous identifier."; require("../includes/config.php"); DBInfo(); Brand(); include ("../includes/header.inc.php"); //connection a la database mysql_connect("$DBHost","$DBUser","$DBPassUser"); echo "<TABLE border='0' cellSpacing='5' cellPadding='0' width='100%'><TR>"; echo "<FORM ACTION=\"connection.php\" METHOD=\"POST\">"; echo "<tr><td align='right'><FONT class=n8 style='COLOR: #003e75'>"; echo "Login :"; echo "</font></td><td>"; echo "<select name=\"login\" size=\"1\">"; echo "<option value=\"\"> choisissez... </option>"; $result=mysql("$DBUtilisateur","SELECT * FROM user ORDER BY Nom "); while ($row = mysql_fetch_row($result)) { echo "<option value=\"$row[1]\"> $row[4] $row[5]</option>"; } echo "</select></td></tr>"; echo "<tr><td align='right'><FONT class=n8 style='COLOR: #003e75'>"; echo "Mot de passe :"; echo "</font></td><td>"; echo "<input type=\"password\" name=\"password\" size=\"40\">"; echo "</td></tr>"; echo "<tr><td colspan=\"2\" align=\"center\"><INPUT TYPE=\"submit\" NAME=\"Submit\" VALUE=\"login\"></form></TABLE>"; include ("../includes/footer.inc.php"); //deconnecte de la database mysql_close(); ?>
les etoiles representent la valeur des variables.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 <? /* Informations diverses */ $Company ="***"; $Address1="***"; $Address2="***"; $City ="***"; $State ="***"; $Zip ="***"; $Phone ="***"; $Web ="***"; $Email ="***"; function Brand() { global $Company,$Address1,$Address2,$City,$State,$Zip,$Phone,$Web,$Email; } /* Paramètres de connection */ $DBHost="127.0.0.1"; $DBAdmin="******"; $DBPassAdmin="*****"; $DBUser="*******"; $DBPassUser="********"; $DBName="********"; $DBBiblitech="********"; $DBAnnu="********"; $DBContrat="********"; $DBRapport="********"; $DBPlanning="********"; $DBUtilisateur="*******"; function DBInfo() { global $DBHost,$DBUser,$DBPass,$DBName,$DBBiblitech,$DBAnnu,$DBContrat,$DBUtilisateur; } /* Chemin relatif absolue du site */ $Relatif="********"; $Absolue="**********"; /* Modifier uniquement si l'heure du serveur n'est pas correcte */ $now_Y=date("Y"); $now_m=date("m"); $now_d=date("d"); $now_H=date("H"); $now_i=date("i"); $now_s=date("s"); $jour="$now_d-$now_m-$now_Y"; $jour1="$now_d/$now_m/$now_Y"; $heure="$now_H:$now_i:$now_s"; function fontFace($font,$text) { echo "<FONT FACE=\"$font\">$text</FONT>"; } function commonHeader($Company,$title) { echo "<HTML><HEAD></HEAD><TITLE>$Company : $title</TITLE>"; } ?>
Par exemple sur ces deux pages la fonction DBInfo se trouvant dans config.php ne peut pas etre appeller dans index.php
et il m'affiche le script de la page config.php dans index.php
Avant que je change de version de php tout fonctionnai sauf que maintenant je suis en php 5.2.1 et avant en 4.3.10
voila
Tu peux utiliser les simples quotes au lieu d'échapper aussi souvent.
Exemple :
Code:
1
2 echo "<FORM ACTION='connection.php' METHOD='POST'>";
Je suis bien d'accord mais alors pkoi avant sa fonctionné correctement et plus maintenant ?
@+
Ou plus simplement (et plus rapidement pour PHP)Citation:
Envoyé par jml94
Des simples quotes dans une chaîne de caractère evite à PHP de parser mot par mot à la recherche de variables, code, etc...Code:
1
2 echo '<FORM ACTION="connection.php" METHOD="POST">';
Exemple :
Mais bon là on s'échape un peu du sujet ><Code:
1
2
3 echo 'Hello ' . $world; echo 'Hello ' . $world . 'Hello';
A priori cela vient du faite que j'utilisae iis 6.0 en faite il ne reconnait pas la balise <? il faut lui preciser <?php et la tout de suite sa marche mieux.
Voila
Merci de vos reponse en tout cas
@+ et bon weekend a tous
Si vous souhaitez les réutiliser il vous suffit d'éditer votre fichier php.ini pour y changer le paramètre short_open_tag :
Mais il est évident que pour avoir un maximum de portabilité, il est recommandé d'utiliser dès le départ la forme longue (il n'y a que 3 caractères de plus) ;)Code:short_open_tag = On
Julp.
Merci pour le parametre dans le fichier php.ini mais comme tu le dis j'ai preferé modifier tout mes fichier en rajoutant le trois lettre.
Merci a vous tous encore
@+