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

  FORUM HardWare.fr
  Programmation
  PHP

  Comment créer une architecture propre et fonctionelle...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment créer une architecture propre et fonctionelle...

n°1202760
Proov
Art & Science
Posté le 19-09-2005 à 19:59:28  profilanswer
 

hello
 
je réalise en ce moment un site pour une petite entreprise... la partie design et prete, de même que la mise en page (HTML + CSS)
 
Comme j'y connais pas grand chose en PHP, avant pour avoir dans le navigateur une adresse de type index.php?page=contact je passais par un switch... mais apres m'etre un peu renseigné, il parait que c'est pourri comme solution :D donc je fais appel a vous :)  
 
voilà mes fichiers:
http://flasheur.free.fr/forum/arbo.png
 
le fichier index.php apelle header.inc-fr.php et content.inc.php (au milieu)
 
comment faire une architecture qui puisse gérer les 2 langues et les includes en fonction des langues ?
j'ai vu quelques tutos avec la variable $HTTP_ACCEPT_LANGUAGE mais ça donne rien, et je crois qu'on a plus le droit d'utiliser cette variable maintenant...
 
bon enfin, j'espère que vous comprenez ce que je veux faire :D  
 
merci d'avance :jap:

mood
Publicité
Posté le 19-09-2005 à 19:59:28  profilanswer
 

n°1202909
Proov
Art & Science
Posté le 20-09-2005 à 08:46:54  profilanswer
 

:bounce: up du matin
 
(chagrin ? [:totoz])

n°1202954
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 09:45:52  profilanswer
 

Tu pourrais expliquer un peu plus comment c'est sensé fontionner?


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1202955
esox_ch
Posté le 20-09-2005 à 09:45:58  profilanswer
 

Bah tu passes une variable dans l'url ou je sais pas ou "en" et "fr".
Apres :
if($mavar == 'en')
 include('mapage.en.php');
elseif (....)
 ...
 
A part ca, je me permet de faire remarquer que c'est à la limite du scandaleux qu'un mec qui fait un site de prod pour une entreprise ne maitrise absolument pas les outils qu'il doit utilser


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1202959
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 09:47:49  profilanswer
 

Après ca dépend aussi des myens de l'entreprise....


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1202966
Proov
Art & Science
Posté le 20-09-2005 à 09:50:54  profilanswer
 

bon g utilisé ça:
 

Code :
  1. <?php
  2.   // On définit le tableau contenant les pages autorisées
  3.   // ----------------------------------------------------
  4.   $pageOK = array('news' => 'news.php',
  5.                   'accueil' => 'accueil.php');
  6.   // On teste que le paramètre d'url existe et qu'il est bien autorisé
  7.   // -----------------------------------------------------------------
  8.   if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) {
  9.     include($pageOK[$_GET['page']]);   // Nous appelons le contenu central de la page
  10.   } else {
  11.     include('accueil.php');   // Page par défaut quant elle n'existe pas dans le tableau
  12.   }
  13. ?>

n°1202970
Proov
Art & Science
Posté le 20-09-2005 à 09:52:35  profilanswer
 

esox_ch a écrit :

Bah tu passes une variable dans l'url ou je sais pas ou "en" et "fr".
Apres :
if($mavar == 'en')
 include('mapage.en.php');
elseif (....)
 ...
 
A part ca, je me permet de faire remarquer que c'est à la limite du scandaleux qu'un mec qui fait un site de prod pour une entreprise ne maitrise absolument pas les outils qu'il doit utilser


 
chui en contrat de qualif, g commencé y'a 2 semaines... j'apprend [:spamafote]

Message cité 1 fois
Message édité par Proov le 20-09-2005 à 09:58:56
n°1202977
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 10:00:35  profilanswer
 

Et ca qu'est ce que tu en dis?

Code :
  1. <?
  2. if ( file_exists("pages/".$_GET["page"].".php" ) AND !ereg("[/|\\\\]",$_GET["page"]) ) {
  3.    include "pages/".$_GET["page"].".php";
  4. }else{
  5.    include "pages/index.php";
  6. }
  7. ?>

Message cité 1 fois
Message édité par dwogsi le 20-09-2005 à 10:00:51

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1202983
esox_ch
Posté le 20-09-2005 à 10:02:01  profilanswer
 

Proov a écrit :

chui en contrat de qualif, g commencé y'a 2 semaines... j'apprend [:spamafote]


 
C'est pas de ta faute, mais souvent les entreprises preferent  prendre un mec qui a juste le "webdev pour les nuls" et le payer 3x rien que de faire recourt a qqn de serieu... Et le jour ou le site se fait hacker et l'entreprise y laisse des plumes, elle tappe sur le pauvre gars...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1202985
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 10:04:37  profilanswer
 

Moi mon entreprise à trouvée la bonne solution, j'ai plein de formations qui ne donnent pas de diplôme, donc je suis sous payé (lol) mais ca se passe bien... ...pour eux! Ras le cul en ce qui me concerne!


Message édité par dwogsi le 20-09-2005 à 10:05:18

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
mood
Publicité
Posté le 20-09-2005 à 10:04:37  profilanswer
 

n°1202989
Proov
Art & Science
Posté le 20-09-2005 à 10:06:06  profilanswer
 

dwogsi a écrit :

Et ca qu'est ce que tu en dis?

Code :
  1. <?
  2. if ( file_exists("pages/".$_GET["page"].".php" ) AND !ereg("[/|\\\\]",$_GET["page"]) ) {
  3.    include "pages/".$_GET["page"].".php";
  4. }else{
  5.    include "pages/index.php";
  6. }
  7. ?>



 
merci je vais potasser, je viens d'apprendre que $_GET ça servait a récupérer la variable d'une url :D  
 

esox_ch a écrit :

C'est pas de ta faute, mais souvent les entreprises preferent  prendre un mec qui a juste le "webdev pour les nuls" et le payer 3x rien que de faire recourt a qqn de serieu... Et le jour ou le site se fait hacker et l'entreprise y laisse des plumes, elle tappe sur le pauvre gars...


 
ouai c'est vrai... là chui a 80% du smic, mais je vais vais faire un BTS IG et chui motivé... j'ai édja des bonnes bases en design, HTML et CSS mais hélas pas en PHP :(

n°1202992
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 10:08:15  profilanswer
 

Et en compta?
Suis en BTS IG aussi :d


Message édité par dwogsi le 20-09-2005 à 10:08:52

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203001
remizz
Adventure !
Posté le 20-09-2005 à 10:14:51  profilanswer
 

on peut te conseiller le siteduzero pour PHP, en tout cas moi ça m'a bien servi :D

n°1203006
Proov
Art & Science
Posté le 20-09-2005 à 10:20:57  profilanswer
 

pitié pas de compta... :D  
 
moi chui en bts ig option arle :)  

n°1203008
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 10:24:23  profilanswer
 

Et tu vas me dire que t'a pas de compta?


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203030
Proov
Art & Science
Posté le 20-09-2005 à 10:44:05  profilanswer
 

ché pas chui pa encoer rentré http://forum-images.hardware.fr/icones/message/icon10.gif
 
j'pense que oui normalement :cry: je déteste ça :cry:

n°1203042
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 10:55:08  profilanswer
 

Ouai il me semblait bien aussi lol
A mon avis tu va en manger, comme tout le monde.
Mais si t'en a jamais fais, bonne chance :d


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203047
Proov
Art & Science
Posté le 20-09-2005 à 10:57:55  profilanswer
 

j'ai déja fait de l'eco dans un autre bts (communiaction visuelle) g bien galéré...
 
 
pour en revenir au sujet, je vais me faire mon script plutot que de copier les autres :D  
 
pour l'instant j'ai fait ça:

Code :
  1. $page = $_GET['page']
  2. $lang = $_GET['lang']


 
ça commence bien hein ? :D

n°1203054
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 11:01:17  profilanswer
 

Ouai mais ait toujours un contrôl sur les variables!
Très important selon l'utilisation que tu en fait.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203072
Proov
Art & Science
Posté le 20-09-2005 à 11:11:12  profilanswer
 

[:figti] si tu le dis :D

n°1203074
gatsusat
Posté le 20-09-2005 à 11:14:15  profilanswer
 

$page = (isset($_GET['page'])) ? $_GET['page'] : "";
$lang = (isset($_GET['lang'])) ? $_GET['lang'] : "fr";
 

n°1203098
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 11:25:48  profilanswer
 

A mon avis quand quelqu'un débute en php mieux vaut lui donner la syntaxe la plus simple et pas forcément la plus courte, c'est plus clair me semble-t-il, non?


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203135
gatsusat
Posté le 20-09-2005 à 11:43:07  profilanswer
 

ben j'aime bien les conditions simple comme celle ci :
 
$mavariable = (condition) ? valeur si vrai : valeur si faux;

n°1203326
Proov
Art & Science
Posté le 20-09-2005 à 14:02:49  profilanswer
 

merci Gatsusat !! c'est beaucoup mieux :love:  
 
maintenant il me reste 2 choses à faire:
- détecter la langue (je vais essayer de me débrouiller)
- un petite chose technique que je vais m'empresser de vous expliquer ci dessous :D  
 
 
Comment fait on pour récupérer ce qu'il ya marqué dans l'url et changer le lang=fr en lang=en
 
par exemple, quand je clique sur le petit drapeau "US" j'aimerais qu'il change juste le fr en en
 
 
merci :jap:

n°1203335
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 14:06:59  profilanswer
 

Bah un nouveau lien avec lang=en


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203387
esox_ch
Posté le 20-09-2005 à 14:34:34  profilanswer
 

gatsusat a écrit :

ben j'aime bien les conditions simple comme celle ci :
 
$mavariable = (condition) ? valeur si vrai : valeur si faux;


 
C'est cool pour les petits tests .. Mais ce matin je suis tombé sur un script fait par un collegue ... il y a des structures de ce genre qui font 3-4 lignes ... niveau lisibilité .. je fous un 0


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1203432
Proov
Art & Science
Posté le 20-09-2005 à 14:59:10  profilanswer
 

