IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Point de départ pour un nouveau site (structure + questions)


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2002
    Messages : 19
    Par défaut Point de départ pour un nouveau site (structure + questions)
    Bonjour,

    Je souhaite commencer la création d'un site Internet (j'en ai déjà réalisé plusieurs) mais je souhaite faire celui-ci proprement et si possible optimisé (pour éviter une surcharge chez l'hébergeur).

    J'ai donc 2 choix possibles :

    1 seule page index.php avec passage de la page affichée comme variable

    + plus facile à maintenir

    - plus difficile à sécuriser (j'ai encore 2-3 tutos à lire la dessus)
    - je ne vois pas comment je pourrai différencier mes titres / description sur chaque page (j'aimerai éviter des "if" pour chaque page)
    - Je risque d'avoir des fonctions qui seront incluses mais non utilisées ou en tout cas pas sur toutes les pages donc la page finale sera plus lourde

    Plusieurs pages avec include seulement sur le contenu

    + moins de soucis pour la sécurité
    + facile pour afficher des titres / descriptions différents pour chaques pages

    - plus lourd à maintenir

    En plus de ceci, j'aimerai savoir si c'est mieux de mettre un maximum de contenu dans une DB (titre, description, contenu page....) ou si il est mieux de ne mettre que le minimum dans une DB ?

    Je souhaiterai également savoir si il est conseillé d'ouvrir et de fermer ma connexion MySQL à chaque fichier inclus ou si il est mieux de l'ouvrir en haut du fichier index.php et de la fermer une fois la page chargée ?

    Je vous remercie d'avance pour votre aide et si vous avez des tutoriaux ou autre je suis preneur.

    Salutations.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Par défaut
    Pour ta première question, c'est un choix à faire. Mais pour la première solution, tu peux utiliser les tableaux ( array() ) et pour contrôler utiliser in_array().

    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $array = array( 'index' => 'Titre de l\'index',
                    'staff' => 'Titre de la page staff',
                    {etc...} );
     
    $chemin = './'. $_GET['page'] . '.php';
     
    if ( file_exists($chemin) and in_array($_GET['page'], $array) )
    {
     
         require $chemin;
     
    }
    En plus de ceci, j'aimerai savoir si c'est mieux de mettre un maximum de contenu dans une DB (titre, description, contenu page....) ou si il est mieux de ne mettre que le minimum dans une DB ?
    A ce compte là, autant mettre les données dans ton fichier de configuration ^_^.

    Je souhaiterai également savoir si il est conseillé d'ouvrir et de fermer ma connexion MySQL à chaque fichier inclus ou si il est mieux de l'ouvrir en haut du fichier index.php et de la fermer une fois la page chargée ?
    Il faut l'ouvrir en début de page, si tu l'utilises directement et tout le temps. Si ce n'est pas le cas, tu l'ouvres quand tu en as besoin, puis tu la ferme quand tu n'en as plus besoin dans toute ta page.


    Bonne chance ^_^.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2002
    Messages : 19
    Par défaut
    Merci pour ce début de réponse (début car ca ne m'aide pas à choisir la méthode ).

    Je vais donc faire un fichier qui contient titre + description de mon site pour chaque page.

    Salutations

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Par défaut
    Ne prend pas mal ce message, mais on n'est pas dans ta tête ...

    On ne peut aider qu'avec ce que l'on nous donne ... Tu nous dis : Je veux faire un site bien.

    Bien, c'est déjà un bon début, mais tu ne nous donnes pas le nombre de page que tu auras, si ça risque d'évoluer ou non ...

    Si tu veux des réponses complètes, il faut formuler des questions complètes, et ce avec toutes les données. Et c'est valable pour tout le monde non ?

    Sur ce, j'ai fais une erreur dans mon code, j'ai édité.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2002
    Messages : 19
    Par défaut
    Effectivement j'ai vu qu'il y avait 2 erreurs mais j'ai corrigé en route !

    OK désolé je vais essayer d'être plus précis.

    Pour l'instant, j'ai fait un annuaire de blogs donc j'avais pas mal de page dynamique (recherche, navigation dans l'annuaire etc...) mais c'était fastidieux à maintenir car j avais une page pour chaque fonctionnalité.

    Le prochain site que je souhaite faire est assez semblable. Donc pas beaucoup de pages mais beaucoup de choses dynamiques (titre, description et bien sur contenu). Effectivement le site va certainement évoluer avec plusieurs "modules" qui s'y accrocheront (RSS, votes, forum...).

    J'espère avoir été un peu + clair. Merci de me dire si il faut que je sois encore plus précis.

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Par défaut
    Honnetement, l'idée du tout en un fichier me parait peu élégante. Certes tu n'as qu'un fichier mais pour t'y retrouver dedances, ca va etre l'enfer.

    Pour structurer au mieux ton code, ceratins te diront de tenter une approche à base de template, qui te permettent de séparer les traitements et l'affichage, même si je ne suis pas satisfait personnellement des templates actuels, cette solution est déjà plus structurée.

    Généralement, j'utilise en gros un fichier pour un ensemble de gestion. Par exemple un fichier news.php pour gérer la selection des news que je veux afficher, la suppréssion et la modification.

    Tu peux aussi envisager un systeme de classes. Toujours avec l'exemple des news, tu crées une classe news.php dans laquelle tu regroupes les méthodes propres aux news et tu inclues ces classes dans tes traitement. Ca a le mérite de mutualiser le code, d'alléger et de rendre plus lisible les traitements tout en te permettant une maintenance aisée de tes classes.

    Voilà quelques idées qui ne s'excluent d'ailleurs pas entre elles.

    Ensuite, concernant l'optimisation, ton souci principal doit être avant tout:
    - d'éviter la redondance des requetes SQL sur une page.
    - Avoir des requetes qui ne selectionnent réellement que les lignes dont tu as besoin.
    - Penser à liberer les ressources et a fermer la connexion si nécessaire.

    Ca c'est au niveau du code, au niveau de la structure de la bdd:
    - Vérifier les index sur tes tables
    - Avoir un modele BDD correct.

    Tu dois aussi faire attention à ce que tu consommes une fois les optimisations effectuées: tu pourras toujours avoir des requetes super optimisées, une requete retournant 50.000 éléments pénalisera toujours beaucoup plus un petit serveur qu'un serveur plus adapté. A toi donc de prendre les mesures et de trouver un serveur qui répondra à tes attentes.

    Evidemment, c'est mon avis sur la chose et chaque personne a ses préférences, ou ses affinités avec telle ou telle approche, en tout cas, j'espere que ca t'aidera à affiner ton choix final.

Discussions similaires

  1. Indexation pour mon nouveau site web
    Par houssine91 dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 26/02/2014, 18h44
  2. Monétisation pour un nouveau site
    Par identifiant_bidon dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 16/01/2012, 18h23
  3. Réponses: 0
    Dernier message: 07/11/2011, 11h06
  4. Avis pour un nouveau site en construction
    Par sajyd dans le forum Mon site
    Réponses: 4
    Dernier message: 18/02/2007, 17h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo