Session et upload

nordutec Messages postés 2 Date d'inscription mercredi 7 juin 2006 Statut Membre Dernière intervention 8 juin 2006 - 7 juin 2006 à 18:34
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 8 juin 2006 à 07:25
Bonjour,
je voudrai sur une page faire un upload sur mon serveur, et en même temps enregistrer dans mysql le nom du fichier avec l'id de session comment puis-je faire, voici le code de mon upload qui fonctionne :
<?php
$DESTINATION_FOLDER = "dossier/";       //
$MAX_SIZE = 150000;           //
$RETURN_LINK = $_SERVER['HTTP_REFERER'];      //
// Définition des extensions de fichier autorisées (avec le ".")//
$AUTH_EXT = array(".doc");           //
// Fonction permettant de créer un lien de retour automatique


function createReturnLink(){
 global $RETURN_LINK;
 echo "
<center> Cliquez-ici pour retourner à l'étape 2 sur 3 </center>
";
}


// Fonction permettant de vérifier si l'extension du fichier est
// autorisée.


function isExtAuthorized($ext){
 global $AUTH_EXT;
 if(in_array($ext, $AUTH_EXT)){
  return true;
 }else{
  return false;
 }
}


// On vérifie que le champs contenant le chemin du fichier soit
// bien rempli.


if(!empty($_FILES["file"]["name"])){
 
 // Nom du fichier choisi:
 $nomFichier = $_FILES["file"]["name"] ;
 // Nom temporaire sur le serveur:
 $nomTemporaire = $_FILES["file"]["tmp_name"] ;
 // Type du fichier choisi:
 $typeFichier = $_FILES["file"]["type"] ;
 // Poids en octets du fichier choisit:
 $poidsFichier = $_FILES["file"]["size"] ;
 // Code de l'erreur si jamais il y en a une:
 $codeErreur = $_FILES["file"]["error"] ;
 // Extension du fichier
 $extension = strrchr($nomFichier, ".");
 
 // Si le poids du fichier est de 0 bytes, le fichier est
 // invalide (ou le chemin incorrect) => message d'erreur
 // sinon, le script continue.
 if($poidsFichier <> 0){
  // Si la taille du fichier est supérieure à la taille
  // maximum spécifiée => message d'erreur
  if($poidsFichier < $MAX_SIZE){
   // On teste ensuite si le fichier a une extension autorisée
   if(isExtAuthorized($extension)){
    // Ensuite, on copie le fichier uploadé ou bon nous semble.
    $uploadOk = move_uploaded_file($nomTemporaire, $DESTINATION_FOLDER.$nomFichier);
    if($uploadOk){
     echo '<html><META HTTP-EQUIV=Refresh CONTENT="0;url=testcde4.html"></html>';
    }else{
     echo ("L'upload a échoué !

");
     echo (createReturnLink());
    }
   }else{
    echo ("<center>

Les CV en $extension ne peuvent pas être envoyés !
</center>");
    echo (createReturnLink()."
");
   }
  }else{
   $tailleKo = $MAX_SIZE / 1000;
   echo ("<center>

Vous ne pouvez pas envoyer de fichier dont la taille est supérieure à : $tailleKo Ko.
</center>");
   echo (createReturnLink()."
");
  }  
 }else{
  echo ("<center>

Le fichier choisi est invalide.
</center>");
  echo (createReturnLink()."
");
 }
}else{
 echo ("<center>

Vous n'avez pas choisi de fichier !
</center>");
 echo (createReturnLink()."
");
}
?>

4 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
7 juin 2006 à 20:22
Salut,

ce que tu as mis c'est du php, non ?
Je commence à avoir des doutes sur l'implantation de la nouvelle catégorie
Thèmes / CodeS-SourceS / Le Bar / Discussions libres /
car c'est de pire en pire...

> Nordutec, je vois que tu es nouveau donc pas de problème, mais le prochain coup, essaie de placer ta question dans le bon thème.

Merci

dans Discussions libres, on parle de tout et de rien mais certainement pas une demande suite à un problème dans le code.
De plus, dans Discussions libres, ton message apparait sur TOUS les site Codes Sources.
Par exemple moi je suis sur vbfrance, et je connais que dalle au php (et autres) mais ta question apparait quand même !

@++

--Mortalino--
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement !
0
cs_Nurgle Messages postés 1642 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 28 avril 2011 4
7 juin 2006 à 20:53
Salut,

Voilà Mortalino, j'ai redirigé la question vers "PHP / Divers / Général", comme ça tu ne la verra plus depuis VBFrance.com
Et puis comme ça peut être que nordutec aura des réponses... utiles

A++ et Bonne continuation



<hr width="100%" size="2" />
Nurgle (Antoine)
0
nordutec Messages postés 2 Date d'inscription mercredi 7 juin 2006 Statut Membre Dernière intervention 8 juin 2006
8 juin 2006 à 05:39
Salut,
Désolé de l'erreur de rubrique, je suis effectivement nouveau...
Merci à Nurgle pour la redirection...
@+
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
8 juin 2006 à 07:25
hello,

quel est ton soucis au juste ? Tu as le nom du fichier, l'id session c'est facile à avoir, reste plus qu'à faire une requête d'insertion ?
Sur quoi bloques-tu ?
0
Rejoignez-nous