Lire le contenu d'un repertoire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Lire le contenu d'un repertoire

Re: Lire le contenu d'un repertoire

par xTG » 23 août 2010, 12:53

Tu peux enlever cette ligne :
$dossier=opendir($dir);
Elle ne te sert à rien. ^^

Re: Lire le contenu d'un repertoire

par Hibarii » 23 août 2010, 12:29

J'ai utilisé ton code d cette manière:
<ul>
	<li>Bienvenue <strong><span style="color:green"><?php echo $_COOKIE["NOM_UTILISATEUR"]; ?></span></strong> !</li>

<?php
$dir="img_avatars";
$dossier=opendir($dir);

$lien=$dir.'/'.$donnees["Avatar_Utilisateur"];
if(file_exists($lien))
{
?>
<img src="<?php echo $lien; ?>" alt="avatar" width=100 height=100 /> 
<?php
}
?>
	<li><a href="upload_simple_js.php?login=<?php echo $_COOKIE["NOM_UTILISATEUR"]; ?>">Mes options</a></li>
	<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>
Et ça fonctionne, merci beaucoup !

Re: Lire le contenu d'un repertoire

par xTG » 23 août 2010, 12:05

Tu fais une boucle sur tous les fichiers, c'est normal.
Pourquoi boucler sur un readdir() alors que seule la fonction file_exists() t'intéresse ?
Voici une solution en enregistrant le chemin de l'avatar dans la bdd.
<?php
if(file_exists($donnees["Avatar_Utilisateur"]))
{
?>
<img src="
<?php
        echo $donnees["Avatar_Utilisateur"];
?>" alt="avatar" width=100 height=100 /> 
<?php
}

Lire le contenu d'un repertoire

par Hibarii » 23 août 2010, 11:47

Bonjour,
j'ai un problème concernant la lecture du contenu d'un repertoire.
L'utilisateur envoie son avatar qui est stocké dans un dossier, puis apparait dans le menu.
Le nom de l'avatar est bien stocké dans la bdd.
Le problème, c'est que tous les avatars s'affichent. Quand je change d'utilisateur, c'est le bon nom d'image, pas de problèmes à ce niveau-là.
Mais comment faire pour n'afficher que l'avatar de l'utilisateur ?
Voici mon code:
<?php 
if($_COOKIE["NOM_UTILISATEUR"]) 
{ 
?>
<?php
$img_utilisateur = mysql_query("SELECT Avatar_Utilisateur FROM Comptes_Utilisateurs WHERE Nom_Utilisateur = '".$_COOKIE["NOM_UTILISATEUR"]."' ") ;
$donnees = mysql_fetch_array($img_utilisateur);
?>
<ul>
	<li>Bienvenue <strong><span style="color:green"><?php echo $_COOKIE["NOM_UTILISATEUR"]; ?></span></strong> !</li>

<?php
$dir="img_avatars";
$dossier=opendir($dir);
$fichier=$donnees["Avatar_Utilisateur"];

while($fichier=readdir($dossier))
{
	$berk=array('.', '..');

	
if(!in_array($fichier,$berk))
{
	$lien=$dir.'/'.$fichier;
?>
<img src="
<?php
if(file_exists($lien))
{
	echo $lien; 
?>" alt="avatar" title="<?php echo $donnees["Avatar_Utilisateur"]; ?>" width=100 height=100 />	
<?php
}
}
}
?>
<li><a href="upload_simple_js.php?login=<?php echo $_COOKIE["NOM_UTILISATEUR"]; ?>">Mes options</a></li>
	<li><a href="deconnexion.php">Déconnexion</a></li>
</ul>

	
<?php }
Tout fonctionne, excepté que les avatars de tous les utilisateurs sont affichés, alors qu'l faudrait seulement l'avatar de l'utilisateur connecté.
Merci de votre aide.