Comment mettre a la ligne un resultat en php

hannibal-lecter -  
 hannibal-lecter -
Bonjour,

j'ai mis en place une zone de texte dans une page php, le resultat s'affiche mais comment puis-je faire pour que celui-ci soit a la ligne

Fichier : <input type='textbox' name='' value=' <?php
$dirname = 'Vos-Fichiers-Uploder';
$dir = opendir($dirname);
while($file = readdir($dir)) {
if($file != '.' && $file != '..' && !is_dir($dirname.$file))
{
echo ''.$file.''; // ici je pense ?
}
}
closedir($dir);
?> 'border='0'>
A voir également:

11 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
il ne faut pas mettre la partie calcul de php dans la value=

<?php
$dirname = 'Vos-Fichiers-Uploder';
$dir = opendir($dirname);
$liste_fichiers="";
//ou pour une liste selct
$array_liste_fichiers=array();
while($file = readdir($dir)) {
	if($file != '.' && $file != '..' && !is_dir($dirname.$file))
	{
		$liste_fichiers.= $file."\n";  //\n pour le saut de ligne
		//ou pour afficher dans une liste selct
		$array_liste_fichiers[]=$file;
	}
}
closedir($dir);
?>
<!-- a ma connaisance le type textbox n'existe pas ! -->
<textarea" name="liste_fichiers" cols="50" rows="30"><?php echo $liste_fichiers; ?></textarea>

// OU affichage dans une liste
<select name="liste_fichiers" multiple="multiple">
<?php
	for($i=0;$i<sizeof($array_liste_fichiers);$i++){
		echo '<option value="'.$array_liste_fichiers[$i].'">'.$array_liste_fichiers[$i].'</option>';
	
	}

?>
</select>
0
hannibal-lecter
 
<form action='' method='post' name='Form'>
<tr>
<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<tr>
<label>Fichier</label> :
<textarea" name="liste_fichiers" cols="80" rows="40"><?php echo $liste_fichiers; ?></textarea>
<br><select name="liste_fichiers" multiple="multiple">
<?php
$dirname = 'Vos-Fichiers-Uploder';
$dir = opendir($dirname);
$liste_fichiers="";
$array_liste_fichiers=array();
while($file = readdir($dir)) {
if($file != '.' && $file != '..' && !is_dir($dirname.$file))
{
$liste_fichiers.= $file."\n"; //\n pour le saut de ligne
$array_liste_fichiers[]=$file;
}
}
closedir($dir);

for($i=0;$i<sizeof($array_liste_fichiers);$i++){
echo '<option value="'.$array_liste_fichiers[$i].'">'.$array_liste_fichiers[$i].'</option>';

}

?>
</select>
<br> <input type='submit' name='submit' value='Supprimer' border='0'></td></tr>
</table>
</form>

me manque la possibilité de supprimer le fichier précis que j'aurais sélectionner dans le textarea
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
Voir commentaires
<?php
//en mettant cette partie de code au début, la liste va se réafficher après la suppression, tu verra donc si ça a marché
if(isset($_POST['supprimer'])){
	// Le bouton supprimer a été cliqué
	//recup du fichier choisi dans la liste déroulante
	$fichier_a_supprimer=$_POST['liste_fichiers'];
	//etc....
}
/////
?>

<form action='' method='post' name='Form'>

<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<tr><td>
<!-- dans une table il faut des lignes tr mais aussi des colonnes td -->
<label>Fichier</label> :

<!-- il ne faut pas mettre le textarea et la liste select, je t'avais mis le sdeux a titre d'exemple 
tu ne peux pas selectionnner une ligne dans un textarea, c'est mieux dans une liste déroulante
de plus si tu mets le code php qui genére la liste fichier après le textarea ça ne peut pas fonctionner
<textarea" name="liste_fichiers" cols="80" rows="40"><?php //echo $liste_fichiers; ?></textarea>-->
</td>
<td><select name="liste_fichiers">
<?php
$dirname = 'Vos-Fichiers-Uploder';
$dir = opendir($dirname);

$array_liste_fichiers=array();
while($file = readdir($dir)) {
	if($file != '.' && $file != '..' && !is_dir($dirname.$file))
	{
		$array_liste_fichiers[]=$file;
	}
}
closedir($dir);

for($i=0;$i<sizeof($array_liste_fichiers);$i++){
	echo '<option value="'.$array_liste_fichiers[$i].'">'.$array_liste_fichiers[$i].'</option>';
}

?>
</select>
</td></tr>
<tr><td colspan="2"> <input type="submit" name="supprimer" value="Supprimer" ></td></tr> <!-- pas de border dans un input !  -->
</table>
</form>
0
hannibal-lecter
 
Merci Alain c'est exactement ça que je cherche mais, apparemment le fichier en question ne se supprime pas, faut t'il que je mette les droit chmod ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
oui bien sur car le fichier est supprimer par le script php donc Apache et il n'est pas le "propietaire" donc modifies le chmod de tous les fichiers
0
hannibal-lecter
 
non j'ai mis le chmod en 777 cela ne fonctionne pas ( pourtant il à tout les droits) , il liste bien les fichier du dossier "Vos-Fichiers-Uploder" ( ça c'est top merci) mais il ne les supprime pas quand je clique sur supprimer

faudrait qu'il puisse supprimer des extension précise .jpg | .gif | .png | .pdf
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
fais voir ton script de suppression
0
hannibal-lecter
 
c'est le tien que tu ma mis en haut, je les tester il ne fonctionne pas
0
hannibal-lecter
 
Regarde :

<?php
//en mettant cette partie de code au début, la liste va se réafficher après la suppression, tu verra donc si ça a marché
if(isset($_POST['supprimer'])){
// Le bouton supprimer a été cliqué
//recup du fichier choisi dans la liste déroulante
$fichier_a_supprimer=$_POST['liste_fichiers'];
//etc....
}
/////
?>


<form action='' method='post' name='Form'>

// Pour que ça fonctionne c là qui faut coller le code ?

<?php
if(isset($_POST['supprimer'])){
$fichier_a_supprimer=$_POST['liste_fichiers'];
}
?>

<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<tr><td>
<!-- dans une table il faut des lignes tr mais aussi des colonnes td -->
<label>Fichier</label> :

<!-- il ne faut pas mettre le textarea et la liste select, je t'avais mis le sdeux a titre d'exemple
tu ne peux pas selectionnner une ligne dans un textarea, c'est mieux dans une liste déroulante
de plus si tu mets le code php qui genére la liste fichier après le textarea ça ne peut pas fonctionner
<textarea" name="liste_fichiers" cols="80" rows="40"><?php //echo $liste_fichiers; ?></textarea>-->
</td>
<td><select name="liste_fichiers">
<?php
$dirname = 'Vos-Fichiers-Uploder';
$dir = opendir($dirname);

$array_liste_fichiers=array();
while($file = readdir($dir)) {
if($file != '.' && $file != '..' && !is_dir($dirname.$file))
{
$array_liste_fichiers[]=$file;
}
}
closedir($dir);

for($i=0;$i<sizeof($array_liste_fichiers);$i++){
echo '<option value="'.$array_liste_fichiers[$i].'">'.$array_liste_fichiers[$i].'</option>';
}

?>
</select>
</td></tr>
<tr><td colspan="2"> <input type="submit" name="supprimer" value="Supprimer" ></td></tr>
</table>
</form>
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
si tu n'a pas completé cette partie c'est normal que ça ne fasses rien:
<?php
//en mettant cette partie de code au début, la liste va se réafficher après la suppression, tu verra donc si ça a marché
if(isset($_POST['supprimer'])){
// Le bouton supprimer a été cliqué
//recup du fichier choisi dans la liste déroulante
$fichier_a_supprimer=$_POST['liste_fichiers'];
//etc....
//la il faut rajouter du code pour supprimer le fichier

/// unlink(...)
}
/////
?> 
0
hannibal-lecter
 
ok donc quel code exactement ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
0
hannibal-lecter
 
Donc si comprend bien ....

voilà comment doit se présenter le code :

<?php 
//en mettant cette partie de code au début, la liste va se réafficher après la suppression, tu verra donc si ça a marché 
if(isset($_POST['supprimer'])){ 
// Le bouton supprimer a été cliqué 
//recup du fichier choisi dans la liste déroulante 
$fichier_a_supprimer=$_POST['liste_fichiers']; 
unlink("../'Vos-Fichiers-Uplode/$fichier");   // unlink la fonction suppression  
                                                                            // $fichier désigne quel fichier supprimer
} 
?> 


