|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Bonjour, je voudrais savoir si c'était possible de faire un :
<a href=unlink....>Supprimer</a> Car je viens d'essayer mais ca me renvoie sur une page 404 not found alors que le unlink seul marche.. Merci de votre aide Cordialement |
|
|
00
|
|
|
#2 |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Bonsoir,
href est un attribut d'un lien (une page sur le serveur) donc quand tu cliques le lien, il va chercher la page qui est dans l'attribut href sur le serveur, si la page n'existe pas --> erreur 404. A+. |
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Merci de votre aide, mais auriez-vous par hasard une idée d'incorporation d'un unlink dans un hyperlien? Je m'explique. Je souhaiterais que sur la page il y a écrit : "Cliquez ici pour supprimer le fichier" et lorsque l'utilisateur clique sur cette phrase qui sera en hyperlien, le fichier se supprimer du dossier (ici /upload)
Cordialement |
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Développeur Web Inscription : octobre 2009 Messages : 72 ![]() |
Une idée parmi tant d'autres :
dans le href tu cibles une page supprimer.php à laquelle tu transmet (en $_POST ou $_GET) l'identifiant de la page à supprimer, tu y fais le traitement de la suppression via unlink() puis tu rediriges vers la page qui affiche lien en transmettant via $_GET l'état de la suppression. Une autre solution est de lancer une fonction js on clic sur le lien qui effectue une requête ajax sur la page supprimer.php. |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 791 ![]() |
Salut,
je ne trouve pas de lien dans la FAQ mais il faut commencer par comprendre le mécanisme de PHP. - Tes scripts PHP sont interprétés sur le serveur qui renvoie une "page internet" au navigateur - Le navigateur n'interprète pas le PHP donc tu ne peux pas utiliser une fonction PHP comme ça. Il reçoit et interprète du HMTL, JS, CSS, etc. - La seule manière est donc de dire au serveur d'exécuter telle ou telle fonction PHP (en passant des paramètres à ton lien ou en appelant telle ou telle page PHP) Je ne sais pas si c'est beaucoup plus clair... |
|
|
00
|
|
|
#6 | ||||
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Pour le moment j'ai mis :
Code :
Et j'ai créé une page efface.php avec : Code :
Si vous pouvez m'aider.. Merci beaucoup |
||||
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 791 ![]() |
Tu as oublié un point-virgule :
Et attention ce code a un gros trou de sécurité, il permet d'effacer n'importe quel fichier sur ton serveur en remplacement le paramètre directement dans l'url. Je te conseille de ne passer que le nom du fichier dans l'url et de définir en dur le répertoire dans ta page efface.php. Sachant que l'on pourra quand même effacer n'importe quel fichier dans ce répertoire ce qui n'est pas sécurisé, tout dépend de tes besoins. |
|
|
00
|
|
|
#8 | |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Bonsoir,
Ici tu dois avoir un chemin relatif mais pas un url absolue Citation:
|
|
|
|
00
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Je vous remercie de votre aide c'est sympa. Et pour le chemin relatif si je mets
$url='/upload/'.$fichier; cela est bon alors ? vu que la page efface.php se trouve dans le même dossier que ma page index.. Merci |
|
|
00
|
|
|
#10 | ||
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Désolé mais ça ne marche pas. Mon code est le suivant :
Code php :
Merci de votre aide |
||
|
|
00
|
|
|
#11 | ||||
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Bonjour,
Code :
Code :
|
||||
|
|
00
|
|
|
#12 | ||
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Je viens d'essayer, en changeant le dossier de destination et cela ne marche pas.. Je remet mes variables :
Code php :
Merci |
||
|
|
00
|
|
|
#13 |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
La variable (nom de fichier) est passé en URL, ce que récupères avec $_GET, je ne sais pas si tu comprends ce que c'est ces variables POST et GET. Je te conseille de lire un tutoriel sur PHP.
J'ai l'impression que ça tourne en rond là
|
|
|
00
|
|
|
#14 | ||
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
Je viens de lire des cours sur la méthode POST et GET j'ai compris leur fonctionnement merci.
Mon code est : Code php :
Warning: unlink(./upload/) [function.unlink]: Permission denied in C:\wamp\www\Projet\efface.php on line 9 Donc je pense qu'il faut faire un chmod('0777',$fichier) mais je bloque sur $fichier car $fichier = "./upload/".$up chez moi.. |
||
|
|
00
|
|
|
#15 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 791 ![]() |
T'as peut-être effectivement un problème de droit mais je crois que ton nom de fichier n'est pas passé également car il n'apparaît pas dans l'erreur :
T'es sûr que $up n'est pas vide ? Pour les droits c'est un problème récurrent selon les config du serveur. Ton fichier dans upload est créé comment ? |
|
|
00
|
|
|
#16 | ||
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : mai 2011 Messages : 124 ![]() |
On m'a aidé à modifier le fichier efface.php :
Code php :
Warning: unlink(localhost/Projet/upload/4ddf5f57ab12f.jpg) [function.unlink]: No such file or directory in C:\wamp\www\Projet\efface.php on line 10 Merci |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com