Script upload et accents

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 : Script upload et accents

Re: Script upload et accents

par fxav » 18 janv. 2011, 18:48

oui je me suis mal expliqué, je voulais dire qu'il ne se passait rien. (en fait j'ai la roue de la page qui charge qui tourne indéfiniment)

Re: Script upload et accents

par xTG » 18 janv. 2011, 14:07

Il n'y a pas de boucle, comment peut-il tourner dans le vide ?
Ou ne voulais-tu pas dire qu'il ne fait rien ? Dans ce cas es-tu sûr que ce n'est pas un problème d'encodage ou bien de caractère non pris en compte dans ton replace ?

Re: Script upload et accents

par fxav » 18 janv. 2011, 13:25

Bon j'ai réussi avec l'ancien script que j'utilisais, donc c'est cool. Mais à vrai dire je sais même pas trop comment j'ai fait.

Si j'essaye de faire pareil avec le script de mon 1er post, ça ne fonctionne pas. Si le fichier n'a pas d'accent ça marche nickel, sinon ça tourne en rond.

Qu'est-ce qu'il y a de faux ?

Code : Tout sélectionner

<?php if(!empty($_POST['posted'])) { // On vérifie si le champ est rempli $cible = array("é", "à", "°", "cours"); $rempla = array("e", "a", "um ", "Cours"); $_FILES['fichier']['name'] = str_replace($cible, $rempla, $_FILES['fichier']['name']); if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$_FILES['fichier']['name'])) { // Si upload OK alors on affiche le message de réussite echo '<b>Fichier recu !</b>'; echo '<hr />'; echo '<b>Fichier :</b> ', $_FILES['fichier']['name'], '<br />'; echo '<hr />'; echo '<br /><br />'; } else { // Sinon on affiche une erreur pour le champ vide echo '<b>Le champ du formulaire est vide !</b><br /><br />'; } } ?>

Re: Script upload et accents

par Ryle » 17 janv. 2011, 23:18

Pour simplifier la chose tu peux juste récupérer sa fonction Nettoie_nom_fichier() et l'inclure à ton propre code, puis y faire appel pour nettoyer le nom du fichier $_FILES['fichier']['name'] :)

Re: Script upload et accents

par fxav » 17 janv. 2011, 22:11

Merci beaucoup !

mais après plusieurs essais je n'y arrive toujours pas ! maintenant quand le fichier a un accent le script tourne en rond ...

Re: Script upload et accents

par stealth35 » 17 janv. 2011, 02:36

Hello, je t'invite à voir le travaille de AB à ce niveau là, voir directement utiliser sa classe :
vos-contributions/upload-fichiers-verif ... 54129.html
:wink:

Script upload et accents

par fxav » 17 janv. 2011, 02:34

Bonjour à tous !

J'aurais besoin d'un petit coup de main !

J'ai trouvé un script permettant l'envoi de fichier, malheureusement il ne gère pas les accents.

voici le script :

Code : Tout sélectionner

<?php //---------------------------- // DEFINITION DES VARIABLES //---------------------------- $target = '.'; // Repertoire cible //---------------------- // SCRIPT D'UPLOAD //---------------------- ?> <html> <head> <title>Upload d'un fichier sur le serveur !</title> </head> <body> <?php if(!empty($_POST['posted'])) { // On vérifie si le champ est rempli if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$_FILES['fichier']['name'])) { // Si upload OK alors on affiche le message de réussite echo '<b>Fichier uploadé avec succès !</b>'; echo '<hr />'; echo '<b>Fichier :</b> ', $_FILES['fichier']['name'], '<br />'; echo '<hr />'; echo '<br /><br />'; } else { // Sinon on affiche une erreur pour le champ vide echo '<b>Le champ du formulaire est vide !</b><br /><br />'; } } ?> <form enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>" method="POST"> <b>Envoyer le fichier :</b><br /><br /> <input type="hidden" name="posted" value="1" /> <input name="fichier" type="file" /> <input type="submit" value="Uploader" /> </form> </body> </html>

Je ne m'y connais pas du tout, mais apparement on pourrait utiliser str_replace pour remplacer les "à" par des "a" les "é" par des "e" etc... mais je ne sais pas comment intégrer celà au script, j'ai beau avoir cherché je n'ai pas réussi !

Merci pour votre petit coup de pouce
A+