Erreur upload document dans la base de donnée

Med -  
 Noway -
Bonsoir

Je suis entrain d'essayer d'uploadé un fichier .doc dans ma base de données
j'ai un formulaire avec des champs varchar et int et un champ longblob (pour le texte)

J'ai une erreur qui s'affiche après avoir rempli le formulaire qui est:

Warning: move_uploaded_file() expects exactly 2 parameters, 1 given in C:\wamp\www\Site\site\cibleAjoutRapport.php on line 79
1136Column count doesn't match value count at row 1

la ligne est:
$rapport=move_uploaded_file($_FILES['rapport']);


Si quelqu'un peut corriger mon code svp c'est super urgent
, Merci

<?php
include('connex.inc.php');
//si tout les données sont bien saisies
if( !empty($_POST['nomprop'])&& !empty($_POST['prenomprop'])&& !empty($_POST['nomencadreur'])&& !empty($_POST['sujet']) && !empty($_POST['duree']) && !empty($_POST['etablissement']) && !empty($_FILES['rapport']) && !empty($_POST['specialite']) )
{
//récupération des données saisies dont des variables
  $nomprop=mysql_escape_string($_POST['nomprop']);
  $prenomprop=mysql_escape_string($_POST['prenomprop']);
  $nomencadreur=mysql_escape_string($_POST['nomencadreur']);
  $sujet=mysql_escape_string($_POST['sujet']);
  $duree=mysql_escape_string($_POST['duree']);
  $etablissement=mysql_escape_string($_POST['etablissement']);
  $rapport=move_uploaded_file($_FILES['rapport']);
  $specialite=mysql_escape_string($_POST['specialite']);
   
  //Requète SQL
  $requete="INSERT INTO rapport
  VALUES ('$nomprop','$prenomprop' ,'$nomencadreur', '$sujet', '$duree', '$etablissement', '$rapport', '$specialite')";
  $idcom=connex('pfe','myparam');
  $result=mysql_query($requete,$idcom);
 
  //si le résultat de la requete est:echoué 'erreur MYSQL
  if(!$result)
  {
    echo mysql_errno();
    echo mysql_error();
    echo "<script type=\"text/javascript\">
    alert('Erreur : ".mysql_error()."')</script>";
   
  }
  //sinon si resultat=succes
 else
 {
 echo "<br><br>";
 echo "CIN : " .$nomprop. "<br><br>";
 echo "Nom :" .$prenomprop. "<br><br>";
 echo "Prénom :" .$nomencadreur. "<br><br>" ;
 echo "E-mail :" .$sujet ."<br><br>";
 echo "Durée :" .$duree. "<br><br>" ;
  echo "Etablissement :" .$etablissement. "<br><br>" ;
   echo "Rapport :" .$rapport. "<br><br>" ;
    echo "Spécialité :" .$specialite. "<br><br>" ;
}
}
  //si l'administrateur ne saisie pas une des données dans le formulaire d'ajout utilisateur
 
   else {
       echo "<h5>Formulaire d'ajout de rapport incomplet, pour revenir cliquer <a class='blanc' href=\"formRapport.php\">içi</a>.</h5>";
   }
  
?>




A voir également:

1 réponse

Noway
 
Punaizz,

Ca se voit que tu débute !! C'est horrible !

Bref, on enregistre pas de fichier(hors images) dans une base de donnée, surtout si c'est un fichier uploadé par un tiers.
Par contre tu peux l'enregistrer' dans un répertoire de ton serveur ET c'est le lieu/lien où tu la sauvegarder que tu enregistre en base.

mysql_escape_string(), est obsolète !Utilise plutôt mysql_real_escape_string()

Il y a un manquent flagrants de sécurité ! Et je pèse mes mots. On uploade pas des fichiers sur un serveur juste comme ça !

Mon conseil: sers toi de script déjà fait mais de bon script. Ca t'évitera bien des tracas.
0