[RESOLU] migration vers php5.6

Petit nouveau ! | 2 Messages

05 juin 2021, 13:27

Bonjour
je vous remercie de m'aider a solutionner ce blocage et mon niveau est trés moyen en php

j'ai migrer un calendrier events vers php5.6 anciennement php4 sur lequel c'a tourne sans erreur.

mais depuis j'ai l'erreur
Warning: mysqli_fetch_object() expects parameter 1 to be mysqli_result, object given in Agendacalendrier\fonctions.php on line 122 

voici une partie du code
include('config.php');	
	
	$selection = "SELECT identifiant, jour, TIME_FORMAT(heure,'%H:%i') as heure, sujet, commentaires, utilisateur, importance, login  FROM tbl_agenda 		WHERE jour = '$annee-$mois-$jour' ORDER BY jour, heure"; 

	$ligne = mysqli_query($connect,$selection); 

    echo '<center><table border ="0">';
	    while ($ligne = mysqli_fetch_object($ligne)) {    //  voici la ligne 122
         $heure = substr($ligne -> heure, 0, 2); 
         $minute = substr($ligne -> heure, 3, 5);

        if ($jour < 0) {
            echo '<tr><td><font color="gray"><b>' . $heure . ':' . $minute . '</b></font></td>';

merci de toute aide de votre part

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

05 juin 2021, 19:00

while ($ligne = mysqli_fetch_object($ligne)) {
Le problème est que tu appelles $ligne le résultat de ton mysqli_query() (et qui doit donc passer en paramètre de ta fonction mysqli_fetch_object()
Sauf que tu écrases la valeur de ligne pour y mettre le résultat de ta fonction mysqli_fetch_object() donc au deuxième appelle de ta boucle while, ça ne peut plus marcher...

Utilise des noms de variables différents et ça devrait marcher
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 2 Messages

06 juin 2021, 11:33

Merci @rtur

tu as vu juste c'etait bien la cause