8800 sujets

Développement web côté serveur, CMS

Bonjour à tous,

J'ai actuellement une page php qui me sert d'espace personnel pour chacun de mes clients et qui est comme ceci :

<?
require("protec/passe/conf.php3");
$db_link = mysql_connect($sql_serveur,$sql_user,$sql_passwd);

// SELECTION DE L'ENREGISTREMENT CONTENANT L'ID EN COURS
$requete=mysql_db_query($sql_bdd,"select * from membre where id=\"$id\"",$db_link);

// SI L'ID N'EXISTE PAS
if(mysql_num_rows($requete)==0)
	{
	header("Location:$url_erreur");
	}
	
?>
</head>
<body>
<div id="menu_principal">
  <div id="menu_conteneur"> </div>
</div>
<div id="general">
  <div id="general_conteneur">
    <div id="gauche"> </div>
    <div id="droite">
    </div>
    <div id="centre">
      <?php
		  $path = basename($_SERVER['SCRIPT_NAME'],".php3");
		   {
echo '<h2>Bienvenue '.str_replace ('_', ' ', $path).' sur votre espace personnel</h2>';
	   }
	  ?>
</p>
<table width="100%" border="0">
  <tr>
    <td><div align="center">
      <p>&nbsp; </p>
      <p>
      </p>
    </div></td>
  </tr>
</table>
<p>&nbsp; </p>
<p align="left">Vos factures sont class&eacute;es de la plus r&eacute;cente &agrave; la plus ancienne. Elles sont au format PDF. Si vous ne disposez pas d'Adobe Acrobat Reader pour les ouvrir et les imprimer, vous pouvez le t&eacute;l&eacute;charger gratuitement <a href="http://www.adobe.com/fr/products/acrobat/readstep2.html" target="_blank">ici</a>.</p>
<p align="left" class="important">&nbsp;</p>
<p align="left" class="important">&nbsp;</p>
<p align="left" class="important">&nbsp;</p>
<table cellpadding="3" cellspacing="1" class="particuliers">
  <tr>
    <th scope="col">Vos factures<br /></th>
    <th scope="col">Date de mise en ligne<br />
    <th scope="col">Taille du fichier<br /></th>
  </tr>
  <?php
//Guillaume ROBERT pour le site Zerobug
//http://www.zerobug.fr
//Script permettant de lister tous les fichiers PDF d'un répertoire
//dans un tableau et créant automatiquement des liens de 
//téléchargement. Le fichier PDF ne s'ouvre donc pas par défaut 
//dans le navigateur mais l'utilisateur aura le choix entre l'ouvrir
//et le télécharger sur son disque dur

function listing($dir)
{
 $pdf_files = array();
 $dh = opendir($dir);

 while (false !== ($filename = readdir($dh)))
 {
 if(strtolower(strrchr($filename, '.')) == '.pdf')
 $pdf_files[] = $filename;
 elseif(strtolower(strrchr($filename, '.')) == '.zip')
 $pdf_files[] = $filename;
 }
 
 rsort($pdf_files);

$sommepoids = "";

 foreach($pdf_files as $pdf_file)
 {



	
	/* à partir de là, on créé le lien forçant le
	//téléchargement du fichier PDF
	//Pour cela, il vous faudra créer dans chaque répertoire à lister
	//un fichier php (ici nommé down.php) composé comme ceci :
	//<? 
    //header("Content-type: application/pdf"); 
    //header("Content-Disposition: attachment; filename=$pdf"); 
    //readfile($pdf); 
    //?> */
	$poidsdufichier = round(filesize($dir."/".$pdf_file)/1024,2);
$sommepoids += $poidsdufichier;
			echo '<tr>
          <td><p align="center"><a href="'.rawurlencode($dir).'/down.php?pdf='.rawurlencode(str_replace ('/', '', $pdf_file)).'">'.$pdf_file.'</a></p></td>
        <td><p align="center">'.date ("d/m/Y", filectime($dir."/".$pdf_file)).'</p></td><td><p align="center">'.round(filesize($dir."/".$pdf_file)/1024,2) .'Ko</p></td>
        </tr>';
	}
	echo '<p>'.count($pdf_files).' fichier(s) disponible(s) pour un poids total de '.$sommepoids.' Ko</p>';
	 }
	  

listing($path);
$urlComplete= rawurlencode(str_replace ('/', '', $value));

?>
</table>
</div>
</div>
</div>
</body>
</html>


Chaque client a sa propre page du type prenom_nom.php3. Chaque page est identique, seul son nom change car grâce au nom du fichier php3, je liste les fichiers qui sont dans le dossier prenom_nom ( $path = basename($_SERVER['SCRIPT_NAME'],".php3");).

Je souhaiterai remodifier ça afin de n'avoir plus q'une seule page php3 qui se serve du login du client ($pseudo) pour lister le fichier. J'ai essayé, mais pas assez doué en php pour y arriver.

Est-ce que quelqu'un pourrait me donner un coup de main pour y arriver ?
Qu'utilises tu comme méthode d'identification ? Sessions, cookies ?

Quels sont les valeurs disponible après l'identification ?