je viens de faire un truc qui détecte automatiquement la langue... comme ceci:
 
chargé dans index.php
 

$page = (isset($_GET['page'])) ? $_GET['page'] : "";;
 $lang_nav = explode(",",$_SERVER["HTTP_ACCEPT_LANGUAGE"]);
 $lang = $lang_nav[0];
 
 $page_affich = "content/".$lang."/".$page.".inc-".$lang.".php";


 
puis mes liens ont la forme

index.php?page=accueil&lang=<? echo($lang); ?>


 
on peut changer la langue manuellement avec ce systeme ?

Message cité 1 fois
Message édité par Proov le 20-09-2005 à 14:59:31
n°1203454
esox_ch
Posté le 20-09-2005 à 15:07:46  profilanswer
 

Pas a moins de modifier directement dans le navigateur.  
A part ca il faut que tu fasses un  
if($lang_nav == null)
 $lang_nav = array('fr');
 
Faut juste que tu controles si explode retourne null ou un array vide dans le cas ou le 2ème param soit null (ou vide)


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1203463
dwogsi
Défaillance cérébrale...
Posté le 20-09-2005 à 15:12:22  profilanswer
 

Proov a écrit :

je viens de faire un truc qui détecte automatiquement la langue... comme ceci:
 
chargé dans index.php
 

$page = (isset($_GET['page'])) ? $_GET['page'] : "";;
 $lang_nav = explode(",",$_SERVER["HTTP_ACCEPT_LANGUAGE"]);
 $lang = $lang_nav[0];
 
 $page_affich = "content/".$lang."/".$page.".inc-".$lang.".php";


 
puis mes liens ont la forme

index.php?page=accueil&lang=<? echo($lang); ?>


 
on peut changer la langue manuellement avec ce systeme ?


 
Tu fais quoi après?
include $page_affich;
?

Message cité 1 fois
Message édité par dwogsi le 20-09-2005 à 15:12:42

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1203494
gatsusat
Posté le 20-09-2005 à 15:29:15  profilanswer
 

esox_ch a écrit :

C'est cool pour les petits tests .. Mais ce matin je suis tombé sur un script fait par un collegue ... il y a des structures de ce genre qui font 3-4 lignes ... niveau lisibilité .. je fous un 0


 
+1  
 
vaut mieux faire :  

Code :
  1. $page = (isset($_GET['page'])) ? $_GET['page'] : ""


que

Code :
  1. if (isset($_GET['page']) {
  2.   $page = $_GET['page'];
  3. }
  4. else {
  5.   $page = "";
  6. }


 
mais c'est clair que lorsque l'on atteins des structures de ce genre :  
if (mavar = 2)
then if (montruc = 3)
       else if (monbidule > 4)
       end if
else echo "bidule"
end if
 
qu'une condition condensée (je la fait pas j'ai la flème)
et je pense que c'est plutot réservé aux Hardcodeurs en C++ pour optimiser et accélérer leurs programmes

n°1203889
Proov
Art & Science
Posté le 20-09-2005 à 22:39:48  profilanswer
 

dwogsi a écrit :

Tu fais quoi après?
include $page_affich;
?


 
oui :jap:

n°1204043
dwogsi
Défaillance cérébrale...
Posté le 21-09-2005 à 10:24:29  profilanswer
 


Tu prends des risques!

Citation :

$page = (isset($_GET['page'])) ? $_GET['page'] : "";;
 $lang_nav = explode(",",$_SERVER["HTTP_ACCEPT_LANGUAGE"]);
 $lang = $lang_nav[0];
 
 $page_affich = "content/".$lang."/".$page.".inc-".$lang.".php";


 
Là si tu regarde bien tu laisse complétement le choix de la page à inclure! Ca présente un risque ton code, et c'est le cou classique.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1204650
Proov
Art & Science
Posté le 21-09-2005 à 18:20:00  profilanswer
 

ouai mais dans une autre page (require var.php dans index) g utilisé un if file exist (le script donné en debut de topic)
 
pour l'instant ça marche pas trop mal :jap:

n°1204945
dwogsi
Défaillance cérébrale...
Posté le 22-09-2005 à 12:02:45  profilanswer
 

Et tu utilise quelque chose comme ca aussi:
 
ereg("[/|\\]",$_GET["page"]);
 
?


Message édité par dwogsi le 22-09-2005 à 15:44:47

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
mood
Publicité
Posté le   profilanswer
 


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

  Comment créer une architecture propre et fonctionelle...

 

Sujets relatifs
créer un site webCréer un objet à partir d'une chaine de caractère
Créer un champ de saisie formulaire dans une page web (newbie) ?Besoin de conseils pour créer une base mysql
créer un fichier .txt et faire un lien sur la .jsp / href (Websphere)créer une IHM pour mon programme en Fortran
Les logiciles pour créer son siteProblème pour créer un script....
creer un .execréer un resau
Plus de sujets relatifs à : Comment créer une architecture propre et fonctionelle...


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