2013-07-22 63 views
0

我想從excel文件導入數據到phpmyadmin。我使用庫excel_reader2。當我點擊導入按鈕時沒有錯誤消息,但所有數據都無法導入。沒有錯誤消息,但所有數據都無法導入

這裏是我的代碼

<?php 

include "excel_reader2.php"; 

mysql_connect("dbHost", "dbUser", "dbPass"); 
mysql_select_db("dbname"); 

$data = new Spreadsheet_Excel_Reader($_FILES['userfile']['tmp_name']); 

$baris = $data->rowcount($sheet_index=0); 

$success = 0; 
$fail = 0; 

for ($i=2; $i<=$row; $i++) 
{ 
$id = $id->val($i, 1); 
$name = $name->val($i, 2); 
$address = $address->val($i, 3); 

$query = "INSERT INTO student VALUES ('$id', '$name', '$address')"; 
$result = mysql_query($query); 

if ($result) $success++; 
else $fail++; 
} 

echo "<h3>Import data finished</h3>"; 
echo "<p>Sum of success data : ".$success."<br>"; 
echo "Sum of fail data : ".$fail."</p>"; 
?> 

,這裏是結果在我的瀏覽

數據導入完畢 求和成功的數據:故障數據的0 總和:100

請,有人幫助我..非常感謝..

+0

請嘗試一些基本的調試。將echo語句放入以打印出插入語句以查看正在執行的內容。使用mysql_error($ query)打印數據庫錯誤,並使用PDO爲您的數據庫訪問進行研究,然後我們可以看看如何幫助您。 –

+0

來自Mihai @Mihai:表格學生是否只有3列?列ID是否自動增加? –

+0

抱歉@TobyAllen我不明白你的意思,你可以給我一步嗎? – dyn

回答

0

也許你是錯誤的,當你從Excel中得到你的數據。您可以嘗試:

$id = $data->val($i, 1); 
$name = $data->val($i, 2); 
$address = $data->val($i, 3); 

你開始從i = 2和VAR巴里斯從不使用

+0

仍然會導致我的瀏覽器(我的文章).. 我從2開始,因爲1是excel文件中的列名 – dyn

+0

我正在討論用'$ data->替換'$ id->'的出現。當你從$ data得到結果時,id(和name和address)肯定沒有val函數,因爲它們當然是字符串...... – orion78fr

+1

'$ row'在循環之前甚至沒有初始化! – orion78fr

相關問題