Undefined offset

Fermé
marie13 - 1 sept. 2014 à 22:57
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 2 sept. 2014 à 09:43
hello les génies

j aurai besoin d un petit coup de pouce j ai une fonction qui me sert a afficher les albums mais ca beugue j ai cette erreur

Undefined offset: 29 in C:\wamp\www\Visio-coquin\outils\affichages.php one line 155

la fonction :
function afficher_albums($requete, $connexion, $id_album)
{
$resultat=mysqli_query($connexion, $requete);
$liste_albums="<div id="albums">";
$i=0;
while($ligne=mysqli_fetch_object($resultat))
{
$tab_album[$i]=$ligne->id_album;
if(isset($_SESSION['id_album']) AND $ligne->id_album==$_SESSION['id_album'])
{
$style=" id="album_colore"";
}
else
{
$style="";
}
if($i==0)
{
$liste_albums.="<div" . $style . ">\n";
$liste_albums.="<h3><a href="admin.php?action=albums&id_album=" . $ligne->id_album . "">" . stripslashes($ligne->titre_album) . " (" . $ligne->langue . ")</a>";
$liste_albums.="<span class="nav_album">\n<a href="admin.php?action=modifier_albums&id_langue=" . $ligne->id_langue . "&id_album=" . $ligne->id_album . ""><img src="../icones/modifier.png" title="modifier" alt="" /></a>\n";
$liste_albums.="<a href="admin.php?action=supprimer_albums&id_langue=" . $ligne->id_langue . "&id_album=" . $ligne->id_album . ""><img src="../icones/supprimer.png" title="supprimer" alt="" /></a>\n</span>\n</h3>\n";
$liste_albums.="</div>\n";
$liste_albums.="<fieldset " . $_SESSION[$ligne->id_album] . " class="affiche_album">\n";

}

if($i!=0 && ($tab_album[$i]!=$tab_album[$i-1]))//à chaque changement d'album
{
$liste_albums.="</fieldset>\n";
$liste_albums.="<div" . $style . ">\n";
$liste_albums.="<h3><a href="admin.php?action=albums&id_album=" . $ligne->id_album . "">" . stripslashes($ligne->titre_album) . " (" . $ligne->langue . ")</a>";
$liste_albums.="<span class="nav_album">\n<a href="admin.php?action=modifier_albums&id_langue=" . $ligne->id_langue . "&id_album=" . $ligne->id_album . ""><img src="../icones/modifier.png" title="modifier" alt="" /></a>\n";
$liste_albums.="<a href="admin.php?action=supprimer_albums&id_langue=" . $ligne->id_langue . "&id_album=" . $ligne->id_album . ""><img src="../icones/supprimer.png" title="supprimer" alt="" /></a>\n</span>\n</h3>\n";
$liste_albums.="</div>\n";
$liste_albums.="<fieldset " . $_SESSION[$ligne->id_album] . " class="affiche_album">\n";
}
$liste_albums.="<form href="admin.php?action=albums&id_album=" . $ligne->id_album . "" method="POST" id="form_album">\n";
if($tab_album[$i]==$id_album)
{
$requete2="SELECT r.*, m.* FROM ranger_medias r, medias m WHERE m.id_media=r.id_media AND r.id_album='" . $tab_album[$i] . "' ORDER BY r.id_ranger_media";
$resultat2=mysqli_query($connexion, $requete2);
$liste_photos="";
while($ligne2=mysqli_fetch_object($resultat2))
{
$liste_photos.="<img class="img_album [" . $ligne2->id_media . "]" style="width:50px;height:50px;margin:1px" src="../medias/media" . $ligne2->id_media . "_p." . $ligne2->fichier_media . "" alt="" />";
}
}
$liste_albums.="<hr />\n<textarea style="height:260px" name="album" . $ligne->id_album . "" placeholder="Glisser les photos ici...">" . $liste_photos . "</textarea>\n<hr />\n";
$liste_albums.="<input type="submit" name="submit2" value="ENREGISTRER" />\n";
$liste_albums.="<hr /></form>\n";
$liste_albums.="<script type="text/javascript">
document.form_album.album" . $ligne->id_album . ".focus();
</script>\n";
$i++;
}

$liste_albums.="</div>\n";
return $liste_albums;
}
et cette fameiuse ligne
$liste_albums.="<fieldset " . $_SESSION[$ligne->id_album] . " class="affiche_album">\n";

1 réponse

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
2 sept. 2014 à 09:43
Salut,

Ton erreur indique que php essaye d'accéder à un élément inexistant d'un tableau.
Ici, la variable $_SESSION[29] (pour $ligne->id_album = 29) n'existe pas.

Comment ton tableau $_SESSION est-il rempli ?
0