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 :

argument nullable non accepté [PHP 7]


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    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 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut argument nullable non accepté
    Bonjour,

    j'ai codé une méthode pour accepter la valeur NULL en argument (je suis en PHP8) : public function seekId( ?string $platform ): ?int. Pourtant l'appel à cette méthode
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public static function putInDBTicket($ref_ticketModel, $ref_user, $ref_app, ?int $ref_platform) {
            $ref_platform = ($ref_platform->PL_platform)??NULL;
            $id_platf = $ref_platform->seekId($ref_platform) //l.277 de CSVImport.php;
    génère une erreur :
    Fatal error: Uncaught Error: Call to a member function seekId() on null in C:\projets\ticket_rawsrc\model\CSVImport.php:277
    Stack trace:
    #0 C:\projets\ticket_rawsrc\controller\CSVImportController.php(406): ticket_rawsrc\model\CSVImport::putInDBTicket(Object(ticket_rawsrc\model\ticket\table\TI_ticket), Object(ticket_rawsrc\model\US_user), Object(ticket_rawsrc\model\license\table\AP_application), NULL)
    #1 C:\projets\ticket_rawsrc\index.php(105): ticket_rawsrc\controller\CSVImportController->invoke(Array)
    #2 {main} thrown in C:\projets\ticket_rawsrc\model\CSVImport.php on line 277
    ligne 406 de CSVImportController.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CSVImport::putInDBTicket($this->ref_TicketModel, $this->ref_User, $this->ref_App,
                                $this->ref_Platform);
    Où est le bug SVP ?

  2. #2
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    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 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    J'ai fini par trouver le bug : ligne 277 de CSVImport.php (donc ligne 3 du code actuel), la méthode seekId est appliqué à null.

    Voici comment je corrige :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     $ref_platform = ($ref_platform->PL_platform)??NULL;
            $id_platf = (isset($ref_platform)) ? $ref_platform->seekId($ref_platform) : null;

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

Discussions similaires

  1. [Toutes versions] Deuxième argument non accepté dans ma sub "Erreur Attendu :="
    Par Gorzyne dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/01/2019, 17h51
  2. Méthode non acceptée : ajout d'un objet dans une collection
    Par Nzs26 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 09/11/2007, 19h31
  3. caractère non accepté
    Par intelcore dans le forum Serveurs (Apache, IIS,...)
    Réponses: 4
    Dernier message: 30/06/2007, 20h58
  4. Saisie d'un numérique non acceptée
    Par pcayman dans le forum IHM
    Réponses: 3
    Dernier message: 19/05/2007, 23h09
  5. [MySQL] champ non accepté ?
    Par Makari dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 24/08/2006, 23h41

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