<form action='' method='post' name='Form'> 
?> 

<table width='100%' border='0' cellspacing='1' cellpadding='1'> 
<tr><td> 
<!-- dans une table il faut des lignes tr mais aussi des colonnes td --> 
<label>Fichier</label> : 

<!-- il ne faut pas mettre le textarea et la liste select, je t'avais mis le sdeux a titre d'exemple 
tu ne peux pas selectionnner une ligne dans un textarea, c'est mieux dans une liste déroulante 
de plus si tu mets le code php qui genére la liste fichier après le textarea ça ne peut pas fonctionner 
<textarea" name="liste_fichiers" cols="80" rows="40"><?php //echo $liste_fichiers; ?></textarea>--> 
</td> 
<td><select name="liste_fichiers"> 
<?php 
$dirname = 'Vos-Fichiers-Uploder'; 
$dir = opendir($dirname); 

$array_liste_fichiers=array(); 
while($file = readdir($dir)) { 
if($file != '.' && $file != '..' && !is_dir($dirname.$file)) 
{ 
$array_liste_fichiers[]=$file; 
} 
} 
closedir($dir); 

for($i=0;$i<sizeof($array_liste_fichiers);$i++){ 
echo '<option value="'.$array_liste_fichiers[$i].'">'.$array_liste_fichiers[$i].'</option>'; 
} 

?> 
</select> 
</td></tr> 
<tr><td colspan="2"> <input type="submit" name="supprimer" value="Supprimer" ></td></tr> 
</table> 
</form>



Jusqu'à là j'ai bon ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
NON

$fichier_a_supprimer=$_POST['liste_fichiers'];  
unlink("../Vos-Fichiers-Uplode/$fichier_a_supprimer");   // unlink la fonction suppression  
0
hannibal-lecter
 
oui j'ai corriger après j'ai vue ma fautes ... ok donc après y a t'il autre chose , il est drôlement bien ton site ! Alain
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
c'est pas mon site

est ce que ça marche ?

si tu veux mettre un chti message de confirmation:
$effacer=unlink("../Vos-Fichiers-Uplode/$fichier_a_supprimer");
if($effacer){
echo "Le fichier ".$fichier_a_supprimer." a bien été supprimé !";
}else{
echo "Le fichier ".$fichier_a_supprimer." n'a pas pu être supprimé !";
}
0
hannibal-lecter
 
non ça ne fonctionne pas attend je fais un trucx tu me dit ci c'est bon ....
0
hannibal-lecter
 
comme ça :

<?php
if(isset($_POST['supprimer']))
{
$fichier_a_supprimer=$_POST['liste_fichiers'];
unlink("../Vos-Fichiers-Uploder/$fichier_a_supprimer"); // unlink la fonction suppression
// $fichier désigne quel fichier supprimer
}
if($effacer)
{
echo "Le fichier ".$fichier_a_supprimer." a bien été supprimé !";
}
else
{
echo "Le fichier ".$fichier_a_supprimer." n'a pas pu être supprimé !";
}
?>




ou comme ça


<?php
if(isset($_POST['supprimer']))
if($effacer)
{
echo "Le fichier ".$fichier_a_supprimer." a bien été supprimé !";
}
else
{
echo "Le fichier ".$fichier_a_supprimer." n'a pas pu être supprimé !";
}
{
$fichier_a_supprimer=$_POST['liste_fichiers'];
unlink("../Vos-Fichiers-Uploder/$fichier_a_supprimer"); // unlink la fonction suppression
// $fichier désigne quel fichier supprimer
}
?>

Je suppose que les messages sont toujours a mettre après la fonction ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
essayes comme ça et dis si il y des messages d'erreur ou autre

$fichier_a_supprimer=$_POST['liste_fichiers'];
if( file_exists ( "../Vos-Fichiers-Uplode/$fichier_a_supprimer")){
	$effacer=unlink("../Vos-Fichiers-Uplode/$fichier_a_supprimer");
	if($effacer){
		echo "Le fichier ".$fichier_a_supprimer." a bien été supprimé !";
	}else{
		echo "Le fichier ".$fichier_a_supprimer." n'a pas pu être supprimé !";
	}
}else{
	echo "Fichier ".$fichier_a_supprimer." non trouvé !!";
}
0
hannibal-lecter
 
quand j'ouvre la page il me mais le message suivant :
Fichier non trouvé !!
puis quand je sélectionne un fichier a supprimer voilà ce qui me mais après avoir cliquer sur supprimer :
Fichier logodepannage1.jpg non trouvé !!

je reguarde le ftp et le fichier est toujours là
0
hannibal-lecter
 
ça a marcher par contre quand je lance la page j'ai toujour un message mais la il a changer , j'ai enlever ça ../ ( le chemin relatif) pour maittre seulement ça

unlink("Vos-Fichiers-Uplode/$fichier_a_supprimer");


donc la quand je lance la page il m'affiche ça :
Le fichier n'a pas pu ??tre supprim?? !

au lancement , après quand je sélection dans la liste et que je clique sur supprimer ça fonctionne le fichier est supprimer avec le message votre fichier a été supprimer ( cette partie fonctionne)
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
comme cela ça devrait supprimer le premier message à l'ouverture de la page
<?php 

if(isset($_POST['supprimer'])){  
 // Le bouton supprimer a été cliqué  
 $fichier_a_supprimer=$_POST['liste_fichiers']; 
 if( file_exists ( "Vos-Fichiers-Uplode/$fichier_a_supprimer")){ 
  $effacer=unlink("Vos-Fichiers-Uplode/$fichier_a_supprimer"); 
  if($effacer){ 
   echo "Le fichier ".$fichier_a_supprimer." a bien été supprimé !"; 
  }else{ 
   echo "Le fichier ".$fichier_a_supprimer." n'a pas pu être supprimé !"; 
  } 
 }else{ 
  echo "Fichier ".$fichier_a_supprimer." non trouvé !!"; 
 } 
} 

?>


ensuite le chemin relatif n'était pas bon
0
hannibal-lecter
 
oui faillais enlever les ../ puisque c'est dans le même dossier , je te remercie de ton temps perdu avec moi réellement , ça a mis du temps mais au moins voila j'ai finie mon projets
0
hannibal-lecter
 
du coup je mais a disposition le code pour d'autre personne :


// paramètre du bouton supprimer
<?php 
if(isset($_POST['supprimer'])){  
 // Le bouton supprimer a été cliqué  
 $fichier_a_supprimer=$_POST['liste_fichiers']; 
 if( file_exists ( "Vos-Fichiers-Uploder/$fichier_a_supprimer")){    
  $effacer=unlink("Vos-Fichiers-Uploder/$fichier_a_supprimer");  // paramètre de suppression
  if($effacer){ 
   echo "Le fichier ".$fichier_a_supprimer." Suppression OK !"; 
  }
  else
  { 
  echo "Le fichier ".$fichier_a_supprimer." Pas de Suppression error !"; 
  } 
  }
  else
  { 
  echo "Fichier ".$fichier_a_supprimer." Non lister !!"; 
 } 
} 
?>
// fin des paramètres du bouton supprimer

// Forumulaire
<form action='' method='post' name='Form'> 
<table width='100%' border='0' cellspacing='1' cellpadding='1'> 
<label>Fichier</label> :  <select name="liste_fichiers"> 

// paramètre listing de votre menue déroulant
<?php 
$dirname = 'Vos-Fichiers-Uploder';  // indique le nom des fichier
$dir = opendir($dirname);         // ouverture du dossier a lister dans votre zone de texte

$array_liste_fichiers=array(); 
while($file = readdir($dir)) { 
if($file != '.' && $file != '..' && !is_dir($dirname.$file)) 
{ 
$array_liste_fichiers[]=$file; 
} 
} 
closedir($dir); 

for($i=0;$i<sizeof($array_liste_fichiers);$i++){ 
echo '<option value="'.$array_liste_fichiers[$i].'">'.$array_liste_fichiers[$i].'</option>'; 
} 

?>
// Fin paramètre listing de votre menue déroulant


<input type="submit" name="supprimer" value="Supprimer" >
</table> 
</form>
// Fin du formualire
0