[php]input files avec separation d'un nom de fichier[need help]

input files avec separation d'un nom de fichier[need help] [php] - PHP - Programmation

Marsh Posté le 08-07-2004 à 10:24:11    

Bonjour a vous.  
 
jai fait un script avec un input files pour recuperer un nom de fichier sur le reseaux.  
 
mon bouton fonctionne bien, mais je voudrai savoir comment je peut separer le resultat en 2. CAD :  
 
il me fodrai d'un coter juste le nom du fichier (machin.exe)  
 
et de l'otre coter un chemin (\\192.168.0.1\machin\truc\) qui devra etre remplacer au final par un http://192.168.0.1/truc/  
 
 
Jai coder 2 page :
 
page 1 :

Code :
  1. <html>
  2. <body>
  3. <img border="0" src="./***.gif" alt="***">
  4. <center>
  5. <form name="add" action="./add2.php" method="POST">
  6. selectionnez l'emplacement reseaux du fichier : <P>
  7. <input name=fichier type=file>
  8. ci-dessous, la description : <P>
  9. <TEXTAREA name="description" rows=4 COLS=40></TEXTAREA> <P>
  10. Entrez la categorie ci-dessous: <P>
  11. <select name="categorie">
  12. <option value="" selected>choississez...</option>
  13. <option value="Windows2000">Windows 2000</option>
  14. <option value="Windows XP">Windows XP</option>
  15. <option value="office2000">office 2000</option>
  16. <option value="officexp">office XP</option>
  17. <option value="ie">internet explorer</option>
  18. </select>
  19. <BR>
  20. <BR>
  21. mettre a jour la base, cliquez ce bouton :
  22. <BR>
  23. <INPUT type="submit" value="Valider" >
  24. <BR>
  25. Pour effacer vos saisies, cliquez ce bouton : <BR>
  26. <INPUT type="reset" value="Effacer" >
  27. </center>
  28. </FORM>
  29. </body>
  30. </html>


 
 
 
page 2 :

Code :
  1. <html>
  2. <img border="0" src="./***.gif" alt="***">
  3. <center>
  4. <?
  5. $chaine = $_POST["fichier"];
  6. echo $chaine."<br/>";
  7. $chaine2 = eregi_replace("[\]","/",$chaine);  
  8. echo $chaine2."<br/>";  
  9. $chaine3 = eregi_replace("//","http://",$chaine2);
  10. echo $chaine3."<br/>";  
  11. $chaine4 = preg_match_all("|(.*)/([A-Z,0-9,(.*)]+)[.]([A-Z,0-9,(.*)]+)$|", $chaine3, $regs, PREG_PATTERN_ORDER);
  12. $url = $regs[1][0];  
  13. $fichier = $regs[2][0].".".$regs[3][0];  
  14. echo "url : ".$url."<br/>";  
  15. echo "fichier : ".$fichier."<br/>";  
  16. $texte=$fichier;
  17. $texte2=$_POST["description"];
  18. $texte3=$url;
  19. $texte4=$_POST["categorie"];
  20. $db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error());
  21. mysql_select_db('fichier',$db) or die('Erreur de selection '.mysql_error());
  22. $sql = "INSERT INTO espacetech ( `nom` , `description` , `Emplacement` , `categorie` ) VALUES ('$texte', '$texte2', '$texte3', '$texte4')";
  23. mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
  24. echo 'Ajout réussi.';
  25. mysql_close();
  26. ?>
  27. <body>
  28. <br><a href="./add1.php">ajouter un nouveau fichier</br>
  29. <br><a href="./fichier1.php">consulter les fichier disponible</br>
  30. </center>
  31. </body>
  32. </html>


 
 
Donc ca marche bien mais jai 2 pB :
 
il faut 2 condition :  
 
-que le nom de fichier et de rep ne contienne pas d'espace.  
 
-que le nom de rep ne contienne pas de majuscule  
 
si quelqu'un a une solution pour que ca passe partout.
 
merci d'avance  
 
ALb

Reply

Marsh Posté le 08-07-2004 à 10:24:11   

Reply

Marsh Posté le 08-07-2004 à 10:32:02    

tu as ceci dans $_FILE[]


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 08-07-2004 à 10:49:10    

oui et alor?
 
deja je voit pas ton $file[] et je voit pas ce que tu veut dire.
peut tu etre plus cler SVP?

Reply

Marsh Posté le 08-07-2004 à 11:00:10    

Va voir les variables réservées dans la doc au chapitre $_FILE


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 08-07-2004 à 11:19:11    

eu ben jai trouver.
 
dans la page 2 fallait faire ca :
 
$chaine4 = preg_match_all("|(.*)/([a-zA-Z,0-9,(.*)]+)[.]([a-zA-Z,0-9,(.*)]+)$|", $chaine3, $regs, PREG_PATTERN_ORDER);
 
 
Sinon la il me reste un dernier pb : quand jai un tiret (-)dans mais nom de fichier ca passe pas. Si ta une solution...

Reply

Marsh Posté le 08-07-2004 à 11:31:37    

fait un print_r($_FILE['fichier']).
 
Ta solution fonctionne (presque) mais c'est bourrin alors que tu as une solution toute faite ! Ecoute ce que l'on te dit. Cela m'ennerve.


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 08-07-2004 à 11:35:54    

ben jai ete voir ske tu ma dit
 
mais je trouve rien...
 
Donne moi du concret svp
 
merci pour ton aide jusqua maintenant

Reply

Marsh Posté le 08-07-2004 à 11:49:07    

http://fr.php.net/features.file-upload


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 08-07-2004 à 11:51:30    

ouais jlai vu ca.
 
mais comment le mettre en place sur mes 2 pag???

Reply

Sujets relatifs:

Leave a Replay

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