Pages : 1
#1 Le 06/11/2006, à 09:33
- ubu-phil
[RESOLU] Site internet PHP/MySQL
Bonjour,
Voici mon problème / ma question :
J'ai installé un serveur pour développer mon site et j'ai utilisé la méthode d'installation de LAMP_bis (http://doc.ubuntu-fr.org/serveur/lamp_bis).
Cette procédure, je l'ai faite sur mon PC perso chez moi ainsi que sur mon PC pro à mon boulot.
Pour naviguer sur mon site, je n'utilise pas la nom de la page réelle, mais des "include" selon le choix (index.php?p=1, ?p=2, etc.....).
Cette méthode fonctionne sans soucis sur mon PC du boulot, sur le site en ligne mais pas sur mon PC perso.
Je pense que c'est un problème de paramétrage du serveur, mais comme j'ai reproduis l'identique de mon PC du boulot sur mon PC perso.....
Si quelqu'un avait une piste..
Merci.
Dernière modification par ubu-phil (Le 13/11/2006, à 09:20)
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne
#2 Le 06/11/2006, à 09:48
- mirmidon
Re : [RESOLU] Site internet PHP/MySQL
Salut ubu-phil,
Quel est la nature exacte de ton problème STP ?
Messages d'erreurs, fichiers log du serveur et autres joyeusetés... !
$ sudo make plaisir
Quand l'informatique redevient un plaisir.
The Ubuntu Counter Project - user number #10290
Hors ligne
#3 Le 06/11/2006, à 14:10
- ubu-phil
Re : [RESOLU] Site internet PHP/MySQL
Alors.....
- aucun message d'erreur, juste que le clic sur le lien (bouton ou autre) ne m'envoit pas sur la page souhaitée (comme si mon fichier php ne faisait pas les include)..
Voili
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne
#4 Le 10/11/2006, à 12:14
- ubu-phil
Re : [RESOLU] Site internet PHP/MySQL
Bon...
Personne pour de l'aide ?
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne
#5 Le 10/11/2006, à 13:10
- g_barthe
Re : [RESOLU] Site internet PHP/MySQL
Tu pourrais peut etre donner le code de la page principale et de la page appelée pour qu'on voit si qqch cloche pck la comme c a dans le vide pas facile.
Tu peux regarder le code source généré par ton navigateur pour voir si les instructions sont traités correctement.
Mon forum perso sur le génie climatique http://le-genie-climatique.positifforum.com/
Le forum des travaux manuels : http://pausebroderie.fr/
Hors ligne
#6 Le 10/11/2006, à 13:37
- Aelor
Re : [RESOLU] Site internet PHP/MySQL
De plus, faire un include d'un truc passé en paramètre, c'est dangereux.
J'espère que tu vérifies la validité de ton paramètre sinon n'importe qui peut inclure son propre script.
Ex Roane.
Ruby, le langage qui tue : http://rubyfr.org
Hors ligne
#7 Le 10/11/2006, à 15:05
- ubu-phil
Re : [RESOLU] Site internet PHP/MySQL
Code de la page principale :
<?php
switch ($page)
{
case "" :
include("index_OK.html");
break;
case "1" :
include("Accueil.php");
break;
case "2" :
include("Actualites.php");
break;
case "3" :
include("Liens.html");
break;
case "4" :
include("Livredor.php");
break;
default :
include("Erreur.html");
break;
}
?>
Pas la peine de fournir le code de la page appellée puisqu'elle n'est pas appellée...
Dernière modification par ubu-phil (Le 10/11/2006, à 15:06)
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne
#8 Le 10/11/2006, à 22:04
- g_barthe
Re : [RESOLU] Site internet PHP/MySQL
Le include que tu fais la recherche la page dans le meme répertoire que celui de la page principale. Donc si tu as structuré le tout avec des répertoires et mis les accueil.php, liens.html... dans les répertoires, il est normal que le include ne fonctionne pas.
Après je n'ai jamais utilisé le coup du test par case... mais as tu vérifié que le test fonctionne par exemple en faisant un echo "test 1 ok" et ainsi de suite. Cela permettra de valider que le résultat du test est ok avant de s'attaquer au include.
Donne nous les résultats des ces qq manips.
Mon forum perso sur le génie climatique http://le-genie-climatique.positifforum.com/
Le forum des travaux manuels : http://pausebroderie.fr/
Hors ligne
#9 Le 11/11/2006, à 11:21
- ubu-phil
Re : [RESOLU] Site internet PHP/MySQL
Les fichiers appellés se trouvent au même endroit que la page principale.
Ce principe fonctionne sur le PC de mon boulot (ubuntu avec install serveur lamp_bis), fonctionne hébergé mais ne foctionne pas sur le PC chez moi (ubuntu avec install serveur lamp_bis).
Je pense que c'est soit un problème de config du serveur soit de php.
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne
#10 Le 11/11/2006, à 13:05
- kaworu
Re : [RESOLU] Site internet PHP/MySQL
Salut !
Si les variables sont passé par l'URL, c'est la variable d'environnement $_GET qui les contient maintenant. La technique que tu utilise (et qui marche à ton travail) est dépréciée et supprimée dans les dernières versions de PHP (sauf erreur pour des raisons de sécurité).
Essaye voir de changer ton switch comme ça :
<?php
switch ( $_GET['page'] )
...
(mes 2 cents hein, je débute en PHP...)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#11 Le 11/11/2006, à 13:42
- Lord Northam
Re : [RESOLU] Site internet PHP/MySQL
Par hasard, ce n'est pas un simple problème de droits d'execution des fichiers ?
Hors ligne
#12 Le 11/11/2006, à 17:22
- Bismut
Re : [RESOLU] Site internet PHP/MySQL
Salut !
Si les variables sont passé par l'URL, c'est la variable d'environnement $_GET qui les contient maintenant. La technique que tu utilise (et qui marche à ton travail) est dépréciée et supprimée dans les dernières versions de PHP (sauf erreur pour des raisons de sécurité).
Essaye voir de changer ton switch comme ça :<?php switch ( $_GET['page'] ) ...
(mes 2 cents hein, je débute en PHP...)
Je plussoie sévèrement... A un moment j'ai eu le même problème car j'avais développé un truc à l'arrache... Et avec des variables globales, ça passe... mais dans un environnement qui les désactive (ça ou un autre truc, je me souviens plus très bien), ben ça marche pas de prendre simplement "$page".
Normalement, le code de kaworu devrait solutionner ton problème
(Le mieux serait quand même de tester la variable avant de l'utiliser directement quand même XD)
Dernière modification par Bismut (Le 11/11/2006, à 17:23)
Mac Mini 2009 avec Archlinux
Asus EeePC S101 avec Archlinux
HTC Magic avec Android
Hors ligne
#13 Le 11/11/2006, à 23:42
- kaworu
Re : [RESOLU] Site internet PHP/MySQL
Salut !
y'a pas besoin de la tester vu que le switch sert à ça. Si la variable est un truc inatendu (forcée par l'URL) on va tomber dans default, ou il faudrait placer la page d'accueil (ou une page d'erreur).
Perso je fais ce genre de truc plutôt avec un test et un tableau qu'un switch, mais un switch c'est pas mal car il sert à faire tableau + test.
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#14 Le 12/11/2006, à 00:25
- SkeRoy
Re : [RESOLU] Site internet PHP/MySQL
c'est surement à cause du RegisterGlobals qui est inactivé par défaut, alors qu'il semble qu'il essaie de programmer comme s'il était actif.
La solution c'est ou bien activer cette fonction, ou bien passer les variables par ce qui a été dit, $_GET['page']
Pour activer RegisterGlobals:
$ sudo vi /etc/php5/apache2/php.ini
et trouver
register_globals = Off
et le passer en
register_globals = On
puis
$ sudo /etc/init.d/apache2 restart
Dernière modification par SkeRoy (Le 12/11/2006, à 00:25)
Hors ligne
#15 Le 12/11/2006, à 16:07
- ubu-phil
Re : [RESOLU] Site internet PHP/MySQL
hello,
J'ai modifié le register_global en On dans php.ini et.... ça marche !!!
Mais pourquoi, sans aucune modif manuelle, ca marche sur un serveur et pas sur un autre (identique sauf la machine) ?
Merci......
Dernière modification par ubu-phil (Le 12/11/2006, à 16:07)
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne
#16 Le 12/11/2006, à 16:54
- SkeRoy
Re : [RESOLU] Site internet PHP/MySQL
parce que la configuration par défaut ne doit pas pas être la même.
register_globals=Off n'est par défaut que sur les distros dérivées de debian il me semble (en tout cas aux dernières nouvelles Mandrake continuait à l'afficher "On", mais précisait que c'était source de failles de sécurité).
Perso je me suis habitué à coder en utilisant $_POST[], $_GET[] et $_COOKIE[], et c'est tout aussi agréable d'avoir un code 100% compatible, qu'importe la configuration du serveur... car d'un hébergement à l'autre ça peut changer...
Hors ligne
#17 Le 12/11/2006, à 22:53
- kaworu
Re : [RESOLU] Site internet PHP/MySQL
SkeRoy++
et surtout, si ça étéd désactivé par défaut dans les nouvelles version de PHP pour des raisons de sécurité, utiliser $_{GET,POST,COOKIE} c'est plus prudent.
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#18 Le 13/11/2006, à 09:21
- ubu-phil
Re : [RESOLU] Site internet PHP/MySQL
OK !!
Je vais recoder en utilisant $_GET[]..
Merci à tous !!!
J'ai opté pour Ubuntu et j'en suis fier.
Win daube ? C'est quoi ça ?
Hors ligne