Bonjour

J'essaie d'apprendre correctement la POO en PHP et je galère un petit peu. C'est pour cela que j'aimerai quelques conseils !

J'ai lu des cours et des tutoriels sur le net ainsi que sur un livre. Et avec ça j'ai écrit ceci :

ville.class.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
class Ville
{
 
    public $id;
    public $nom;
    public $description;
 
    function __construct($cid = null, $cnom = null, $cdescription = null)
    {
        if (!empty($cid))
        {
            $this->id = $cid;
        }
 
        if (!empty($cnom))
        {
            $this->nom = $cnom;
        }
 
        if (!empty($cdescription))
        {
            $this->description = $cdescription;
        }
    }
 
    public function nom()
    {
        return $this->nom;
    }
 
    public function description()
    {
        return $this->description;
    }
 
}
villeManage.class.php (avec les autres fonctions comme la modification, la suppression par exemple)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
class villeManage
{
    protected $db;
 
    public function __construct()
    {
        $this->db = $db;
    }
 
    protected function addVille(Ville $ville)
    {
        $query = $this->db->prepare('INSERT INTO VILLE SET nom_ville = :nom, description_ville = :description');
 
        $query = bindValue(':nom', $ville->nom()); 
        $query = bindValue(':description', $ville->description());
 
        $query = execute();
    }
}
includes.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
include 'ville.class.php';
 
$connection = mysql_connect('serveur', 'user', 'pwd') or die ("<p class='error'>Sorry, we were unable to connect to the database server.</p>");
$database = "base";
mysql_select_db($database, $connection) or die ("<p class='error'>Sorry, we were unable to connect to the database.</p>");
 
function AfficheVille($cid = null, $cnom = null, $cdescription = null)
{
    $query = mysql_query("SELECT * FROM ville ORDER BY nom_ville ASC"); 
 
    $villeArray = array();
    while ($row = mysql_fetch_assoc($query))
    {
        $listVille = new ville($row["id_ville"], $row['nom_ville'], $row['description_ville']);
        array_push($villeArray, $listVille);
    }
    return $villeArray;
}
Tout d'abord, j'aimerai savoir si ce que j'ai écrit est "bien". Et deuxièmement, si ça suit (ou pas du tout) un schéma MVC.

Ensuite, quelque chose que j'ai du mal à voir, c'est : ajouter une ville -> on a addVille() comme fonction. Mais comment récupère-t-on les données que l'on aimerait bien mettre dans la base ? Via un formulaire tout "simple" sur la même page ? Avec des $_POST ?

Si vous pouviez m'éclaircir un peu plus sur la POO en PHP, sur le découpage des pages (entre les pages d'admin et les pages pour les visiteurs), ça me serait bien utile

Merci !