[Filer] 2 bugs incomprehensibles , besoin d'un oeil nouveau.

Fermé
Krion Messages postés 76 Date d'inscription mercredi 1 juillet 2009 Statut Membre Dernière intervention 10 février 2013 - 9 févr. 2013 à 19:05
Krion Messages postés 76 Date d'inscription mercredi 1 juillet 2009 Statut Membre Dernière intervention 10 février 2013 - 10 févr. 2013 à 14:14
Bonjour,

Je suis actuellement entrain de réaliser un filer en PHP en utilisant le schéma MCV
Mon filer devrait contenir au final les actions suivantes :


Sur les répertoires :

Création
Suppression
Renommage
Déplacement
Copie

Sur les fichiers

Création
Suppression
Upload
Download
Renommage
Déplacement
Copie

Mes problèmes sont les suivants :

1) Pour ma fonction rename_file (qui comme son nom l'indique renomme les fichiers) , la saisie prise dans le champ texte du formulaire ne fait que s'ajouter après l'extension du fichier au lieu de remplacer le nom :

Voici le formulaire :
<form method="post" action="index.php?action=rename_file&path='.$elem['path'].'">
				 <input type="hidden" name="originalfile">&nbsp;
                                 <input type="text" name="renamefile">
                                 <input type="submit" value="Renommer ce fichier">
</form>';


Voici la fonction :
function rename_file($path,$oldnamefile,$newnamefile)
{
	$return = rename($oldnamefile,$newnamefile);
	
	if ($return === FALSE)
		die('Erreur lors du renommage du fichier : '.$path);
}	



Et voici son utilisation :
if ($action == "rename_file")                                                             
{
	$path = $_GET['path'];
	if (empty($path))
		die ("le chemin du fichier à renommer n'est pas spécifié");
	$oldnamefile = $path.$_POST['originalfile'];
	$newnamefile = $path.$_POST['renamefile'];
	if (empty($_POST['renamefile']))
		die ("le nom du fichier à renommer n'est pas spécifié");
	rename($oldnamefile, $newnamefile );
	$template = "rename_file";
	$last_slash = strrpos($path, "\\");
	$return_path = substr($path, 0, $last_slash);
	}


2) Pour ma fonction create_file (qui comme son nom l'indique également créer les fichiers ) , la création s'execute en prenant en compte le nom du précedent fichier/dossier du répertoire et en y ajoutant le champ texte :

Voici le formulaire :
<form method='post' action='index.php?action=create_file&path=".$elem['path']."'>[Nouveau fichier]&nbsp;<br />
		<input type='text' name='newfile'><input type='submit' value='Créer ce            fichier'>
		</form>";


Voici la fonction :
function create_file($path, $newfile)
{
	$return = (fopen($newfile,"w"));
 
		if ($return === FALSE)
		die('Erreur lors de la création du fichier : '.$path);
}


Et voici son utilisation :

if ($action == "create_file")
{
	$path = $_GET['path'];
	if (empty($path))
		die ("le chemin du fichier à créer n'est pas spécifié");
	 $newfile=$path.$_POST['newfile'];
	 if (empty($_POST['newfile']))
		die ("le nom du fichier à créer n'est pas spécifié");  
	//créer le fichier 
	fopen($newfile,"w");
	$template = "create_file";
	$last_slash = strrpos($path, "\\");
	$return_path = substr($path, 0, $last_slash);
	}


Voilà merci de vos conseils et de vos réponses , toutes remarques , critiques , aides seront les bienvenus.

Je vous précise que je débute en PHP , voilà merci d'avoir pris la peine de lire ce message et désolé pour sa longueur excessive.

A très vite,Krion


A voir également:

2 réponses

Krion Messages postés 76 Date d'inscription mercredi 1 juillet 2009 Statut Membre Dernière intervention 10 février 2013 11
10 févr. 2013 à 01:02
Un petit up !
0
Krion Messages postés 76 Date d'inscription mercredi 1 juillet 2009 Statut Membre Dernière intervention 10 février 2013 11
10 févr. 2013 à 14:14
Si vous plait , voilà bientot une semaine que je m'arrache les cheveux là dessus T.T
0