Album photo 2

Résolu
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   -  
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je rencontre encore un petit problème lors de la création de mon Album photo. Je souhaite simplement afficher le nom de l'album avant de le supprimer. C'est quelque chose de très basique, mais encore une chose qui m'échappe, pouvez-vous une fois encore m'aider s'ils vous plait.
Ci-dessous mon lien qui devrait m'afficher le nom de l'Album.
<?php
	$sql = "SELECT *
			FROM tb_album
			ORDER BY annee_album ASC";
	$requete = $bdd->prepare($sql);
	$donnees = $requete->execute();
	$resultat = $requete->rowCount();

	if ($resultat > 0) {
?>

<div id="ListeAlbum">
	<table cellpadding="0" cellspacing="0" border="0">
		<tr>
			<th>Nom Album</th>
			<th>Images</th>
			<th>Supprimer</th>
			<th>Editer</th>
		</tr>
		<?php while ($donnees = $requete->fetch()) { ?>
		<tr>
			<td><?php echo $donnees['annee_album']; ?></td>
			<td>(<?php echo TotalImages($donnees['id_album']); ?>) Images</td>
			<td><a href="index.php?body=supp_album&type=supprimer&id_album=<?php echo $donnees['id_album'];?>">Supprimer</a></td>
			<td>Editer</td>
		</tr>
		<?php } ?>
	</table>
</div>	
	<?php } else { echo "<p>Aucun Album de créé.</p>"; } ?>

ci-dessous ma page supp_album qui me retourne ma page 404.php au lieu des "echo".
	if(isset($id_album)) {
		
		echo "<h1>Galerie Photos > Album > Supprimer >";
		echo NomAlbum($id_album);
		echo "</h1>";
	
	} else {
		require_once("erreur_404.php");
	}

ci-dessous ma fonction NomAlbum
function NomAlbum($id_album) {
    global $bdd;
    
	$sql = "SELECT *
			FROM tb_album
			WHERE id_album = :id_album";
	$requete = $bdd->prepare($sql);
	$donnees = $requete->execute(array('id_album' => $id_album,));
    $resultat = $requete->rowCount();
    
    if ($resultat > 0) {
        return $donnees['annee_album'];
    } else {
        return "";
    }
}

sinon au niveau de l'url c'est bien ça
/index.php?body=supp_album&type=supprimer&id_album=10





A voir également:

4 réponses

Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Salut,

Dans ta fonction NomAlbum tu utilises une variable $donnees alors que celle-ci n'est pas initialisée. Il te manque un fetch sur le résultat de ta requête pour récupérer les données.

Bonne journée
0
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour
Pouvez-vous me dire ce que j'ai encore mal fait s'ils vous plait, mon problème est toujours le même ça me retourne ma page 404.php
Voici ma fonction
Merci
function NomAlbum($id_album) {
    global $bdd;
    
	$sql = "SELECT *
			FROM tb_album
			WHERE id_album = :id_album";
	$requete = $bdd->prepare($sql);
	$requete->execute(array('id_album' => $id_album,));
    $donnees = $requete->fetch();
    $resultat = $requete->rowCount();
    
    if ($resultat > 0) {
        return $donnees['annee_album'];
    } else {
        return "";
    }
}

et ma requète
<?php
	$sql = "SELECT *
			FROM tb_album
			ORDER BY annee_album ASC";
	$requete = $bdd->prepare($sql);
	$requete->execute();
    $donnees = $requete->fetch();
    $resultat = $requete->rowCount();

	if ($resultat > 0) {
?>

<div id="ListeAlbum">
	<table cellpadding="0" cellspacing="0" border="0">
		<tr>
			<th>Nom Album</th>
			<th>Images</th>
			<th>Supprimer</th>
			<th>Editer</th>
		</tr>
		<?php while ($donnees = $requete->fetch()) { ?>
		<tr>
			<td><?php echo $donnees['annee_album']; ?></td>
			<td>(<?php echo TotalImages($donnees['id_album']); ?>) Images</td>
			<td><a href="./index.php?body=supp_album&type=supprimer&id_album=<?php echo $donnees['id_album'];?>">Supprimer</a></td>
			<td>Editer</td>
		</tr>
		<?php } ?>
	</table>
</div>	
	<?php } else { echo "<p>Aucun Album de créé.</p>"; } ?>
0
Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Une erreur 404 indique que l'URL saisie dans le navigateur n'est pas correcte (ne correspond à aucune page du site).
Corrige ton lien en enlevant le point et le slash au début de l'url :
<a href="index.php?body=supp_album&type=supprimer&id_album=<?php echo $donnees['id_album'];?>">Supprimer</a>
0
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour
J'ai enlevé le point et le slash mais toujours je suis redirigé sur la page 404.php
Voilà mon url ça affiche bien le bon id pourtant
index.php?body=supp_album&type=supprimer&id_album=11

Ce que je voudrais que ça me retourne les echo en fait. Y a t-il encore des erreurs sur ma fonction et à ma requète à votre avis.
Merci pour votre aide.
	if(isset($id_album)) {
		
		echo "<h1>Galerie Photos > Album > Supprimer >";
		echo NomAlbum($id_album);
		echo "</h1>";
	
	} else {
		require_once("erreur_404.php");
	}
0
hharchi9 Messages postés 567 Date d'inscription   Statut Membre Dernière intervention   24
 
Bonsoir,

Le problème vient du fait que pour récupérer une variable située dans l'url, il faut utiliser $_GET. Ainsi pour faire le test sur l'id il faut utiliser :
if(isset($_GET['id_album'])) {
0
papyclic Messages postés 446 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour
Vraiment génial, c'est vraiment formidable 2 jours passé avec ça.
Un très grand merci
Cordialement
0