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

Langage PHP Discussion :

Problème d'inclusion de fichiers


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Problème d'inclusion de fichiers
    Bonjour à tous,

    j'ai regardé sur la FAQ et le forum je ne trouve pas de solution a mon problème, problème qui est le suivant :

    Je développe un "logiciel" avec PHP & MySQL en MVC et dans au moment d'inclure les fichiers qui vont bien bin il ne m'exécute pas mon script PHP après mon require_once MAIS il ne m'affiche aucune erreur...c'est grave?

  2. #2
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    salut,

    on peut voir le code ?
    A priori les fichiers sont inclus vu qu'il y a pas d'erreurs (à moins que tu caches les erreurs dans ton php.ini ou par un E_ALL dans ton script)

  3. #3
    Invité
    Invité(e)
    Par défaut
    Donc voici le code :

    -le fichier de test qui ne fonctionne pas (les echo divers et variés n'ont rien a voir avec le logiciel final ^^ je précise lol)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    	echo "kikou";
    	require_once ("../Controler/animaux.controler.php");
    	echo "kikou2";
     
    	$test = new Animaux(1);
     
    	echo "a";
    ?>
    -le fichier animaux.controler.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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    <?php
     
    	require_once("../Classe/connexion.class.php");
    	require_once("../Classe/animaux.class.php");
     
    	//////////////////////////////////////
    	/* Traitement du formulaire d'ajout */
    	//////////////////////////////////////
     
    	function traitementAjoutAnim($_anim_lib) {
    		if( Animaux::existeAnimLib($_anim_lib) )
    			throw new Exception("L'animal : { $_anim_lib } existe déjà !");
    		Animaux::ajout($_anim_lib);
    	}
     
    	/////////////////////////////////////////////
    	/* Traitement du formulaire de suppression */
    	/////////////////////////////////////////////
     
    	function traitementSupprimeAnim($_anim_id) {
    		if( ! Animaux::existeAnimId($_anim_id) )
    			throw new Exception("L'animal dont l'id est : { $_anim_id } n'existe pas !");
    		Animaux::supprime($_anim_id);
    	}
     
    	//////////////////////////////////////////////
    	/* Traitement du formulaire de modification */
    	//////////////////////////////////////////////
     
    	function traitementModifAnim($_anim_id, $_newVal) {
    		if( ! Animaux::existeAnimId($_anim_id) )
    			throw new Exception("L'animal dont l'id est : { $_anim_id } n'existe pas !");
    		$modifierAnim = new Animaux($_anim_id);
    		$modifierAnim.setLibAnim($_newVal);
    	}
     
    	if( isset($_POST['ajout']) ) {
    		try {
    			traitementAjoutAnim($_POST['anim_lib']);
    			echo "Le nouvel animal a bien été ajouté !";
    			?>
    			<script type="text/javascript">
    				window.setTimeout("location=('../Vue/animaux.vue.php');",1500)
    			</script>
    			<?php
    		}
    		catch (Exception $e) {
    			$e->getMessage();
    		}
    	}
     
    	if( isset($_POST['supprime']) ) {
    		try {
    			traitementSupprimeAnim($_POST['anim_id']);
    			echo "L'animal a bien été supprimé !";
    			?>
    			<script type="text/javascript">
    				window.setTimeout("location=('../Vue/animaux.vue.php');",1500)
    			</script>
    			<?php
    		}
    		catch (Exception $e) {
    			$e->getMessage();
    		}
    	}
     
    	if( isset($_POST['modifie']) ) {
    		try {
    			traitementModifAnim($_POST['anim_id']);
    			echo "L'animal a bien été modifié !";
    			?>
    			<script type="text/javascript">
    				window.setTimeout("location=('../Vue/animaux.vue.php');",1500)
    			</script>
    			<?php
    		}
    		catch (Exception $e) {
    			$e->getMessage();
    		}
    	}
     
    ?>
    -le fichier animaux.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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
     
    <?php
    	require_once("connexion.class.php");
    	/**
    	 * Classe Animaux
    	 * @param anim_id Identifiant de l'animal
    	 * @param anim_lib Libellé de l'animal
    	 */
    	class Animaux {
     
    		private $anim_id;
    		private $anim_lib;
     
    		/**
    		 * Constructeur par défaut
    		 */
    		 public function __construct() {
    		 	$this->anim_id = null;
    		 	$this->anim_lib = null;
    		 }
     
    		/**
    		 * Constructeur avec un paramètre
    		 * @param _anim_id Identifiant de l'animal
    		 */
    		public function __construct($_anim_id) {
     
    			// Sélection de l'id passé en paramètre 
    			$res = Connexion::requete("SELECT * FROM animaux WHERE anim_id = $_anim_id");
     
    			if( $res !== false && mysql_num_rows($res) = 1 ) {
    				// Si l'animal existe on rempli les champs
    				$ligne = mysql_fetch_assoc($res);
    				$this->anim_id = $ligne['anim_id'];
    				$this->anim_id = $ligne['anim_lib'];
    			}
    			else
    				// Sinon on renvoi une exception
    				throw new Exception("Pas d'animal pour cet id : " . $_anim_id . "");
    		}
     
    		/* Fonctions et méthodes */
    		/* Accesseurs */
     
    		/**
    		 * Accesseur pour anim_id
    		 */
    		public function getIdAnim() {
    			return $this->anim_id;
    		}
     
    		/**
    		 * Accesseur pour anim_lib
    		 */
    		public function getLibAnim() {
    			return $this->anim_lib;
    		}
     
    		/* Modificateurs */
     
    		/**
    		 * Modificateur pour anim_lib
    		 * @param newVal Nouvelle valeur pour anim_lib
    		 */
    		public function setLibAnim($newVal) {
    			Connexion::requete("UPDATE animaux SET anim_lib = '" . strtolower(Connexion::protectionChaine($newVal)) . "' WHERE anim_id = " . $this->anim_id . "");
    			$this->anim_lib = $newVal;
    		}
     
    		/* Fonctions magiques */
     
    		/**
    		 * Fonction d'affichage
    		 */
    		public function __toString() {
    			return "Identifiant : $this->anim_id \n Libellé : $this->anim_lib";
    		}
     
    		/* Fonctions static */
     
    		/**
    		 * Fonction permettant d'ajouter un animal à la BDD
    		 * @param _anim_lib Libellé du nouvel animal
    		 * @static
    		 */
    		public static function ajout($_anim_lib) {
    			Connexion::requete("INSERT INTO animaux (anim_lib) VALUES('" . strtolower(Connexion::protectionChaine($_anim_lib)) . "')");
    		}
     
    		/**
    		 * Fonction permettant la suppression d'un animal à la BDD
    		 * @param _anim_id Identifiant de l'animal à supprimer
    		 * @static
    		 */
    		public static function supprime($_anim_id) {
    			Connexion::requete("DELETE FROM animaux WHERE anim_id = " . Connexion::protectionChaine($_anim_id) . "");
    		}
     
    		/**
    		 * Fonction permettant de vérifier si l'identifiant de l'animal est présent dans la table
    		 * @param _anim_id Identifiant de l'animal cherché
    		 * @static
    		 */
    		public static function existeAnimId($_anim_id) {
    			$res = Connexion::requete("SELECT * FROM animaux WHERE anim_id = " . Connexion::protectionChaine($_anim_id) . "");
    			if( $res !== false && mysql_num_rows($res) == 1 )
    				return true;
    			return false;
    		}
     
    		/**
    		 * Fonction permettant de vérifier si le libellé de l'animal n'existe pas déjà
    		 * @param _anim_lib Libellé à vérifier
    		 * @static
    		 */
    		public static function existeAnimLib($_anim_lib) {
    			$res = Connexion::requete("SELECT * FROM animaux WHERE anim_lib = '" . strtolower(Connexion::protectionChaine($_anim_lib)) . "'");
     
    			if( $res !== false && mysql_num_rows($res) == 1 )
    				return true;
    			return false;
    		}
    	}
    ?>
    L'erreur ne peut pas venir de connexion.class.php (ce fichier n'est pas de moi à la base mais d'un de mes professeurs donc je ne me permettrais pas de poster ces sources sans sa permission).

  4. #4
    Membre chevronné Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Par défaut
    Met tout en premier dans ton fichier de test:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ini_set('error_reporting', E_ALL|E_STRICT);
    ini_set('display_errors', 1);
    Tu as probablement un problème de chemin pour les require_once

  5. #5
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Fatal error: Cannot redeclare Animaux::__construct() in /var/www/html/GestCom/Classe/animaux.class.php on line 25
    Call Stack
    #	Time	Memory	Function	Location
    1	0.0546	79312	{main}( )	../animaux.test.php:0
    2	0.1064	80376	require_once( '/var/www/html/GestCom/Controler/animaux.controler.php' )	../animaux.test.php:6
    Voila ce qu'il me dis

  6. #6
    Membre chevronné Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Par défaut
    Ah oui j'avais pas vue:
    Tu as 2 fois la fonction __construct() dans ta classe Animaux

    edit: on ne peux pas surcharger les fonctions dans php

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Smarty] Problème d'inclusion de fichier .tpl
    Par Dev-master dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 03/08/2008, 16h40
  2. Réponses: 4
    Dernier message: 31/03/2008, 14h07
  3. Problème d'inclusion de fichiers
    Par _Michel dans le forum C
    Réponses: 1
    Dernier message: 15/03/2008, 17h18
  4. Problème d'inclusion de fichiers
    Par VenusX117 dans le forum C
    Réponses: 8
    Dernier message: 22/10/2006, 11h58
  5. Problème d'inclusion de fichiers
    Par navis84 dans le forum Langage
    Réponses: 3
    Dernier message: 29/08/2006, 14h24

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