Je viens de retrouver des vieux cds, et je regarde ce que je faisais à l'époque cad en 2001. J'avais commencé php en 1998 et venant de programmation traditionnelle, php3 introduisait enfin l'objet (simple mais quand même :) )

A l'époque je faisais déjà des sites en structure MVC sans le savoir (ca me semblait tellement logique) .

Bien sur ceci n'est qu'une infime partie des scripts mais c'est marrant de voir l'évolution.

Si vous aussi vous avez des vieux scripts postez les :)

Un objet qui "initialisait" le site:

<?php
/*
================================================================================
==                                                                            ==
==                              TApplication                                  ==
==                                                                            ==
== Classe gérant les paramètres d'une site                                    ==
==                                                                            ==
===============================  HISTORIQUE  ===================================
== 1.0.0.0 : Première version                                                 ==
==----------------------------------------------------------------------------==
==                              (c) 2001 LPA                                  ==
================================================================================
*/

class TApplication {
    // Version de la classe
    var $CLASSE_MAJOR_VERSION = "0";        // Numéro majeur de la classe
    var $CLASSE_MINOR_VERSION = "1";        // Numéro mineur de la classe

    var $Parameters = array();      // Tableau des Parametres du site
    var $FileName;

    /* 
       =========================================================================
       Constructor
       Paramètres : Nom du fichier de configuration
       Sortie :
       -------------------------------------------------------------------------
    */
    function TApplication($FileName) {
        $this->FileName = $FileName;
        $this->Read_File($this->FileName);
    }
    // -------------------------------------------------------------------------

/*
================================================================================
                                 METHODES PRIVEES                               
================================================================================
*/

/*
================================================================================
                                 METHODES PUBLIQUES                             
================================================================================
*/

    /*
       =========================================================================
       Méthode qui va récupérer un charger le fichier de configuration
       Paramètres : $param : Nom du fichier
       Sortie :     Résultat de la lecture : < 0 problème lors de la lecture
       -------------------------------------------------------------------------
    */
    function Read_File($file) {
        if ($file <> "") {
            $fp = fopen($file,"r");
            while ($ligne = fgets($fp, 1024)) {
                $ligne = ereg_replace(";.*$","",$ligne);    // On supprime les commentaires
                list($nom,$valeur) = explode("=",$ligne);
                $valeur = trim($valeur);
                $nom = trim($nom);
                $this->Parameters[$nom] = $valeur;
            }
            return $config;
        } else {
            Die("POPO");
        }
    }
    // -------------------------------------------------------------------------

    /* 
       =========================================================================
       Méthode qui va sauver les paramètres dans le fichier
       Paramètres : 
       Sortie :     
       -------------------------------------------------------------------------
    */
    function Save_Parameters() {
    }
    // -------------------------------------------------------------------------

    /*
       =========================================================================
       Méthode qui va récupérer un paramètre dans le tableau
       Paramètres : $param : Nom du paramètre
       Sortie :     Valeur du paramètre
       -------------------------------------------------------------------------
    */
    function Get_Parameter($param) {
        if ($param <> "") {
            return $this->Parameters[$param];
        } else {
            Die("POPO");
        }
    }
    // -------------------------------------------------------------------------

/*
================================================================================
                         METHODES SUR LES STATISTIQUES                          
================================================================================
*/

    /*
      =========================================================================
      Méthode qui renvoie le numéro complet de la classe : major.minor
       Paramètres :
       Sortie :
       -------------------------------------------------------------------------
    */
    function Get_Version() {
        return "$this->CLASSE_MAJOR_VERSION.$this->CLASSE_MINOR_VERSION";
    }
    // -------------------------------------------------------------------------

    /*
       =========================================================================
       Méthode qui renvoie le numéro majeur de la classe
       Paramètres :
       Sortie :
       -------------------------------------------------------------------------
    */
    function Get_Major_Version() {
        return $this->CLASSE_MAJOR_VERSION;
    }
    // -------------------------------------------------------------------------

    /*
       =========================================================================
       Méthode qui renvoie le numéro mineur de la classe
       Paramètres :
           Sortie :
       -------------------------------------------------------------------------
    */
    function Get_Minor_Version() {
        return $this->CLASSE_MINOR_VERSION;
    }
    // -------------------------------------------------------------------------

}

?>

A l'époque je travaillais sur plusieurs db (mysql, postgress) donc j'avais fais des classes d'abstraction (en oui pas de pdo:) )

<?php
// =============================================================================
// ==                                                                         ==
// ==              Classe d'abstraction des bases de données                  ==
// ==                                                                         ==
// ==-------------------------------------------------------------------------==
// ==                              (c) 2001 LPA                               ==
// =============================================================================

