Problème tableau php
Absot
Messages postés
819
Statut
Membre
-
Absot Messages postés 819 Statut Membre -
Absot Messages postés 819 Statut Membre -
Slt, je voudrais faire tableau en php seulement mon problème est que mes "tr" n'ont pas de bordures...
Je vous montre mon code:
[code]<html>
<style type="text/css">
body {
background-color:#C0C0C0;
}
</style>
<body>
<h1>Contenu du répertoire</h1><hr/>
<?php
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiuers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>"."Nom fichiers");
while ($file != false ) {
$file = readdir($curseur);
for ($tab=0; $tab< sizeof($curseur); $tab++){
echo ( "<td>" . $file . "</td>");
}
echo ("</tr>");
}
echo ("</table>");
closedir($curseur);
}
}
?>
</body>
</html>
[/code]
Je vous montre mon code:
[code]<html>
<style type="text/css">
body {
background-color:#C0C0C0;
}
</style>
<body>
<h1>Contenu du répertoire</h1><hr/>
<?php
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiuers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>"."Nom fichiers");
while ($file != false ) {
$file = readdir($curseur);
for ($tab=0; $tab< sizeof($curseur); $tab++){
echo ( "<td>" . $file . "</td>");
}
echo ("</tr>");
}
echo ("</table>");
closedir($curseur);
}
}
?>
</body>
</html>
[/code]
A voir également:
- Problème tableau php
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
8 réponses
Bonjour
Si tu parles du texte Nom fichiers, c'est normal, il n'est dans aucune case. Il devrait être entre <td></td> ou <th></th>
Si tu parles du texte Nom fichiers, c'est normal, il n'est dans aucune case. Il devrait être entre <td></td> ou <th></th>
Me suis dis aussi.. ^^
J'ai résolu maintenant mon problème est que je n'ai pas de tableau et je ne pense pas que je peux donc utiliser la fonction count?
Mon nouveau code:
<html>
<style type="text/css">
body {
background-color:#C0C0C0;
}
table
{
border-collapse: collapse;
}
td, th /* Mettre une bordure sur les td ET les th */
{
border: 1px solid black;
}
</style>
<body>
<h1>Contenu du répertoire</h1><hr/>
<?php
//Variables
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>" . "<th>Nom fichiers</th>" . "<th>Taille en octets</th>" . "<th>Date dernière modification</th>" . "</tr>" );
while ($file != false ) {
$file = readdir($curseur);
for ($tab=0; $tab< count($curseur); $tab++){
echo ("<tr>");
echo ( "<td>" . $file . "</td>");
echo ("</tr>");
echo ("<tr>");
echo ( "<td>" . filesize($file) . "</td>");
echo ("</tr>");
}
}
echo ("</table>");
closedir($curseur);
}
}
?>
</body>
</html>
J'ai résolu maintenant mon problème est que je n'ai pas de tableau et je ne pense pas que je peux donc utiliser la fonction count?
Mon nouveau code:
<html>
<style type="text/css">
body {
background-color:#C0C0C0;
}
table
{
border-collapse: collapse;
}
td, th /* Mettre une bordure sur les td ET les th */
{
border: 1px solid black;
}
</style>
<body>
<h1>Contenu du répertoire</h1><hr/>
<?php
//Variables
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>" . "<th>Nom fichiers</th>" . "<th>Taille en octets</th>" . "<th>Date dernière modification</th>" . "</tr>" );
while ($file != false ) {
$file = readdir($curseur);
for ($tab=0; $tab< count($curseur); $tab++){
echo ("<tr>");
echo ( "<td>" . $file . "</td>");
echo ("</tr>");
echo ("<tr>");
echo ( "<td>" . filesize($file) . "</td>");
echo ("</tr>");
}
}
echo ("</table>");
closedir($curseur);
}
}
?>
</body>
</html>
Quelqu' un pourrait me dire pourquoi j'ai un problème de boucle svp?
[code]<html>
<style type="text/css">
body {
background-color:#C0C0C0;
}
table
{
border-collapse: collapse;
}
td, th /* Mettre une bordure sur les td ET les th */
{
border: 1px solid black;
}
</style>
<body>
<h1>Contenu du répertoire</h1><hr/>
<?php
//Variables
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>" . "<th>Nom fichiers</th>" . "<th>Taille en octets</th>" . "<th>Date dernière modification</th>" . "</tr>" );
while ($file != false ) {
$tableau = array($file);
if ( !(is_dir($file)) && (!filesize("./documents/".$file !==0 )) ) {
for ($i=0; $i < sizeof($tableau); $i++){
echo ("<tr>");
echo ("<td>" . $tableau[$i] . "</td>");
for ($i=0 ;$i<1; $i++){
echo ("<td>" . filesize("./documents/$tableau[$i]") . "</td>");
}
}
}
echo ("</tr>");
echo ("</table>");
}
}
closedir($curseur);
}
?>
</body>
</html>
/code
[code]<html>
<style type="text/css">
body {
background-color:#C0C0C0;
}
table
{
border-collapse: collapse;
}
td, th /* Mettre une bordure sur les td ET les th */
{
border: 1px solid black;
}
</style>
<body>
<h1>Contenu du répertoire</h1><hr/>
<?php
//Variables
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>" . "<th>Nom fichiers</th>" . "<th>Taille en octets</th>" . "<th>Date dernière modification</th>" . "</tr>" );
while ($file != false ) {
$tableau = array($file);
if ( !(is_dir($file)) && (!filesize("./documents/".$file !==0 )) ) {
for ($i=0; $i < sizeof($tableau); $i++){
echo ("<tr>");
echo ("<td>" . $tableau[$i] . "</td>");
for ($i=0 ;$i<1; $i++){
echo ("<td>" . filesize("./documents/$tableau[$i]") . "</td>");
}
}
}
echo ("</tr>");
echo ("</table>");
}
}
closedir($curseur);
}
?>
</body>
</html>
/code
Bonsoir,
je t'ai rectifié qqs erreurs à première vue:
je t'ai rectifié qqs erreurs à première vue:
<?php
//Variables
$messageErreur="";
echo afficheContenuDossier("documents");
//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/
function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
echo "<table border=1 >";
echo "<tr><th>Nom fichiers</th><th>Taille en octets</th><th>Date dernière modification</th></tr>";
while ($file = readdir($curseur) ) {
$tableau = array($file);
if ( !(is_dir($file)) && (filesize("./documents/".$file) !==0 ) ) {
for ($i=0; $i < sizeof($tableau); $i++){
echo ("<tr>");
echo ("<td>" . $tableau[$i] . "</td>");
for ($i=0 ;$i<1; $i++){
echo ("<td>" . filesize("./documents/$tableau[$i]") . "</td>");
}
}
}
echo ("</tr>");
echo ("</table>");
}
closedir($curseur);
}
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
sinon un autre exemple: lecture recursive d'un dossier c ad avec les sous dossiers
?php
global $array_dossiers= array();
function parcours_dossier($chemin_dossier){
$dossier = opendir($chemin_dossier);// On ouvre le dossier à lire
while($element = readdir($dossier)){// On parcours l'ensemble des éléments présent dans le dossier
if(($element != ".") && ($element != "..")){ // On ne s'occupe ni du répertoire courant ni du répertoire parent
if(file_exists($chemin_dossier."/".$element) && is_dir($chemin_dossier."/".$element)){ // Si le fichier est un dossier
//echo "".$element."<br>";
if(array_key_exists($element,$array_dossiers)){//si la clef existe déja c'est un sous dossier, on rajoute au niveau en dessous
$array_dossiers[]=$element; //cle premier niveau.
}else{
}
parcours_dossier($chemin_dossier."/".$element);// On parcours les sous dossiers (c'est ici qu'intervient la récursivité car la fonction s'appelle elle-même)
}else{
echo "<a href='".$chemin_dossier."/".$element."' target='_blank'>".$element."</a><br>";
}
}
}
closedir($dossier);
}
parcours_dossier("test/");// On appelle la fonction de parcours des dossiers
?>
Merci j'ai réussi ça fonctionne, j'ai un dernier problème, mes conditions ne fonctionnent pas... :/
Je ne devrais voir que les fichiers au format "txt", "csv" ou "jpg" et il m'affiche tout comme un fichier "avi" ou "png"...
if ( ! isset($_REQUEST['fichier'] ) )
{
echo "Paramètre non renseigné";
}
else{
$nomFichier=$_REQUEST['fichier'];
if ( ! is_file($nomFichier) )
{
echo "Pas un fichier";
}
else{
if ( ! ((getExtension($nomFichier)=="txt") or (getExtension($nomFichier)=="csv") or (getExtension($nomFichier)=="jpg")))
{
echo "Pas un fichier";
}
else{
if ( getExtension($nomFichier)=="txt")
{
afficheFichierText( $nomFichier );
}
else{
if (getExtension($nomFichier)=="csv")
{
afficheFichierCSV( $nomFichier );
}
else{
if (getExtension($nomFichier)=="jpg")
{
afficheFichierImage($nomImage);
}
}
}
}
}
}
function afficheFichierCSV( $nomFichier ){
$lesenregistrements=array();
$lesenregistrements= file($nomFichier);
echo ("<table border=1>");
for ($i=0; $i< sizeof($lesenregistrements); $i++){
echo ("<tr>");
$unenregistrement=array();
//Range chaque champ de l'enregistrement dans un tableau (Le caractère de troncature est ";" ou ":")
$unenregistrement= split('[;:]' ,$lesenregistrements[$i]);
for ($j=0; $j< sizeof($unenregistrement); $j++){
echo ( "<th>" . $unenregistrement[$j] . "</th>");
}
echo ("</td>");
}
}
echo ("<br/>");
echo ("</table>");
//void afficheFichierText( String : $nomFichier )
/**
* Génère l'affichage du contenu du fichier de text brut (format .txt).
* @param String $nomFichier Reçoit en paramètre le nom du fichier (Plus exactement le "path" : url relative par rapport à la position de cette bibliothèque.
* @return void ne retourne rien.
*/
function afficheFichierText( $nomFichier ){
$Fichier=$nomFichier;
if ($TabFich = file($Fichier)) {
for ($i = 0; $i < count ($TabFich); $i++){
echo $TabFich[$i]."<br/>";
}
}
}
//string getExtension(String : $nomFic)
/**
* Retourne l'extension du fichier
* @param String $nomFic nom du fichier au format chaîne de caractères.
* @return String l'extension au format chaîne de caractères ou null s'il ni à pas d'extensions.
*/
function getExtension($nomFic){
$trunc = split('[.]', $nomFic);
if(sizeof($trunc)>1){
return $trunc[sizeof($trunc)-1];
}else {
return null;
}
}
function afficheFichierImage($nomImage){
$image = "<img src='".$nomImage."'>";
echo $image;
Je ne devrais voir que les fichiers au format "txt", "csv" ou "jpg" et il m'affiche tout comme un fichier "avi" ou "png"...
if ( ! isset($_REQUEST['fichier'] ) )
{
echo "Paramètre non renseigné";
}
else{
$nomFichier=$_REQUEST['fichier'];
if ( ! is_file($nomFichier) )
{
echo "Pas un fichier";
}
else{
if ( ! ((getExtension($nomFichier)=="txt") or (getExtension($nomFichier)=="csv") or (getExtension($nomFichier)=="jpg")))
{
echo "Pas un fichier";
}
else{
if ( getExtension($nomFichier)=="txt")
{
afficheFichierText( $nomFichier );
}
else{
if (getExtension($nomFichier)=="csv")
{
afficheFichierCSV( $nomFichier );
}
else{
if (getExtension($nomFichier)=="jpg")
{
afficheFichierImage($nomImage);
}
}
}
}
}
}
function afficheFichierCSV( $nomFichier ){
$lesenregistrements=array();
$lesenregistrements= file($nomFichier);
echo ("<table border=1>");
for ($i=0; $i< sizeof($lesenregistrements); $i++){
echo ("<tr>");
$unenregistrement=array();
//Range chaque champ de l'enregistrement dans un tableau (Le caractère de troncature est ";" ou ":")
$unenregistrement= split('[;:]' ,$lesenregistrements[$i]);
for ($j=0; $j< sizeof($unenregistrement); $j++){
echo ( "<th>" . $unenregistrement[$j] . "</th>");
}
echo ("</td>");
}
}
echo ("<br/>");
echo ("</table>");
//void afficheFichierText( String : $nomFichier )
/**
* Génère l'affichage du contenu du fichier de text brut (format .txt).
* @param String $nomFichier Reçoit en paramètre le nom du fichier (Plus exactement le "path" : url relative par rapport à la position de cette bibliothèque.
* @return void ne retourne rien.
*/
function afficheFichierText( $nomFichier ){
$Fichier=$nomFichier;
if ($TabFich = file($Fichier)) {
for ($i = 0; $i < count ($TabFich); $i++){
echo $TabFich[$i]."<br/>";
}
}
}
//string getExtension(String : $nomFic)
/**
* Retourne l'extension du fichier
* @param String $nomFic nom du fichier au format chaîne de caractères.
* @return String l'extension au format chaîne de caractères ou null s'il ni à pas d'extensions.
*/
function getExtension($nomFic){
$trunc = split('[.]', $nomFic);
if(sizeof($trunc)>1){
return $trunc[sizeof($trunc)-1];
}else {
return null;
}
}
function afficheFichierImage($nomImage){
$image = "<img src='".$nomImage."'>";
echo $image;