Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 20/06/2022, à 15:09

Vobul

Re : [Résolu] erreur de syntaxe php/SQL depuis màj php7=> php8

Si tu castes en int ta variable qui est null, ça fait 0, donc ton sql devient valide, mais ton code ne l'est toujours pas. Il faut surtout que tu vérifies que ton array n'est pas null. Au fait, le

.""

en fin de ligne n'est pas nécessaire.


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#27 Le 20/06/2022, à 15:53

ubun'ti

Re : [Résolu] erreur de syntaxe php/SQL depuis màj php7=> php8

Merci Vobul pour tes précisions...
j'vais corriger le

.""

qui sert à rien, en fait même avec mon niveau je comprend l'inutilité d'ajouter rien à la fin de ma déclaration big_smile

Si le array est nul c'est que mon code ne fonctionne pas car cet array est construit

$tabideq = explode(",", $playlist);
/*on supprime la première ligne du tableau car vide********/
 unset($tabideq[0]);	

Hors ligne

#28 Le 21/06/2022, à 14:42

ubun'ti

Re : [Résolu] erreur de syntaxe php/SQL depuis màj php7=> php8

Vobul a écrit :

Si tu castes en int ta variable qui est null, ça fait 0, donc ton sql devient valide, mais ton code ne l'est toujours pas. Il faut surtout que tu vérifies que ton array n'est pas null.

Encore une fois j'étais en dessous de tes infos hmm
Mais ayé je crois que j'ai compris !

La fausse solution de mettre (int) devant ma variable de tableau faisait qu'elle prenait la valeur 0 dans le cas où elle était nulle.
Du coups la requête sql s’exécutait sans erreur mais sans résultats ni intérêt
Dans mon cas le problème se traduisait par l'absence d'une ligne de réponse que j'avais pas encore détectée puisque pas génératrice d'erreur formelle...

Du coups le problème chez moi était qu'un même tableau commençait par un enregistrement [1] ou par un enregistrement [0] suivant le traitement des options.

Du coups le sql prenait une forme "....where id = "null" ce qui causait l'erreur.


Dans mon cas j'ai donc ré-indexer le tableau qui pausait problème en partant de 0 :

 $tabideq=array_values($tabideq);

si j'ai bien compris, php7 pouvait considérer nulle comme 0 et plus le php8.

Et j'vais dire tant mieux parce que même si c'est pas dramatique (enfin si en fait big_smile ) dans mon cas je manquais l'un des enregistrements de ma base de clips dans mes playlists : CATASTROPHE !!! (très bon groupe d'ailleurs https://youtu.be/id9ljxGWBdQ

Encore merci,
Même si tu devais désespérer que je comprenne un jour ce que tu dis 'vobul'

Hors ligne

#29 Le 21/06/2022, à 17:15

Vobul

Re : [Résolu] erreur de syntaxe php/SQL depuis màj php7=> php8

J'aime bien ce site pour voir les changements : https://stitcher.io/blog/new-in-php-8

(et de 7 à 8 y'en a un bon paquet)

Content que tu aies compris ma pensée wink

Pense aussi à utiliser le null-coalescing operator :

$myvar ?? 0;
$myvar ?? throw new RuntimeException('myvar est null !!);

Très pratique. Et surtout mets bien declare(strict_types=1); au début de chaque fichier ! Et utilise phpstan ! Bref, je m'arrête là c'est pas un cours de php ici non plus tongue


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne