Bonjour,

si je dis que le script se déroule bien, c'est que en debug pas à pas (xdebug), tout va bien jusqu'à la fin, mais quand on sort du script :
Warning: Undefined array key "US_sesa" in C:\projets\ticket_rawsrc\src\model\Users.php on line 25
Le script en question :
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
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
<?php
 
namespace ticket_rawsrc\model;
 
use ticket_rawsrc\view\DispMsg;
 
use ticket_rawsrc\model\license\table\Platforms;
use ticket_rawsrc\model\license\table\Applications;
use ticket_rawsrc\model\license\table\BusinessUnits;
use ticket_rawsrc\model\license\table\Countries;
use ticket_rawsrc\model\license\table\Locations;
use ticket_rawsrc\model\license\table\Companies;
use ticket_rawsrc\model\ticket\table\Organizations;
use ticket_rawsrc\model\license\table\Users_license;
use ticket_rawsrc\model\license\table\Domains;
use ticket_rawsrc\model\license\table\Emails;
use ticket_rawsrc\model\license\table\Licenses;
 
 
 
class Debug
{
    public function invoke ()
    {
        DispMsg::dispMsg("coucou", true);
 
        $platform= 'plat1';
        $platformowner = 12345;
        $publisher = 'pub1';
 
        $id_plat = Platforms::getId($platform);
        if (!$id_plat)
            $id_plat = Platforms::insert($platform, $platformowner, $publisher);
 
        $ref_rawsrc = new Applications;
        $appli = 'new_appli';
 
        $id_appli = Applications::getId($appli);
 
        if (!$id_appli)
            $id_appli = Applications::insert($appli, $id_plat);
 
        $country='France';
 
        $id_country = Countries::getId($country);
 
        $Location = 'Lans-en-Vercors';
 
        $id_loc = Locations::getId($Location);
 
        if (!$id_loc)
            $id_loc = Locations::insert($Location, $id_country);
 
 
        $company_name = 'company1';
 
        $id_comp = Companies::getId($company_name );
 
        if (!$id_comp)
            $id_comp = Companies::insert($company_name);
 
        $bu_name ='bu_name1';
 
        $id_bu = BusinessUnits::getId($bu_name );
 
        if (!$id_comp)
            BusinessUnits::insert($bu_name, $id_comp);
 
        $orga_name = 'orga1';
 
        $id_orga = Organizations::getId($orga_name );
 
        if (!$id_orga)
            $id_orga  = Organizations::insert($orga_name);
 
        $users_sesa_manager = null;
        $users_firstname_manager = 'Michel';
        $users_lastname_manager = 'Farastier';
 
        $users_sesa  = 12345;
        $users_firstname = 'Laurent';
        $users_lastname = 'Schmitt';
        $oz_manager = null;
        $cou_manager = null;
 
        $id_users_manager = Users::getId($users_sesa_manager );
 
        if (!$id_users_manager)
            $id_users_manager  = Users::insert($users_sesa_manager, $users_firstname_manager, $users_lastname_manager, $oz_manager, $cou_manager);
 
        $id_users = Users::getId($users_sesa );  //le warning apparait si je rajoute cette ligne (le code de cette méthode statique est donné ci-dessous)
 
     /*   if (!$id_users)
            $id_users  = Users::insert($users_sesa, $users_firstname, $users_lastname, $id_orga, $id_country);  


     /*   $id_users_license = Users_license::getId($id_users );


       if (!$id_users_license)
            $id_users_license  = Users_license::insert($id_users, $id_users_manager, $id_loc, $id_comp);
*/
    }
}
Obligé de mettre tout ça car ce sont des insert en bdd et y a des clés étrangères.

Le warning porte sur Users.php :
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
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
<?php
namespace ticket_rawsrc\model;
 
use ticket_rawsrc\model\Collection;
 
 
class Users extends Collection
{
    private static array $data = [];
 
    /**
     * @param string $user_sesa
     *
     * @return int|null
     */
    public static function getId (?int $user_sesa ): ?int
    {
        if ( self::$data === [] )
        {
            self::readTable();
        }
 
        foreach (self::$data as $row)
        {
            if ( $row['US_sesa'] === $user_sesa ) //ligne 25
            {
                return (int)$row['US_ident'];
            }
        }
 
        return null;
    }
 
    private static function readTable (): void
    {
        self::$data = self::getPPP()
            ->select('SELECT * FROM `US_user`');
    }
 
 
    public static function insert (?int $sesa, ?string $firstname, ?string $lastname, ?int $OZ_ident, ?int $COU_ident
    ): int
    {
        $ppp = self::getPPP();
        $sql = <<<sql
INSERT INTO US_user SET 
US_sesa = {$ppp($sesa,'int')},
US_firstname = {$ppp($firstname,'str')},
US_lastname = {$ppp($lastname,'str')},
OZ_ident = {$ppp($OZ_ident,'int')},  
COU_ident = {$ppp($COU_ident,'int')}
sql;
        $id = (int)$ppp->insert($sql);
 
        // on met à jour nos données locales
        self::$data[] = [
            'US_ident' => $id,
            'US_firstname' => $firstname,
            'US_lastname' => $lastname,
            'OZ_ident' => $OZ_ident,
            'COU_ident' => $COU_ident
        ];
 
        return $id;
    }
}
Si quelqu'un comprend, je l'en remercie.