Membres


Pas encore membre ?
inscrivez-vous ici

Connexion :
Login
Code
Mot de passe perdu ?
Liste des membres

Suppression images sur le serveur

Suppression images sur le serveur


Suppression images sur le serveur     Posté le 11/08/2008 à 15:20
Rolland75
Membre
rolland75
18 posts
Inscrit le : 29/06/2008
Hey all !

J'explique mon probleme : j'ai un dossier avec des partenaires et je souhaite les supprimer quand je le veux grace a des case a cocher. Voici le code, ce sera peut etre plus clair.

<?php
//PHP pour recupérer les images des partenaires
$chemin="../images/partenaires/";
$dossier=opendir($chemin);
echo 
"<form action='' method='post' name'supr_part'>";
echo 
"<table border='1' width='70%' align='center'>";
while(
$fichier=readdir($dossier)){
    
$mauvais=array(".","..","index.php","Thumbs.db""aaa_part.gif"); //les fichiers à ne pas prendre en compte
    
if(!in_array($fichier,$mauvais)){
        echo 
"<tr align='center'>";
        echo 
"<td><input type='checkbox' name='delete[]' value=".$chemin.$fichier."></td>";
        echo 
"<td>".$fichier."</td>";
        echo 
"<td><img src=".$chemin.$fichier." width='150'></td>";
        echo 
"</tr>";
    }
}
echo 
"<tr><td colspan='3' align='center'><br/><input type='submit' value='Supprimer'></td></tr>";
echo 
"<input type='hidden' name='step' value='lol'>";
echo 
"</table></form>";


//si on clique sur le bouton supprimer
if(isset($_POST['step'])){

    foreach (
$_POST['delete'] as $valeur){
        
unlink();
    }    
    echo 
"<2>Le(s) fichier(s) ont bien été supprimés !</h2>";
    
}
?>



La premiere partie du code pour lister les partenaires contenus dans le dossier ne pose pas de probleme, mais lorsque je clique sur supprimer je ne sais pas trop quoi mettre...Je sais que dans le unlink je dois retrouver le chemin de l'image a retrouver...

Gsper m'etre fait comprendre de tous smiley


Merci d'avance

________________________
RoRoRolland...
 
Réponse à : Suppression images sur le serveur     Posté le 11/08/2008 à 17:52
sky
Administrateur
Avatar
Site perso
4188 posts
Inscrit le : 13/08/2003
Salut

Unlink demande le lien exact du fichier qui sera donc la valeur passé dans le $_POST :

    foreach ($_POST['delete'] as $clef=>$valeur){
        unlink($valeur);
    }   

$clef va contenir un chiffre et valeur la valeur que tu met dans le formulaire.

$clef est en faite l'index du tableau.


Par contre ... si ceci est protéger et utiliser que par toi c'est bon, mais avec une utilisation libre ... y'a de grave danger pour ton serveur car on pourra supprimer tous tes fichiers.

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Suppression images sur le serveur     Posté le 12/08/2008 à 13:46
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
Merci je vais essayer et je vous tiens au courant :)

_______________________
RoRoRolland...
 
Réponse à : Suppression images sur le serveur     Posté le 12/08/2008 à 15:14
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
Merci pour ton aide Sky, cela fonctionne impeccable !

Au niveau de la sécurité je suis le seul a avoir accés a la page pour supprimer des fichiers directement sur le serveur.

Maintenant toujours pour ce petit script là, je souhaite vérifier par du javascript si au moins une case a été cochée. Voici mon code :

<script language="javascript">
<!--
function checkbox_selected(form){

    for (i=0, n=form.elements.length; i<n; i++){
        if ((form.elements[i].checked == true))
        return true;
    }
    //alert("Veuillez cocher au moins une case pour supprimer un partenaire.");
    return false;

}

function SUPPRIMER(){

    if(!checkbox_selected(supr_part)){
        alert("Veuillez cocher au moins une case pour supprimer un partenaire.");
    }else if(confirm("Voulez-vous vraiment supprimer le(s) partenaire(s) sélectionné(s) ?")){
        document.supr_part.step.value = 132;
        document.supr_part.action="gest_part.php";
        document.supr_part.submit();
    }
        
}
-->
</script>


Et l'appel de la fonction :

<input type='button' value='Supprimer' onclick='javascript:SUPPRIMER();'>


Mais j'ai toujours une erreur javascript que je ne comprends pas...Pourtant quand je teste en faisant

<input type='button' value='Supprimer' onclick='checkbox_selected(this.form)' >


cela marche correctement, mais je souhaite un confirm tout de meme.

Merci de votre aide smiley

_______________________
RoRoRolland...
 
Réponse à : Suppression images sur le serveur     Posté le 12/08/2008 à 16:28
sky
Administrateur
Avatar
Site perso
4188 posts
Inscrit le : 13/08/2003
Salut
Je ne sais pas si tu as changer depuis l'autre jours, mais il manque un = (égale) ici : echo "<form action='' method='post' name'supr_part'>";

Ensuite, pourquoi tu ne fais pas passer sans SUPPRIMER la même valeur qu'attend checkbox_selected() ?

Genre : <input type='button' value='Supprimer' onclick='javascript:SUPPRIMER(this.form);'>

Puis, tu change la fonction supprime() :
function SUPPRIMER(myform){

    if(!checkbox_selected(myform)){
        alert("Veuillez cocher au moins une case pour supprimer un partenaire.");
    }else if(confirm("Voulez-vous vraiment supprimer le(s) partenaire(s) sélectionné(s) ?")){
        document.supr_part.step.value = 132;
        document.supr_part.action="gest_part.php";
        document.supr_part.submit();
    } 

}  


C'est juste une idée ... mais ça devrai marcher je crois.

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Suppression images sur le serveur     Posté le 12/08/2008 à 17:07
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
Ah oui tu as raison, le '=' manquait...Et c'est çà qui faisait planter ma fonction javascript !

Quelle vue ^^ !

En tout cas merci. Et pour ta fonction javascript oui elle marche egalement. Je n'ai pas fait de cette facon tout simplement car je debute encore en javascript et je n'y avais pas pensé.

En tout cas merci pour ton aide smiley

Juste peut-etre une derniere petite question : quand j'upload des fichiers avec des espaces entre les mots, cela fonctionne, mais pour l'affichage c'est autre chose, car mes images n'apparaissent que sur Internet Explorer, pas sur Fireofx...Etrange etrange...

Si quelqu'un a une idée du problème sinon tanpis...

PS : mon code est toujours celui ci-dessus !

Merciiiiiiiiiiiiiiiiii

_______________________
RoRoRolland...
 
Réponse à : Suppression images sur le serveur     Posté le 12/08/2008 à 17:29
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
Ah que je suis bete...j'avais laissé des accents dans le nom de l'image a upload et firefox n'aimait pas...Pourquoi je ne sais pas mais au moins j'ai une reponse !

Encore merci Sky !

smiley

_______________________
RoRoRolland...
 
Réponse à : Suppression images sur le serveur     Posté le 13/08/2008 à 08:56
sky
Administrateur
Avatar
Site perso
4188 posts
Inscrit le : 13/08/2003
De rien smiley

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Suppression images sur le serveur     Posté le 18/08/2008 à 11:58
Bartimeus
Membre
Avatar
Site perso
41 posts
Inscrit le : 7/07/2008
Il te manque le h dans cette ligne!

echo "<2>Le(s) fichier(s) ont bien été supprimés !</h2>


echo "<h2>Le(s) fichier(s) ont bien été supprimés !</h2>


_______________________
http://www.vision-effect.fr
http://www.vitaesquest.fr
http://www.hebergeur-photofiltre.com
 
Vous n'est pas connecté en temps que membre, parceque j'en ai marre du spam, SEUL les membres peuvent poster des messages sur le forum.

Nous  -  Plan du site  -  Informations légale  -  Contact  -  © Graphiks.net