Bonjour,

Je débute en PHP, sous Windows.

Je suis un tutoriel sur ce même site, sur MVC.

J'ai un fichier "index.php":
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
include 'connexion.php';
 
// sans le fichier modele.php
/*$produits = $connexion->query('select * from produit')or die(print_r($connexion->errorInfo()));*/
 
// avec fichier modele.php
include_once 'Modele.php';
$produits = getProduits();
 
 
include_once 'vueAccueil.php';
Celui-ci fonctionne parfaitement

Voici le fichier "connexion.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
<?php
$PARAM_hote='localhost'; // le chemin vers le serveur
$PARAM_port='3306';
$PARAM_nom_bd='xxxx'; // le nom de votre base de données
$PARAM_utilisateur='xxxx'; // le nom d'utilisateur pour se connecter
$PARAM_mot_passe='xxxx'; // mot de passe de l'utilisateur pour se connecter
 
try
{
	$connexion = new PDO('mysql:host='.$PARAM_hote.';port='.$PARAM_port.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
}
 
catch(Exception $e)
{
	echo 'Erreur : '.$e->getMessage().'<br />';
	echo 'N° : '.$e->getCode();
	exit;
}
?>
Qui fonctionne correctement.

Par contre quand j'essai de passer par un fichier nommé "modele.php", afin de séparer le code exécutant la requête, cela plante.
Voici le fichier "modele.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
<?php
// connexion à la BDD
include 'connexion.php';
 
// Renvoi la liste des produits
function getProduits()
{
        $connexion = new PDO('mysql:host=localhost;port=3306;dbname=xxxx;charset=utf8', 'xxxx', 'xxxx');
 
	$produits = $connexion->query('select * from produit')or die(print_r($connexion->errorInfo()));
 
return $produits;
}
?>
Cela me revoit l'erreur suivante:
Fatal error: Cannot redeclare getProduits() (previously declared in C:\xampp\htdocs\www\testMVC\Modele.php:10) in C:\xampp\htdocs\www\testMVC\Modele.php on line 15
Est-ce que vous avez une idée, une piste...

Merci par avance.