Changer nom fichier, format jpg

Fermé
lesondins Messages postés 73 Date d'inscription dimanche 6 juillet 2008 Statut Membre Dernière intervention 4 juillet 2011 - 26 août 2008 à 13:11
lesondins Messages postés 73 Date d'inscription dimanche 6 juillet 2008 Statut Membre Dernière intervention 4 juillet 2011 - 26 août 2008 à 13:16
Bonjour, je souhaiterais pouvoir changer le nom du fichier en fonction de l'heure et du peudonyme de la personne (demandé une page avant), et n'accepter que les format d'image (jpg, jpeg, gif, png) et interdire de pouvoir entré du php, html fans la zone "textarea commentaire"
Comment puis-je faire s'il vous plait, ma premiere page étant :

<div class=text>
<form enctype="multipart/form-data" action="uploader.php" method="POST">
	<input type="hidden" name="MAX_FILE_SIZE" value="300000" />
	cliquez ici pour choisir votre image: <input name="userfile" type="file" /><br />
	Essayez de rennomer votre fichier et de l'apeller de votre pseudonyme, ex : "Pseudo1.jpg" Merci par avance pour cette manipulation.<br /><br />
	
<?php 
?>
Ecrivez votre message ici : <br /><TEXTAREA rows="4" Cols="70" name="commentaires">
</TEXTAREA>
<br /> <br />
 <input type="submit" value="Upload l'image" />
 
<?php 
 if (isset($_GET['modifier_news'])) // Si on demande de modifier une news
{
    // On protège la variable "modifier_news" pour éviter une faille SQL
    $_GET['modifier_news'] = mysql_real_escape_string(htmlspecialchars($_GET['modifier_news']));
    // On récupère les infos de la news correspondante
    $retour = mysql_query('SELECT * FROM news WHERE id=\'' . $_GET['modifier_news'] . '\'');
    $donnees = mysql_fetch_array($retour);
    
    // On place le titre et le contenu dans des variables simples
    $titre = stripslashes($donnees['titre']);
    $contenu = stripslashes($donnees['contenu']);
    $id_news = $donnees['id']; // Cette variable va servir pour se souvenir que c'est une modification
}
else // C'est qu'on rédige une nouvelle news
{
    // Les variables $titre et $contenu sont vides, puisque c'est une nouvelle news
    $titre = '';
    $contenu = '';
    $id_news = 0; // La variable vaut 0, donc on se souviendra que ce n'est pas une modification
}
?>


Qui envoie vers la page :
<?php
$uploaddir = 'uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "Le fichier est valide, et a été téléchargé
           avec succès. Voici plus d'informations :\n";
} else {
    echo "Attaque potentielle du téléchargement de fichiers.
          Voici plus d'informations :\n";
}
$uploadfile=str_replace ( ".jpg", "", $uploadfile ).'.txt';
$handle = fopen($uploadfile, 'w');
fwrite($handle, $_POST ['commentaires']); 
fclose($handle); 
?>



j'arrive bien a le faire fonctionner, mais n'importe quel format peut être rentré, ainsi que du code HTML (pas très securisé), j'aimerai aussi si possible changer le nom du fichier en fonction de l'heure et de son pseudonyme demandé une page auparavant

Merci beaucoup d'avance pour l'aide que vous pourrez me fournir, car je sais, j'en demande un pe trop certainement.
A voir également:

1 réponse

lesondins Messages postés 73 Date d'inscription dimanche 6 juillet 2008 Statut Membre Dernière intervention 4 juillet 2011 1
26 août 2008 à 13:16
Mince je vien de me rendre compte que j'ai mis une partie en trop dans la premiere page, désoler :S
0