2012-11-22 53 views
0

你好,我想在我的网站给出的数据库中读取Excel文件并插入其内容读取Excel文件内容并插入到数据库

<form class="form-analyste" method="POST" action="{{ path('Importer_dark_cell')}}" enctype="multipart/form-data"> 


<input type="hidden" name="MAX_FILE_SIZE" value="2097152000000"> 
Fichier : <input type="file" name="avatar"> 
       <li class="li"> 

<input type="submit" name="envoyer" value="Envoyer le fichier"> 
</li> 
</ul> 
</h5> 

`

网络,但我当我点击发送我会永远文件没有找到! ©e导入停止。我试图找到在互联网上,但我发现了同样的答案,可以帮助我,请我被堵在这一点上:(我不能移动的设置(

public function importer_dark_cellAction(){ 
    $session =$this->get('request')->getSession() ; 
     $user_name = $session->get('user_name'); 

    $fichier=$_FILES["avatar"]["name"]; 
/* On ouvre le fichier à importer en lecture seulement */ 
if (file_exists($fichier)) 
$fp = fopen("$fichier", "r"); 
else 
{ /* le fichier n'existe pas */ 
echo "Fichier introuvable !<br>Importation stoppée."; 
exit(); 
} $host = "172.25.5.227"; 
$user = "stgzouaoui"; 
$password = "stg"; 
$bdd = "stg_zouaoui_dev"; 
    mysql_connect($host, $user, $password) or die ("impossible de se connecter au serveur"); 
     mysql_select_db($bdd) or die ("impossible de se connecter a la base de donnees"); 
    while (!feof($fp)) /* Et Hop on importe */ 
    { /* Tant qu'on n'atteint pas la fin du fichier */ 
     $ligne = fgets($fp,4096); /* On lit une ligne */ 

     /* On récupère les champs séparés par ; dans liste*/ 
     $liste = explode(";",$ligne); 

     /* On assigne les variables */ 
     $Nom_cell = $liste[0]; 
     $cmts = $liste[1]; 

     /* Ajouter un nouvel enregistrement dans la table */ 
     $query = "INSERT INTO dark_cell VALUES('$Nom_cell','$cmts')"; 
     $result= MYSQL_QUERY($query); 

     if(mysql_error()) 
     { /* Erreur dans la base de donnees, surement la table qu'il faut créer */ 
      print "Erreur dans la base de données : ".mysql_error(); 
      print "<br>Importation stoppée."; 
      exit(); 
     } 
     else /* Tout va bien */ 
     print "$Nom_cell $cmts <br>"; 
    } 

    echo "<br>Importation terminée, avec succès."; 

    /* Fermeture */ 
    fclose($fp); 
    MYSQL_CLOSE(); 

    break; 
+0

您的html表单的enctype? –

+0

缺少副本我编辑了我的代码 – user91599

+0

我会说你不读取电子表格文件,而是一个csv文件,也许你将电子表格导出为csv格式?与csv阅读功能:http://php.net/manual/en/function.str-getcsv.php – arkascha

回答

0

之前,请在您的代码编辑

$fichier=$_FILES["avatar"]["tmp_name"]; 
+0

我有通知:未定义的offse t:1在D:\ EasyPHP-5.3.3.1 \ www \ alerteurs1 \ src \ Admin \ BlogBu​​ndle \ Controller \ GestionAlerteController.php line 947 and line 947:$ cmts = $ liste [1]; – user91599

+0

如果我们爆炸,要在分隔符中放什么。 xlsx文件 – user91599

相关问题