les apostrophes et les caractères spéciaux ...

les apostrophes et les caractères spéciaux ... - PHP - Programmation

Marsh Posté le 01-05-2004 à 15:07:48    

Hello,  
 
J'ai qq sujets du forum pour améliorer mon script ... c'est-à-dire que l'utilisateur peut uploader des fichiers sur le serveur.  
J'ai placé cette fonction qui "fonctionne" :) à merveille $f1_name=preg_replace("([^\d\w\.])","_",$_FILES['fichier1']['name']);  
 
J'y ai placé ceci avant pour que le fichier de l'histoire ne ressemble pas à une continuité de _ :)  
$f1_name = strtr($f1_name, "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ", "aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn" );  
 
mais ça ne fait pas effet (comme prédit pourtant dans le sujet http://forum.hardware.fr/hardwaref [...] 5232-1.htm :)  
puisque tous mes caractères spéciaux àçé etc sont remplacés par un underscore _  
 
 
Voici mon code entier (on sait jamais que l'erreur se trouve ailleurs  :pt1cable: ), si quelqu'un aurait l'amabilité de jeter un coup d'oeil pour voir ce qui ne va pas :  
 
 

Code :
  1. <?PHP
  2. $infos = '';
  3. empty($_POST['nom']) ? $pseudo = '' : $pseudo = $_POST['nom'];
  4. empty($_POST['prenom']) ? $prenom = '' : $prenom = $_POST['prenom'];
  5. empty($_POST['contact']) ? $contact = '' : $contact = $_POST['contact'];
  6. empty($_POST['enseignement']) ? $enseignement = '' : $enseignement = $_POST['enseignement'];
  7. empty($_POST['degre']) ? $degre = '' : $degre = $_POST['degre'];
  8. empty($_POST['fiche']) ? $fiche = '' : $fiche = $_POST['fiche'];
  9. empty($_POST['descriptif']) ? $descriptif = '' : $descriptif = $_POST['descriptif'];
  10. if ($nom == '') $infos .= "- Vous devez définir un nom!<br>";
  11. if ($prenom == '') $infos .= "- Vous devez entrer votre prénom!<br>";
  12. if ($contact == '') $infos .= "- Vous devez définir un moyen de vous contacter!<br>";
  13. if ($enseignement == '') $infos .= "- Vous devez définir un type d'enseignement!<br>";
  14. if ($degre == '') $infos .= "- Vous devez définir un degré d'enseignement!<br>";
  15. if ($fiche == '') $infos .= "- Vous devez définir une compétence!<br>";
  16. if ($descriptif == '') $infos .= "- Vous devez remplir un descriptif de votre séquence!<br>";
  17. if (!empty($_FILES['fichier1']['size'])){
  18. $f1_size = $_FILES['fichier1']['size'];
  19. $f1_name = $_FILES['fichier1']['name'];
  20. $f1_tmpname = $_FILES['fichier1']['tmp_name'];
  21. $ext = strtolower(substr($f1_name,strrpos($f1_name, "." )+1));
  22. $valides = array("bmp","jpg","gif","png","tif","wbmp","txt","doc","pdf","htm","html" );
  23. if ($f1_size > 1000000) $infos .= "- Le fichier est trop volumineux!<br>";
  24. if (!in_array($ext,$valides)) $infos .= "- Ce type de fichier n'est pas accepté!<br>";
  25. $f1_name = strtr($f1_name, "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ", "aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn" );
  26. $f1_name=preg_replace("([^\d\w\.])","_",$_FILES['fichier1']['name']);
  27. if ($infos == ''):
  28. move_uploaded_file($f1_tmpname, "fichiers/{$f1_name}" ) or $infos .= "- Impossible d'enregistrer le fichier, contacter le webmaster : nizetbenjamin@hotmail.com!<br>";
  29. if ($infos == ''){
  30.   $res = mysql_connect('localhost','enseignantbelge','');
  31.   mysql_select_db('enseignantbelge_db',$res);
  32.   $add = mysql_query("INSERT INTO lfrancais VALUES ('','{$nom}','{$prenom}','{$contact}','{$enseignement}','{$degre}','{$fiche}','{$descriptif}','{$f1_name}',{$f1_size});" );
  33. }
  34. endIf;
  35. }else $infos .= "- Vous devez sélectionner un fichier à uploader!<br>";
  36. if (empty($_POST['MAX_FILE_SIZE'])) $infos = '';
  37. if ($infos != '' || empty($_POST['MAX_FILE_SIZE'])) echo $infos;
  38. else echo '<body bgcolor="#990000">
  39. <p>
  40. <p>
  41. <table width="75%" border="2" align="center" cellpadding="1" cellspacing="1">
  42.   <tr bordercolor="#990000" bgcolor="#999999">
  43.     <td height="25"><div align="center"> <strong>Chère/Cher  '.$prenom.' '.$nom.',</strong> </div></td>
  44. </tr>
  45.   <tr bordercolor="#990000" bgcolor="#CCCCCC">
  46.     <td colspan="2"><div align="justify"><strong> Le transfert de votre formulaire est réussi. <p> Le site enseignant.be.tf vous remercie de votre collaboration et vous invite à transmettre ce site à vos collègues, pour que, de jour en jour, grandisse la coopération entre les professeurs et enseignants du secondaire. </p> <p> Prenez le temps de consulter le forum et de laisser vos commentaires pour améliorer sans cesse ce site. </p></strong></div></td>
  47.   </tr>
  48.   <tr bordercolor="#990000" bgcolor="#999999">
  49.     <td><div align="center"><strong>En espérant, chère/cher '.$prenom.' '.$nom.' , vous revoir sur ce site et en vous remerciant à nouveau, </strong></div></td>
  50.   </tr>
  51.   <tr bordercolor="#990000" bgcolor="#999999">
  52.     <td colspan="0"><div align="center"><strong>Pour www.enseignant.be.tf, <p> Nizet Benjamin </p> </strong></div></td>
  53.   </tr>
  54. </table></p></p>'
  55. ?>


Message édité par nizouille le 26-03-2005 à 10:13:09

---------------
ressources pédagogiques et préparations de cours pour l'enseignement - Actualité de l'enseignement - [url=http://www.enseignons.be/forum/index.php]
Reply

Marsh Posté le 01-05-2004 à 15:07:48   

Reply

Marsh Posté le 01-05-2004 à 15:48:13    

Un peu logique?
 
$f1_name=strtr($f1_name,"ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ","aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn" );  
$f1_name=preg_replace("([^\d\w\.])","_",$_FILES['fichier1']['name']);


Message édité par Freekill le 01-05-2004 à 15:48:56
Reply

Marsh Posté le 01-05-2004 à 15:53:44    

tu peux expliquer ?


Message édité par nizouille le 26-03-2005 à 10:14:19

---------------
ressources pédagogiques et préparations de cours pour l'enseignement - Actualité de l'enseignement - [url=http://www.enseignons.be/forum/index.php]
Reply

Marsh Posté le 01-05-2004 à 15:56:22    

Je devrais écrire à la place :  
 
$f1_name=strtr($_FILES['fichier1']['name'],"ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ","aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn" );    
$f1_name=preg_replace("([^\d\w\.])","_",$_FILES['fichier1']['name']);
 
? C ca ?


Message édité par nizouille le 26-03-2005 à 10:14:51

---------------
ressources pédagogiques et préparations de cours pour l'enseignement - Actualité de l'enseignement - [url=http://www.enseignons.be/forum/index.php]
Reply

Marsh Posté le 01-05-2004 à 16:00:56    

allez, brule encore quelques neurones, tu vas y arriver...


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 01-05-2004 à 16:03:00    

:p je demandais juste une confirmation

Reply

Marsh Posté le 01-05-2004 à 16:10:52    

mmm oups  
 
Bon ben voilà ils sont brûlés maintenant :p
Merci qd même


Message édité par nizouille le 26-03-2005 à 10:15:08

---------------
ressources pédagogiques et préparations de cours pour l'enseignement - Actualité de l'enseignement - [url=http://www.enseignons.be/forum/index.php]
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed