Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/09/2008, 09h07   #1
Débutant
 
Avatar de koKoTis
 
Inscription : août 2006
Messages : 3 196
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 196
Points : 1 673
Points : 1 673
Par défaut Supprimer un fichier

Bonjour, j'ai un script qui liste tous les fichier .mp3 de mon dossier:

Code :
1
2
3
4
5
6
7
<?php
$directories = glob("*.mp3");
foreach ($directories as $dir)
{
   echo '<a href="'.$dir.'" > '.$dir.' </a><br>';
}
?>
je voudrai que lorsque l'on clique sur un lien cela supprime le fichier, pouriez vous m'aider ?
koKoTis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 09h36   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
Classiquement il faut faire un lien du type index.php?action=supprimer&fichier=toto.mp3

et dans index.php
Code :
1
2
if ($_GET['action'] == 'supprimer') {
unlink($_GET['fichier']);
Ca c'est la version à ne pas faire.
L'utilisateur pourrait appeller la page en mettant n'importe quoi comme nom de fichier.
Il faut contrôler que le fichier est bien un fichier autorisé, que l'utilisateur n'a pas ajouté des / . .. ou autre.
etc.

Dans ton cas tu pourrais déjà faire index.php?action=supprimer&fichier=toto
et unlink($_GET['fichier']. ".mp3");
ca serait déjà une étape pour empecher la malveillance.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 09h57   #3
Débutant
 
Avatar de koKoTis
 
Inscription : août 2006
Messages : 3 196
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 196
Points : 1 673
Points : 1 673
Bonjour et merci beaucoup


Pour accéder à la page php de suppression de fichier il faudra un mot de passe, seul celui a qui est destiner le site aura un mot de passe

Si j'ai bien compris il faut que je créer un deuxième fichier php que j'appelerai avec le premier ?

comment je l'apelle apré ?
koKoTis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 10h09   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
Ton lien pointe vers un fichier (le meme ou un autre) avec passage de paramètre.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 10h15   #5
Débutant
 
Avatar de koKoTis
 
Inscription : août 2006
Messages : 3 196
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 196
Points : 1 673
Points : 1 673
Voila ou j'en suis:

Mon premier fichier contien:

Code :
1
2
3
4
5
6
7
<?php
$directories = glob("*.mp3");
foreach ($directories as $dir)
{
   echo '<a href="suppr.php?action=supprimer&fichier='.$dir.'" > '.$dir.' </a><br>';
}
?>
et mon deuxième fichier contient:

Code :
1
2
3
4
<?php
if ($_GET['action'] == 'supprimer') {
unlink($_GET['fichier']);
?>
et j'ai cette erreur :

Citation:
Parse error: parse error in c:\site yann\mp3s\suppr.php on line 4
koKoTis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 10h20   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
Il manque la } du if
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 10h25   #7
Débutant
 
Avatar de koKoTis
 
Inscription : août 2006
Messages : 3 196
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 196
Points : 1 673
Points : 1 673
Merci encore c'est parfait
koKoTis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 10h28   #8
Débutant
 
Avatar de koKoTis
 
Inscription : août 2006
Messages : 3 196
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 3 196
Points : 1 673
Points : 1 673
un dernière chose, puis-je ajouter un redirection ici:

Code :
1
2
3
4
5
<?php
if ($_GET['action'] == 'supprimer') {
unlink($_GET['fichier']);
}
?>
pour revenir a mon premier fichier de listage aprés la suppression ?
koKoTis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h24.


 
 
 
 
Partenaires

Hébergement Web