IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Supression photo repertoire + bdd


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2013
    Messages : 11
    Par défaut Supression photo repertoire + bdd
    Bonsoir tout le monde,

    Je suis en pleine création de mon petit projet (site web de photos) , et je rencontre deux petits problèmes sur une de mes pages. J'aurais besoin de vos lumières

    Je fais la page suppression (je vous montre le bout de code)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <h4>Supprimer une image</h4>
    <br/>
    <?php
    //PHP pour recupérer les images des partenaires
    $chemin="./upload/";
    $dossier=opendir($chemin);
    echo "<form action='' method='post' name'supr_part'>";
    echo "<table border='1' width='80%' valign='center' 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 border='0' 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 $clef=>$valeur)
    	{
    		unlink($valeur);
    	}   
    	print "<center>";
    	print "<br/>";
    	echo "Fichier(s) en cours de suppression.</h2>";
    	print "</center>";
    	header("Refresh: 1; URL=index.php?page=membre" );
    }
    ?>

    Cette partie permet de supprimer les photos du répertoire ou sont stocker les photos.

    Ma table se présente comme ça:

    Table : 'upload'
    Champs: num nom nomfichier description date heure user

    Question 1: Comment rajouter dans la requête qui affiche les photos, le fait qu'elle doit se connecter à ma bdd puis afficher seulement les photos ou 'user' =
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo ''.$_SESSION['login'].'';?>
    J'ai aussi la partie de la connexion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    mysql_connect("localhost", "root", ""); // Connexion à la base de données
    mysql_select_db("famille"); // Sélection de la base de données 
    ?>
    Question 2: Comment rajouter dans la requête la suppression des infos de la photo en question dans la table une fois le checkbox envoyé.

    J'ai réaliser pas mal de test mais sans succes.

    Je reste a disposition.

    Merci par avance pour l'aide apporté

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    1 - Dans ta requête tu mets la condition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE user = $_SESSION['login']
    2 - Tu prends le problème dans le mauvais sens : la liste doit venir de la requête sur ta bdd et non du parcours du repertoire photo.
    Tu supprimes donc l'enregistrement dans la bdd et le fichier qui correspond.
    Attention également de vérifier que l'utilisateur a bien le droit de supprimer les photos qu'il demande à supprimer (tu peux mettre le même WHERE qu'au dessus dans la requête de suppression).
    De manière générale, quand on manipule des données reçues d'un utilisateur, il faut les contrôler : dans le code que tu avais fais, tu supprimais un fichier du disque dur à partir du nom du fichier fourni par l'utilisateur. L'utilisateur pouvait donc potentiellement supprimer n'importe quoi n'importe ou.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header("Refresh: 1; URL=index.php?page=membre" );
    Que vient faire un header() en plein milieu de ta page ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2013
    Messages : 11
    Par défaut
    Réponse très rapide ce soir

    Ok donc je vais essayer d'afficher a partir de la bdd et non du répertoire (que le combat commence )

    Le header me permet de revenir a la page "membre qui contient l'upload et la supression" une fois l'action effectué. ça ne se fait pas ?

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2013
    Messages : 11
    Par défaut
    Bonjour tout le monde,

    Après de nombreux essais je ne suis pas parvenu à ordonner différament ma page de suppression pour quelle m'affiche les photos à partir des utilisateur de la BDD, je m'arrache les cheveux dessus ...
    Y aurait-il quelqu’un qui puisse m'expliquer plus en détails, ou me montrer des codes déjà existant qui pourrait m'aider ?

    Mon projet personnel est sur le point d'être terminé avec cette fameuse suppression c'est rageant.

    Cordialement

    Maxime

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/06/2006, 08h35
  2. inserer des photos dans une bdd mysql
    Par oceane751 dans le forum Requêtes
    Réponses: 3
    Dernier message: 20/05/2006, 20h06
  3. [Répertoire] Supression de dossier
    Par Anduriel dans le forum Langage
    Réponses: 4
    Dernier message: 14/04/2006, 11h41
  4. [Répertoire] Supression de dossier
    Par Anduriel dans le forum Langage
    Réponses: 5
    Dernier message: 13/04/2006, 17h40
  5. [Photos] Faut-il stocker dans la SGBD ou dans un repertoire?
    Par papy_tergnier dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 08/12/2005, 14h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo