supprimer photos en php a partir d'un lien de la bdd

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : supprimer photos en php a partir d'un lien de la bdd

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 06 déc. 2011, 11:56

clic droit sur le dossier => propriété => ongle sécurité :mrgreen:

ceci dit c'est moyen sous windows si on ne peux plus tout casser tranquillement :)

A tu essayé ton code sur une plateforme *nix ? (unix / linux).

sinon j'vois pas !

base toi sur l'hébergement final et non sur ta machine de dev ;) (donc au pire test en ligne se sera plus profitable)

@+

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 05 déc. 2011, 20:50

UP svp

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 01 déc. 2011, 23:31

j'ai testé le chmod() mais ca n'a rien donné par contre l'autre methode je ne connais pas peux tu m'en dir un peut plus stp
merci pour votre investissement
je cherche de mon cotes et effectivement d'apres ce que j'ai pu voir le chmod fonctionne pas sous windows

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 01 déc. 2011, 23:28

un chmod O_o

la gestion de droit à la unix style sur win ça fait bon ménage ?

@+

Re: supprimer photos en php a partir d'un lien de la bdd

par xTG » 01 déc. 2011, 23:22

Sous windows faut faire un chmod() avant le unlink sur le fichier, ou bien se faire un fichier vhost pour Apache.
Sinon c'est la merdouille la gestion des droits. ^^

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 01 déc. 2011, 22:37

Peux tu fournir
- un create table de la table memoire + deux ou trois lignes de cette table
- remontrer la structure exact du systeme de fichier (histoire que je ne me goure pas)

Je vais tester demain matin si j'ai un peu de temps au taf (ce soir je pense pas avoir le temps)

Ce sera plus simple si je test ;)


@+

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 01 déc. 2011, 21:56

Warning: unlink(../) [function.unlink]: Permission denied in C:\wamp\www\pieces_detachees\memoires\suppression_memoire\suppression2.php on line 53
C:\wamp\www\pieces_detachees\memoires\suppression_memoire\suppression2.phpLa suppression à échouée

j'ai levé le ; comme tu as dis toujours pareil...
ca ne viendrais pas des autorisations?
pour supprimer dans le fichier
j'arrive pas à lever la lecture seul a chaque fois que je le leve il revient ca rend fou

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 01 déc. 2011, 20:39

Enleve le point virgule après le second if ça devrait aller mieux ;)

@+

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 01 déc. 2011, 18:11

j'ai bien marqué du mois je pense regarde:
 
  error_reporting(E_ALL|E_STRICT);
    
	  //requête SQL:
$sql1 = "SELECT image
                FROM memoire
                               WHERE image = 1";
$req1 = mysql_query($sql1);    
if (!$req1) {
    echo "Impossible d'exécuter la requête ($sql1) dans la base : " . mysql_error();
    exit;
}
$data = mysql_fetch_assoc($req1);
if (file_exists('../'.$data['image']))
if (is_writable('../'.$data['image']));
{
	echo $data['image'];
}
 
                   unlink('../'.$data['image']);
				   echo __FILE__;

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 01 déc. 2011, 14:51

heu juste unlink('../'); ? la c'est normal que ça mette le brin, tu ne va pas supprimer ton répertoire parent.

soit $data['image'] est vide, soit pas ajouté ? => unlink('..'.$data['image']);

Il faut que appréhende bien le chemin que doit parcourir le script pour trouver le fichier ;)

@+

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 30 nov. 2011, 23:22

ca me marque ce message d'erreur:
Warning: unlink(../) [function.unlink]: Permission denied in J:\wamp\www\pieces_detachees\memoires\suppression_memoire\suppression2.php on line 48
Call Stack
# Time Memory Function Location
1 0.0017 681280 {main}( ) ..\suppression2.php:0
2 0.0040 690576 unlink ( ) ..\suppression2.php:48
J:\wamp\www\pieces_detachees\memoires\suppression_memoire\suppression2.phpLa suppression à été correctement effectuée
d'apres ce que je peux voir et comprendre ca me dis que je n'ai pas la permission d'acces au dossier...
faudrait il que je rajoute un code pour donner la permission malgres que ce soit sur mon pc en local?
merci pour ton aide et ta patience surtout
je débute dans le php et je n'ai pas vraiment tout assimilé car je pratique pas assez...

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 30 nov. 2011, 20:10

Le ../ faut aussi le mettre dans le file_exists ^^

apprend a debuguer, ajoute des echo un peu partout pour suivre le cheminement du script ;)

@+

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 30 nov. 2011, 17:09

merci pour ta réponse mais rien y fait l'image est toujours la...
  error_reporting(E_ALL|E_STRICT);
    
	  //requête SQL:
$sql1 = "SELECT image
                FROM memoire
                               WHERE image = 1";
$req1 = mysql_query($sql1);    
if (!$req1) {
    echo "Impossible d'exécuter la requête ($sql1) dans la base : " . mysql_error();
    exit;
}
$data = mysql_fetch_assoc($req1);
if (file_exists($data['image'])) 
                   unlink('../'.$data['image']);
				   echo __FILE__;

Re: supprimer photos en php a partir d'un lien de la bdd

par moogli » 30 nov. 2011, 10:40

oui sous windows le séparateur de répertoire c'est le \ pas le / :)

après je pense que ne pas être emmerdé quand tu metteras ton site enligne tu devrais utiliser ../ en début afin d'utiliser un chemin relatif c'est beaucoup plus simple

unlink('../'.$data['image']);

le tout c'est de savoir où tu te trouve dans le système de fichier et où se trouve le fichier à supprimer.

Après partir de la base du système de fichier est généralement le plus simple te pour cela on récupère le chemin complet à la racine du site, et on se trimballe une constante (ou astuce équivalente).


@+

Re: supprimer photos en php a partir d'un lien de la bdd

par luger » 30 nov. 2011, 00:44

apres avoir mis echo __FILE__;

il m'a écrit ca:

J:\wamp\www\pieces_detachees\memoires\suppression_memoire\suppression2.phpLa suppression à été correctement effectuée