class LPA_DB_mySQL extends LPA_DB_Base {
    //============================================================================
    // Constructeur de la classe. 
    // Paramètres :
    //              $persistent - permet de savoir si la connection sera persistente
    //              $error      - permet de définir si en cas d'erreur, 
    //                            le script envoie un mail ou dans le fichier log
    //============================================================================
    function LPA_DB_mySQL($host="", $user="", $pwd="", $base="", $persistent=0, $error=0) {
        // On mets à jour la version de la classe de manipulation pour mysql
        $this->CLASSE_MINOR_VERSION = "2";
        $this->CON_PERS = $persistent;
        $this->ERROR_RED = $error;
        if (($host != "") AND ($user != "")) {
            $this->Connect($host,$user,$pwd);
        }
        if ($base != "") {
            $this->Select_DB($base);
        }
    }

    //============================================================================
    // Connect : Connecter une base de données 
    // Paramètres :
    //              $persistent - permet de savoir si la connection sera persistente
    //              $error      - permet de définir si en cas d'erreur, 
    //                                      le script envoie un mail ou dans le fichier log
    //============================================================================
    function Connect($host,$user,$pwd) {
        if ($this->ID_DB==-1) {
            $this->CON_HOST = $host;
            $this->CON_USER = $user;
            $this->CON_PWD = $pwd;

            if ($this->CON_PERS == 0) {
                $this->ID_DB=@mysql_connect($host,$user,$pwd);
            } else {
                $this->ID_DB=@mysql_pconnect($host,$user,$pwd);
            }
        }
    }

    //============================================================================
    // Close : Ferme une connection à la base de données
    // Paramètres :
    //              $persistent - permet de savoir si la connection sera persistente
    //              $error      - permet de définir si en cas d'erreur, 
    //                                      le script envoie un mail ou dans le fichier log
    //============================================================================
    function Close() {
        if ($this->ID_DB != 0) {
            return @mysql_close($this->ID_DB);
        }
    }

    //============================================================================
    // Select_DB : Selectionner la table
    // Paramètres :
    //              $persistent - permet de savoir si la connection sera persistente
    //              $error      - permet de définir si en cas d'erreur, 
    //                                      le script envoie un mail ou dans le fichier log
    //============================================================================
    function Select_DB($db) {
        $this->CON_DB=$db;
        if ($this->ID_DB) {
            return @mysql_select_db($db);
        } else {
            $this->ERROR_NO = @mysql_errno();
            $this->ERROR_ST = @mysql_error();
            return false;
        }
    }

    //============================================================================
    // Execute une requete SQL.
    // Paramètres :
    //              $
    //============================================================================
    function Execute($sql) {
        $this->REQUETESQL = $sql;
        $this->ID_SQL=@mysql_query($sql, $this->ID_DB);
        $this->ERROR_NO = @mysql_errno();
        $this->ERROR_ST = @mysql_error();
        $this->ROW_COUNT = @mysql_num_rows($this->ID_SQL);
        $this->INSERT_ID = @mysql_insert_id();
        if ($this->ERROR_NO>0) {
            $this->Error();
        }
    }

    //============================================================================
    // Get_Record : Lit l'enregistrement en cours 
    // et va placer le résulat dans Field
    // Paramètres : AUCUN
    //============================================================================
    function Get_Record() {
        $this->Fields=@mysql_fetch_array($this->ID_SQL);

        $Ligne = is_array($this->Fields);
        if (!$Ligne) {
            @mysql_free_result($this->ID_SQL);
            $this->ID_SQL=0;
        }
        return $Ligne;
    }

    //============================================================================
    // Seek : Permet de se positionner à un enregistrement précis.
    // Paramètres :
    //              $pos : Numéro physique de l'enreg où placer le curseur SQL
    //============================================================================
    function Seek($pos) {
        return @mysql_data_seek($this_ID_DB,$pos);
        $this->ERROR_NO = @mysql_errno();
        $this->ERROR_ST = @mysql_error();
        // On en profite pour récupérer les données...
        $this->Get_Record();
    }

    //============================================================================
    // Row_Count : Renvoie le nombre d'enregistrement à la requete précédament faite
    // Paramètres : AUCUN
    //============================================================================
    function Row_Count() {
        return $this->ROW_COUNT;
    }

    //============================================================================
    // Get_Insert_ID : Renvoie le numéro de l'enregistrement crée si l'index
    // est en auto-incrémenté
    // Paramètres : AUCUN
    //============================================================================
    function Get_Insert_ID() {
        return $this->INSERT_ID;
    }

    //============================================================================
    // Field : Renvoie la valeur du champ
    // Paramètres : $nom - Nom du champ dont la fonction doit retourner la valeur
    //============================================================================
    function Field($nom) {
        return $this->Fields[$nom];
    }
}
?>

Aucune réponse