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 :

Site PHP & erreurs modele + controleur


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut Site PHP & erreurs modele + controleur
    Bonjour à tous.

    Je réalise un site en PHP, pour mes études, avec pour thème une organisation caritative avec des fonctions d'ajout, de modification, de suppression, de dons, de membres ...

    Le site pourraît être fonctionnel (CSS terminé ...), puisque lorsque j'ajoute un don, un projet ... il m'affiche ces erreurs :
    Dernière modification par Invité ; 26/11/2020 à 07h32.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    La première étape pour résoudre ce genre de problème est d'afficher le contenu des variables utilisées. Si elles ne contiennent pas l'information attendue, il faut ensuite remonter à l'endroit où la variable a été modifiée et continuer l'affichage de la même façon.

    En PHP, vous pouvez essayer cette fonction qui affichera dans le code HTML, n'importe quelle variable composée d'objets, tableaux, code XML ou valeurs TRUE, FALSE ou NULL,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function aff($var) {
    	echo "<pre>";
    	echo htmlspecialchars(var_export($var, TRUE));
    	echo "</pre>";
    }

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je ne comprends pas, où dois-je insérer cette fonction ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour.

    Je n'ai toujours pas réussi à résoudre mon erreur, personne pour y contribuer ?

  5. #5
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2020
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2020
    Messages : 34
    Points : 115
    Points
    115
    Par défaut
    Bonjour,

    Pour l'erreur ligne 248, le message indique qu'une une constante inexistante nommée mdp est utilisée.
    La ligne en question ressemble un peu à cet exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $t = array(TEST => "abc");
    Le code ci-dessus donne à la clé la valeur d'une constante nommée TEST.
    J'imagine que ce qui est attendu dans ton code ressemblerait plus à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $t = array("TEST" => "abc");
    Le premier exemple fonctionne quand même car historiquement le nom d'une constante non définie est interprété comme du texte (TEST devient "TEST").
    Ta version de PHP tolère ça (d'où le faible niveau d'erreur) mais la syntaxe est obsolète, donc mieux vaut corriger ça.


    Pour l'autre erreur, il semble que la clé "date" d'au moins $unProjet n'existe pas.
    La fonction postée par Mathieu peut aider à rechercher l'origine de l'erreur, en affichant le contenu de tes variables.

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Bonsoir,

    le magicien houd.ini a raison de te signaler une erreur de syntaxe dans la classe modele.class. Elle est présente 4 fois (partout où tu déclares un tableau) ; il faut écrire
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $donnees = array('idcommentaire'=>$tab['idcommentaire'], 'datecomment'=>$tab['datecomment'], 'contenu'=>$tab['contenu'],'note'=>$tab['note'],'idprojet'=>$tab['idprojet'], 'idmembre'=>$tab['idmembre ']); //l.50
     
    $donnees = array('datedon'=>$tab['datedon'], 'somme'=>$tab['somme'], 
                    'appreciation'=>$tab['appreciation'], 'idprojet'=>$tab['idprojet'],'idmembre'=>$tab['idmembre']); //l.145
     
    $donnees=array('nom'=>$tab['nom'],'prenom'=>$tab['prenom'],'adresse'=>$tab['adresse'],'tel'=>$tab['tel'],'email'=>$tab['email'],'mdp'=>$tab['mdp']); //l.248
     
    $donnees = array('description'=>$tab['description'],'datelancement'=>$tab['datelancement'],'pays'=>$tab['pays'],'ville'=>$tab['ville'],'budget'=>$tab['budget'],'sommecollectee'=>$tab['sommecollectee']); //l.343

    concernant la fonction de debug proposée par mathieu, personnellement, j'utilise celle-là :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function debug($location, $var)
    {
        echo "<br/>".(is_string($location))?$location:''."<br/><pre>";
        var_dump($var);
        echo "</pre><br/>";
    }
    L'intérêt du paramètre $location est d'indiquer où se trouve l'affichage de variable (nom du fichier et numéro de la ligne) car souvent, plus tard, on ne sait plus où on avait placé ce code de debug...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  7. #7
    Invité
    Invité(e)
    Par défaut
    Alea Jacta Est.
    Dernière modification par Invité ; 26/11/2020 à 07h33.

  8. #8
    Invité
    Invité(e)
    Par défaut
    La présentation a été repoussée.

    J'ai pu corriger les erreurs.

    Dernier problème, les ajouts ne s'affichent pas dans les tableaux (accueil du site et page du projet / commentaire ...) malgré "linsertion réussie". Comment faire ?

  9. #9
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Bonsoir,
    ça va être difficile de te répondre, vu qu'il semblerait (par erreur) que tu as supprimé le code du post #1.

    J'avais noté ce code :
    Code html+php : 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
     
    <table class="affichage" border= 1>
        <tr>
     
            <th> Commentaire </th>
            <th> Don </th>
            <th> Membre </th>
            <th> Projet </th>
     
     
        </tr>
        <?php
        foreach ($lesCommentaires as $unCommentaire)
        {
            echo"
                <tr>
                    <td>".$unCommentaire['date']."</td>
                    <td>".$unCommentaire['contenu']."</td>
                    <td>".$unCommentaire['note']."</td>
                </tr>";
        }
     
        foreach ($lesDons as $unDon)
        {
            echo"
                <tr>
                    <td>".$unDon['date']."</td>
                    <td>".$unDon['somme']."</td>
                    <td>".$unDon['appreciation']."</td>
                </tr>";
        }
     
        foreach ($lesMembres as $unMembre)
        {
            echo"
                <tr>
                    <td>".$unMembre['nom']."</td>
                    <td>".$unMembre['prenom']."</td>
                    <td>".$unMembre['adresse']."</td>
                    <td>".$unMembre['telephone']."</td>
                    <td>".$unMembre['email']."</td>
                    <td>".$unMembre['motdepasse']."</td>
                </tr>";
        }
     
        foreach ($lesProjets as $unProjet)
        {
            echo"
                <tr>
                    <td>".$unProjet['description']."</td>
                    <td>".$unProjet['date']."</td>
                    <td>".$unProjet['pays']."</td>
                    <td>".$unProjet['ville']."</td>
                    <td>".$unProjet['budget']."</td>
                    <td>".$unProjet['somme']."</td>
                </tr>";
        }
        ?>
    </table>
    mais il ne fait que de l'affichage...J'ai aucun code qui fasse de l'insertion.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  10. #10
    Invité
    Invité(e)
    Par défaut
    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
     
    private $pdo ;
     
            public function __construct ()
            {
                try
                {
     
                    $this->pdo = new PDO("mysql:host=localhost;dbname=secours", "root", "");
                }
                catch (PDOException $exp)
                {
                    echo "Erreur de connexion au serveur localhost/secours";
                    echo $exp->getMessage();
                }
            }
    Pour l'affichage / insertion :
    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
     
    <table class="affichage" border= 1>
        <tr>
     
            <th> Date du lancement </th>
            <th> Pays </th>
            <th> Somme collectée </th>
     
        </tr>
        <?php
     
     
     
            foreach ($lesProjets as $unProjet) 
            {
                echo"
                <tr>
                    <td>".$unProjet['datelancement']."</td>
                    <td>".$unProjet['pays']."</td>
                    <td>".$unProjet['sommecollectee']."</td>
                </tr>";
            }
        ?>
    </table>
    Pour l'insertion réussie : voici un élément de réponse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //appel de la vue insert
          require_once("vue/vueAjoutMembre.php");
          if (isset ($_POST["Valider"]))
          {
              $unControleur->insertMembre($_POST);
              echo "<br/> <p>Insertion réussie du membre</p> <br/>";
          }

  11. #11
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Le code que tu appelles "affichage/insertion" ne fait que de l'affichage.

    Pour comprendre pourquoi l'insertion ne se fait pas, il faudrait donner le code de la classe qui contient la méthode insertMembre.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  12. #12
    Invité
    Invité(e)
    Par défaut
    Pour la fonction insertMembre :

    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
     
    public function insertMembre($tab)
    		{
    			if ($this->pdo == null)
    			{
    				return null;
    			}
    			else
    			{
     				$requete = "insert into membre values (null,:idmembre,:nom,:prenom,:adresse,:tel,:email);";
     
    				$donnees=array('idmembre'=>$tab['idmembre'],
    					'nom'=>$tab['nom'],
    					'prenom'=>$tab['prenom'],
    					'adresse'=>$tab['adresse'],
    					'tel'=>$tab['tel'],
    					'email'=>$tab['email']);
     
    				$select = $this->pdo->prepare($requete);
     
    		 		$select->execute($donnees);
    		 	}
    		}
    Pour la vueAjoutMembre

    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
     
    <h3>Ajout d'un membre</h3>
     
     
    <form class="tabajt" method ="post" action="">
    	<div class="ajt">
    	<table class="Ajout" border=0>
     
    		<?php echo ($unMembre==null)?"":"<input type='hidden' name='idmembre' value='".$unMembre['idmembre']."'>"?>
     
    		<tr><td>ID Membre :</td><td><input type="text" name="idmembre"
    					value="<?php echo ($unMembre==null)?"":$unMembre['idmembre']; ?>"></td></tr>
     
    		<tr><td>Nom :</td><td><input type="text" name="nom"
    					value="<?php echo ($unMembre==null)?"":$unMembre['nom']; ?>"></td></tr>
     
    		<tr><td>Prénom :</td><td><input type="text" name="prenom"
    					value="<?php echo ($unMembre==null)?"":$unMembre['prenom']; ?>"></td></tr>
     
    		<tr><td>Adresse :</td><td><input type="text" name="adresse"
    					value="<?php echo ($unMembre==null)?"":$unMembre['adresse']; ?>"></td></tr>
     
    		<tr><td>Téléphone :</td><td><input type="text" name="tel" minlength="10" maxlength="10"
    					value="<?php echo ($unMembre==null)?"":$unMembre['tel']; ?>"></td></tr>
     
    		<tr><td>Mail :</td><td><input type="email" name="email"
    					value="<?php echo ($unMembre==null)?"":$unMembre['email']; ?>"></td></tr>
     
     
    		<tr class="divbouton">
    			<td><input class="bouton" type="submit" name="Valider" value="Valider"></td>
    			<td class="bouton1"><input class="bouton" type="reset" name="Annuler" value="Annuler"></td>
    			<?php echo ($unMembre==null)?"</td>":"<input class='bouton' type='submit' name='Modifier' value='Modifier'></td>"; ?>
    		</tr>
    	</table>
    </div>
    </form>
    Pour la vueSelectMembre ... avec le tableau qui devrait afficher les données insérées à l'instant, mon dernier problème pour rappel !

    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
     
    <h3> Liste des membres </h3>
     
    <table class="affichage" border= 1 >
            	<tr><th> ID Membre </th>
                <th> Nom </th>
                <th> Prénom </th>
                <th> Adresse </th>
                <th> Téléphone </th>
                <th> Email </th>
     
              </tr>
     
        <?php
     
        foreach ($lesMembres as $unMembre)
            {
            echo "<tr>  <td>".$unMembre['idmembre']."</td>
                    		<td>".$unMembre['nom']."</td>
                  			<td>".$unMembre['prenom']."</td>
                  		 	<td>".$unMembre['adresse']."</td>
                  		 	<td>".$unMembre['tel']."</td>
                  		 	<td>".$unMembre['email']."</td>
                        <td><a href='index.php?page=6&action=s&idmembre=".$unMembre['idmembre']."'><img class='trash'src='trash.png'></img></a>
                         <a href='index.php?page=6&action=u&idmembre=".$unMembre['idmembre']."'><img class='edit'src='edit.png'></img></a></td>
                </tr>";
           	}
        ?>
    </table>

    Une dernière aide avant ma présentation demain ?!
    Dernière modification par Invité ; 02/12/2020 à 18h03.

  13. #13
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Pas le temps de regarder avant demain après-midi. Y a urgence ?

    Citation Envoyé par (.....) Voir le message
    Une dernière aide avant ma présentation demain ?!
    Désolé ; j'avais pas vu...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  14. #14
    Invité
    Invité(e)
    Par défaut
    Dans quel fichier dois-je mettre ce code PDO ??? Contrôleur, modèle ??

    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
     
    <?php
    $dsn = 'mysql:dbname=test;host=127.0.0.1';
    $user = 'googleguy';
    $password = 'googleguy';
     
    /*
        L'utilisation des blocs try/catch autour du constructeur est toujours valide
        même si nous définissons le ERRMODE à WARNING sachant que PDO::__construct
        va toujours lancer une exception PDOException si la connexion échoue.
    */
    try {
        $dbh = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
    } catch (PDOException $e) {
        echo 'Échec de la connexion : ' . $e->getMessage();
        exit;
    }
     
    // Ceci fera que PDO lancera une erreur de niveau E_WARNING au lieu d'une exception (lorsque la table n'existe pas)
    $dbh->query("SELECT wrongcolumn FROM wrongtable");
    ?>
    Parce que j'ai déjà ça dans le contrôleur

    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
     
    <?php
     
        require_once ("modele/modele.class.php");
     
        class Controleur
        {
            //un seul attribut c'est une instance de la classe Modele
     
            private $unModele ;
     
            public function __construct ()
            {
                $this->unModele = new Modele ();
            }
    Et ça dans le modèle ....

    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
        class Modele
        {
            private $pdo ;
     
            public function __construct ()
            {
                try
                {
     
                    $this->pdo = new PDO("mysql:host=localhost;dbname=secours", "root", "");
                }
                catch (PDOException $exp)
                {
                    echo "Erreur de connexion au serveur localhost/secours";
                    echo $exp->getMessage();
                }
            }

  15. #15
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    A mon avis dans le modèle mais vu que t'es visiblement en local, le password est vide !
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  16. #16
    Invité
    Invité(e)
    Par défaut
    Oui, car je n'ai pas besoin de mot de passe pour ce projet ...

    Donc, je modifie ce que j'ai dans mon modèle pour y mettre le premier code ??

  17. #17
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Oui
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  18. #18
    Invité
    Invité(e)
    Par défaut
    Ca ne marche pas ...

    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
     
    <?php
    	class Modele
    	{
    		private $pdo ;
     
    		$db = "mysql:host=localhost;dbname=secours";
    		$user = 'root';
    		$password = "";
     
     
    		public function __construct ()
    		{
    		try
    		{
        	$db = new PDO($db, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
    		}
    		catch (PDOException $e)
    		{
        	echo 'Échec de la connexion : ' . $e->getMessage();
        	exit;
    		}
     
    // Ceci fera que PDO lancera une erreur de niveau E_WARNING au lieu d'une exception (lorsque la table n'existe pas)
    		$db->query("SELECT wrongcolumn FROM wrongtable");
     
    		}
    Parse error: syntax error, unexpected '$db' (T_VARIABLE), expecting function (T_FUNCTION) or const (T_CONST) in C:\xampp\htdocs\secours\modele\modele.class.php on line 6

  19. #19
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Il faut mettre les affectations de variable à l'intérieur du __construct() :

    Code php : 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
    class Modele
    	{
    		private $pdo ;
     
    		public function __construct ()
    		{
    		try
    		{
     
    		$user = 'root';
    		$password = "";
    		$db = "mysql:host=localhost;dbname=secours";
        	$db = new PDO($db, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
    		}
    		catch (PDOException $e)
    		{
        	echo 'Échec de la connexion : ' . $e->getMessage();
        	exit;
    		}
     
    // Ceci fera que PDO lancera une erreur de niveau E_WARNING au lieu d'une exception (lorsque la table n'existe pas)
    		$db->query("SELECT wrongcolumn FROM wrongtable");
     
    		}
    	}
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  20. #20
    Invité
    Invité(e)
    Par défaut
    C'est ce que j'ai fait, mais toujours une erreur ...

    Parse error: syntax error, unexpected 'public' (T_PUBLIC), expecting end of file in C: (...) modele.class.php on line 28

    Nom : membre.PNG
Affichages : 99
Taille : 212,7 Ko


    Nom : projet.PNG
Affichages : 94
Taille : 324,6 Ko


    Nom : tableau_principal.PNG
Affichages : 102
Taille : 319,5 Ko
    Dernière modification par Invité ; 03/12/2020 à 12h50.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Erreurs 504 répétées sur site PHP/MySQL
    Par ver_for2 dans le forum Hébergement
    Réponses: 1
    Dernier message: 07/05/2020, 12h13
  2. Réponses: 1
    Dernier message: 18/01/2013, 13h27
  3. Question pour un site PHP/MySQL et Javascript
    Par DvP dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/09/2005, 08h23
  4. PHP SQL =>erreur de syntaxe (operateur absent)
    Par snipes dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/02/2005, 14h09

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