php将excel的数据提交到mysql
或者提供一段插入的代码也可。
回复讨论(解决方案)
权限不够?
php.ini 中指定 upload_tmp_dir 到合适的目录
插入MYSQL的代码如下:
error_reporting(E_ALL ^ E_NOTICE);
require_once 'conn.php';
mysql_query("SET NAMES 'gbk'");
if($_POST){
$Import_TmpFile = $_FILES['file']['tmp_name'];
require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('gbk');
$data->read($Import_TmpFile);
$array =array();
for ($i = 1; $i sheets[0]['numRows']; $i++) {
for ($j = 1; $j sheets[0]['numCols']; $j++) {
$array[$i][$j] = $data->sheets[0]['cells'][$i][$j];
}
}
sava_data($array);
}
function sava_data($array){
$count =0;
$total =0;
foreach( $array as $tmp){
$Isql = "Select t_id from test where t_id='".$tmp[1]."'";
$sql = "Insert into test (t_title,t_date) value(";
$sql.="'".$tmp[1]."','".$tmp[2]."')";
if(! mysql_num_rows(mysql_query($Isql) )){
if( mysql_query($sql) ){
$count++;
}
}
$total++;
}
echo "";
}
function TtoD($text){
$jd1900 = GregorianToJD(1, 1, 1900)-2;
$myJd = $text+$jd1900;
$myDate = JDToGregorian($myJd);
$myDate = explode('/',$myDate);
$myDateStr = str_pad($myDate[2],4,'0', STR_PAD_LEFT)."-".str_pad($myDate[0],2,'0', STR_PAD_LEFT)."-".str_pad($myDate[1],2,'0', STR_PAD_LEFT);
return $myDateStr;
}
?>
没出现什么错误,但就是无法插入数据,帮忙看下是什么原因??
直接拼sql出来
自己一步一步调试看程序进入哪里了
if(! mysql_num_rows(mysql_query($Isql) )){
if( mysql_query($sql) ){ //如果进入这里了,则可以用 echo mysql_error(); 查看出什么错了
$count++;
}
上一篇: yii框架,增删改查,sql