webguitou
Messages postés5Date d'inscriptiondimanche 19 octobre 2003StatutMembreDernière intervention14 juin 2007
-
13 juin 2007 à 17:02
webguitou
Messages postés5Date d'inscriptiondimanche 19 octobre 2003StatutMembreDernière intervention14 juin 2007
-
13 juin 2007 à 20:48
Bonjour,
Je dévellope actuellement un site dans lequel le contenu d'un dossier situé sur le serveur apparaît.
Je souhaite que les utilisateurs puissent le renommer. Et c'est là que ça bug
J'ai en fait créé un lien comme ceci (nous sommes sur la page "desktop.php?page= 2"
" onClick="prompt('Rename:')">
Je vous explique, desktop.php c'est la page centrale dans laquelle il y a un include d'une autre page (desktop_2.php) quand $page =2 et $fctn, ça précise que l'on veut renommer le fichier vous comprendrez plus bas...)
Le problème est après: onClick="prompt('Rename:')" fait correctement apparaître la fenetre de dialogue, on rentre le nouveau nom puis il recharge à nouveau la page et le nom n'a pas changé.
Pourtant en haut de page, j'ai
if ($fctn == "newname") {
$newname_php=$_GET["newname"]; <= ici je suis censé récupérer la valeur entrée dans le prompt et pourtant...
$newlink = "fichiers".$newname_php;
$oldlink = "fichiers".$f;
rename("$oldlink","$newlink"); }
Vous avez compris mon problème, je n'arrive pas à passer du javascript au php.
Si vous avez des pistes, je suis preneur parceque ça fait maintenant 2 jours que je m'arrache les cheveux sur ce truc, je vais finir par me balancer par la fenetre....
Merci d'avance
Bertrand
A voir également:
Renommer un fichier sur le serveur par le biais de javascript
webguitou
Messages postés5Date d'inscriptiondimanche 19 octobre 2003StatutMembreDernière intervention14 juin 2007 13 juin 2007 à 20:48
Merci mais ça ne fonctionne toujours pas. Je vais me debrouiller sans passer par javascript mais par un input php.
Merci en tout cas pour les tuyaus mais mon code semble être assez mal foutu, ce qui expliquerai les échecs successifs...
A bientôt et encore merci à amezghal
webguitou
Messages postés5Date d'inscriptiondimanche 19 octobre 2003StatutMembreDernière intervention14 juin 2007 13 juin 2007 à 17:05
Je précise un truc, en relisant mon post, je me suis apercçu qu'à la deuxième ligne, j'avais marqué
Je souhaite que les utilisateurs puissent le renommer.
Ici, le désigne les différents fichiers présents dans le dossier
amezghal
Messages postés385Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention21 août 20155 13 juin 2007 à 17:44
salut,
tu peut faire un au lieu de
alors voici un exemple:
---------
<html>
<head>
<script type= "text/javascript>
function renommer (page){
varnew_name =prompt("Merci d'entrer le nouveau nom pour ce fichier .");
window.location.replace( "desktop.php?page="+page+"&fctn=newname&name="+
new_name);
}
</script>
</head>
)">cliquer ici pour changer le nom du fichier
</html>
----------------------
<hr size ="2" width="100%" />Au début, on essaye de trouver une solution qui marche, et puis on cherche la meilleure solution.
webguitou
Messages postés5Date d'inscriptiondimanche 19 octobre 2003StatutMembreDernière intervention14 juin 2007 13 juin 2007 à 18:39
Merci pour cette réponse.
J'ai donc essayé d'appliquer l'exemple à ma page mais il ne veut toujours pas renommer parceque les chemins semblent erronés. Je m'explique:
En realité, l'idée n'est pas aussi simple que cela...
Chaque utilisateur a son propre espace avec trois sous repertoire dedans "doc", "img" et "mus". le nom de son dossier personnel est stocké dans la base de donnée et on le rappele au login en le stockant dans une session et par la suite dans la variable "$folder".
Une fois identifié, on accède à son espace et on rentre dans les sous dossiers via des liens. la variable pour le choix du sous-dossier est stocké dans $ssrep! Enfin , le nom du fichier est stocké dans la variable $f
On a donc, quant on veut telecharger un fichier un lien de la forme: users/$folder/$ssrep/$f.
Or depuis que j'utilise votre code, le chemin du fichier (je l'ai verifié en l'affichant avec un echo) est de la forme users/$folder$ssrep//$f: <=il colle le $folder et le $ssrep et renvoi le slach qui les sépare normalement après!
Donc je ne sais pas si cela a un rapport avec le nouveau code mais pour l'instant je ne peux pas tester votre code (qui semble marcher) sur ma page.
Merci encore pour votre "soutien"
C'est pas facile tous les jours la programmation!!!
Bertrand (testez sur http://winlive.fr.nf avec le login "visitor" et le mdp "visitor")
Vous n’avez pas trouvé la réponse que vous recherchez ?
amezghal
Messages postés385Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention21 août 20155 13 juin 2007 à 19:45
salut,
essaye plutot ça
<html>
<head>
<script type= "text/javascript>
function renommer (){
var new_name =prompt("Merci d'entrer le nouveau nom pour ce fichier .");
window.location.replace( "desktop.php?page=2&fctn=newname&name="+
new_name);
}
</script>
</head>
cliquer ici pour changer le nom du fichier
</html>
attention!
-pour récuperer le nouveau nom du fichier, n'utilise pas $_GET['newname'], mais plutot $_GET['name'] // ou bien tu peux changer le nom de la variable dans la fonction renommer()
-fait attention au numéro des pages
voilà
<hr size ="2" width="100%" />Au début, on essaye de trouver une solution qui marche, et puis on cherche la meilleure solution.