Supprimer element dans liste deroulante

[Résolu]
Signaler
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006
-
Messages postés
4
Date d'inscription
jeudi 11 août 2005
Statut
Membre
Dernière intervention
8 mars 2006
-
bonjour
je mets en ligne directement des photos prises sur mon dd. pour gerer ma liste j'affiche une liste deroulante avec toutes mes photos et je voudrai pouvoir supprimer celle selectionnée , mais ma fonction unlink() ne marche pas ....
voici mon code :
<?php
include ('telecharger.php');





$repertoire="C:/Program Files/EasyPhp1-8/www/dbc/photos/";
if(!($liste = opendir($repertoire))) die("Impossible d'ouvrir $repertoire.");?>
<select name="liste_photos">
<?
while($fichier = readdir($liste))
if($fichier != '.' && $fichier != '..') {?>
<option> <? $fichier ?><? echo "$fichier
";?></option>
<? }?>
</select>
">
<?
closedir($liste);
?>
merci pour vos lumieres

14 réponses

Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!

Rapide résumé de la situation:



Le client (navigateur) demande une page à un serveur par le biais d'une
requête HTTP. Le serveur recoit la requête et la traite. Par
traitement, j'entends exécutions des "languages serveur" (PHP, ASP,
Requêtes MySQL, ...). Le serveur renvoie ensuite au navigateur des
infos d'affichage ( HTML, CSS, JavaScript, ...).



Maintenant, si tu fais un événement onClick sur un bouton, tu peux pas
supprimer un fichier puisque la suppression se fait sur le serveur mais
que celui ci est loin derrière... La solution est de rafraichir la page
et de faire la suppression à ce moment là.



@++



R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Salut,



chez moi la fonction unlink fonctionne pourtant très bien avec easyphp sous windows. Suffit d'utiliser des chemins relatifs ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
Au passage, si tu lis la doc sur unlike (ce que tu n'as pas fait), tu comprendras toi même que ca ne marche que sur un serveur de type Unix/Linux.

Donc ton Microsoft, tu te le met la ou je pense ;)
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
"Au passage, si tu lis la doc sur unlike (ce que tu n'as pas fait), tu
comprendras toi même que ca ne marche que sur un serveur de type
Unix/Linux.

Donc ton Microsoft, tu te le met la ou je pense ;)"

De quand date ta doc, ou quel est son sérieux??? :D



Enfin, perso, je viens de tester ca sur mon serveur (mon PC tournant sur Win2000) et pis ben... voilà, quoi, ca supprime, :)



@++



R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
J'avoue que la réaction erronnée d'FhX était marrante sur ce coup ^^

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Surtout qu'elle me semblait... comment dire... sèche?!?

Par contre, je me suis fais souffler à 63 secondes près.. :D



@++



R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
ouais ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
lol, tout simplement,



on part d'erreurs de relations clients / serveurs, pour arriver à des
détails sur l'incapacitée (suspectée) de windows à supprimer des
fichiers... (bon, si ça avait été vraiment le cas, on aurait pu dire :
"ouais, mais bill a prévu ça pour que t'achète aussi la prochaine
version...")



Nan, franchement, PHP marche aparement parfaitement sous windows, mais je ne sais pas si on doit ça a microsoft ou à zend...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
"mais je ne sais pas si on doit ça a microsoft ou à zend..."



bah on doit ça à ceux qu'on développé PHP, pas à Microsoft...



Quand un programme ne fonctionne pas sur un système d'exploitation ou
fonctionne mal, c'est souvent à cause du programme en question

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
c'était totalement ironique, microsoft n'a aucun interet à faire de php un langage qui fonctionne (cf asp...)

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
ouais en même temps ASP et PHP c'est incomparable...

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006

j'ai vérifié dans ma doc (php4 Wrox)je ne trouve pas la fonction unlike et je m'en fous ! j'ai donc utilisé unlink mais avec 2 parametres pour avoir le chemin complet du fichier.j'ai modifié mon code et ça marche . N'est ce pas trop bourrin ?
<form method="post">
<select name="liste_photos" onChange="submit()">
<?
$repertoire="C:/Program Files/EasyPhp1-8/www/dbc/photos/";
if(!($liste = opendir($repertoire))) die("Impossible d'ouvrir $repertoire.");?>
<?
while($fichier = readdir($liste))
if($fichier != '.' && $fichier != '..' ) {?>
<option> <? $fichier ?><? echo "$fichier
";?></option>
<?
$i=$_POST["liste_photos"];
unlink( $repertoire.$i);
}
closedir($liste);
?>
</select>
[supprimer_fichier_telecharger.php Valider]
</form>
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
unlink( $repertoire.$i);



t'as qu'un seul paramètre qui est une chaine de caractère...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
Messages postés
4
Date d'inscription
jeudi 11 août 2005
Statut
Membre
Dernière intervention
8 mars 2006

Ecoute pour ton probléme je pense que c'est pas necessaire de mettre c:\machin machin tu mets jute le repertoire dans lekel se trouve les photos bien entendu il se trouve dans ton site ensuite tu récuperes l'element séléctionner dans la liste dans une variable tu ouvres ton repertoire comme tu l'as fait et tu compare les element si tu le trouves tu supprimes utilise la method post une fois que tu as supprimé tu reviens sur la page. aujourd'hui la science nous facilite tellement la chose pourkoi chercher à se compliquer la vie les machines sont ultra rapide tu ne sentira meme pas la transition utilise 2 pages ca devrai aller

le seul, l'unique, le grand