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 :

Undefined offset && Trying to access array offset on value of type bool [PHP 7]


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2018
    Messages : 13
    Par défaut Undefined offset && Trying to access array offset on value of type bool
    Bonsoir à tous et à toutes,

    Je débute en PHP (7.4.3), je suis bloqué dans mon code et je n'arrive pas à corriger les "2 erreurs".

    Je vous joins mon code pour que vous puissiez jeter un coup d’œil et me guider dans la correction.

    En pièce jointe vous trouvez un fichier index.php, ainsi que mes 4 classes : Article.php, Blog.php, Requete.php et ConnexionBD.php

    J'ai, ainsi dire, 4 tables dans ma base de données : article, auteur, motcle_article et mot_cle.

    Voici les champs de mes tables:
    • article
      1. numero_article (clé primaire)
      2. titre
      3. message
      4. date
      5. email_aut

    • auteur
      1. email_aut (clé primaire)
      2. nom_aut
      3. prenom_aut
      4. password

    • motcle_article
      1. numero_article
      2. numero_motcle

    • mot_cle
      1. num_cle (clé primaire)
      2. nom_cle



    Le champ message est en TEXT.
    Les champs numero_article (x2), numero_motcle, num_cle sont en INT.
    Le reste en VARCHAR
    #################MESSAGES D'ERREURS ################
    # 1.Undefined offset: 2 in Article.php line 21 #
    # 2.Undefined offset: 1 in Article.php line 21 #
    # 3.Trying to access array offset on value of type bool in Article.php line 28 #
    ################################################
    N'hésitez pas à me demander plus de renseigner si nécessaire pour clarification.

    Je vous remercie d'avance pour l'aide que vous m'aurez fourni
    Fichiers attachés Fichiers attachés

  2. #2
    Membre éclairé Avatar de solo190
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 412
    Par défaut
    hello cryptohunter11,
    déjà beaucoup de courage dans ton apprentissage !
    pour obtenir de l'aide sur ce Forum tu dois respecter les règles .
    tu dois poster la partie de ton code qui te pose problème et non joindre des fichiers , le message d'erreur que tu obtiens ,d’écrire le résultat que tu souhaite obtenir .
    pose donc clairement , ton problème et tu obtiendra une solution.
    A+

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2018
    Messages : 13
    Par défaut
    Bonjour solo190,

    Voici les renseignements dont vous me demandez dans votre réponse.

    Voici la partie du code qui me pose problème:

    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
     
        function __construct($leNumArticle = null, $leTitre = null, $leMessage = null, $leMailAuteur = null, $laDatePublication = null){
     
            if(!empty($leNumArticle)){
                $this->numArticle = $leNumArticle;
            }
     
            if(!empty($leTitre)) $this->titre = $leTitre;
            if(!empty($leMessage)) $this->message = $leMessage;
     
            if (!empty($laDatePublication)) {
                $DateCoupee = explode("-", $laDatePublication);
                $this->datePublication = $DateCoupee[2]. "/". $DateCoupee[1]. "/" .$DateCoupee[0];
            }
     
            if (!empty($leMailAuteur)) {
                $req = "SELECT `nom_aut`, `prenom_aut` FROM `auteur` WHERE `email_aut` =  '".$leMailAuteur."'";
                $CHAMP = Requete::setREQUETE($req);
                $row = $CHAMP->fetch();
                $this->mailAuteur = $row['prenom_aut'].' '.$row['nom_aut'];
            }
    Dans cette fonction constructeur mes problèmes viennent des lignes suivantes :
    1.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->datePublication = $DateCoupee[2]. "/". $DateCoupee[1]. "/" .$DateCoupee[0];
    2.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->mailAuteur = $row['prenom_aut'].' '.$row['nom_aut'];
    La première ligne qui me pose problème devrait affecter à ma variable datePublication la date en format J/M/A
    La seconde ligne qui me pose problème devrait affecter à ma variable mailAuteur le nom et le prénom de l'auteur

    Or j'ai les messages d'erreurs suivants:
    Pour la première ligne :
    ##Undefined offset: 2 in Article.php on line 13##
    ##Undefined offset: 1 in Article.php on line 13##
    Pour la seconde ligne :
    ##Trying to access array offset on value of type bool in Article.php on line 20##
    J'espère avoir respecter les règes et que mon problème est mieux détaillé.

    Merci pour vos encouragements.

  4. #4
    Membre éclairé Avatar de solo190
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 412
    Par défaut
    hello cryptohunter11,
    ##Undefined offset: 2 in Article.php on line 13##
    ##Undefined offset: 1 in Article.php on line 13##
    ceci arrive généralement lorsque tu essaie d'atteindre un champ inexistant d'un tableau .
    je te conseille de faire 2 var_dump pour voir exactement le contenu de tes variables .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     if (!empty($laDatePublication)) {
                var_dump($laDatePublication);
                $DateCoupee = explode("-", $laDatePublication);
                 var_dump($DateCoupee);
                $this->datePublication = $DateCoupee[2]. "/". $DateCoupee[1]. "/" .$DateCoupee[0];
            }
    tu peux faire la meme chose ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     if (!empty($leMailAuteur)) {
                $req = "SELECT `nom_aut`, `prenom_aut` FROM `auteur` WHERE `email_aut` =  '".$leMailAuteur."'";
                $CHAMP = Requete::setREQUETE($req);
                $row = $CHAMP->fetch();
                var_dump($row);
                $this->mailAuteur = $row['prenom_aut'].' '.$row['nom_aut'];
            }
    A+

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2018
    Messages : 13
    Par défaut
    Bonsoir,

    Après avoir fait ce que vous m'avez conseillé, je comprend pas commend une email a pu être affecter à une date. En ce qui concerne la second fonction le contenu de la vaiable est 'FALSE'

    Je pense que je vais reprendre de ZERO tout mon code pour essayer de corriger ce problème.

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

Discussions similaires

  1. problème "Undefined offset:" entre autre !
    Par zebulon252 dans le forum Langage
    Réponses: 1
    Dernier message: 10/09/2012, 22h34
  2. [PHP 4] Problème Undefined offset
    Par TWEESTY dans le forum Langage
    Réponses: 6
    Dernier message: 01/02/2011, 00h09
  3. [MySQL] Problème Undefined Offset liste déroulante
    Par Luisito31 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/10/2008, 09h26
  4. [XHTML] Problème de variable &
    Par navis84 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/08/2008, 09h55
  5. Problème de signe &
    Par new_wave dans le forum Langage
    Réponses: 2
    Dernier message: 06/01/2008, 17h18

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