php 上级调用函数,如何从另一个PHP文件调用函数?

简而言之:我将多个excel文件上传到/ var / tmp,然后将它们转换为.csv(2个用于.xls和.xlsx的不同转换器).结果文件result.csv应该插入数据库.直到我们决定允许同时上传多个文件(将多个属性添加到html输入标签),所有的工作都奏效了.问题:数据未插入表中

// database connection goes here;

include 'convertt2a.php';

if (isset($_POST["submit"])) {

$updir = "/var/tmp/result.xlsx";

$n= count($_FILES['rawexcel']['name']);

for ($i=0; $i

$upfile = $updir.basename($_FILES['rawexcel']['name'][$i]);

$ext = pathinfo ($_FILES['rawexcel']['name'][$i], PATHINFO_EXTENSION);

if(is_uploaded_file ($_FILES ["rawexcel"]["tmp_name"][$i]))

{

move_uploaded_file ($_FILES["rawexcel"]["tmp_name"][$i], $updir);

if ($ext == 'xlsx' ) { exec("/usr/local/bin/cnvt /var/tmp/result.xlsx /var/tmp/result.csv "); } else

if ($ext == 'xls' ) { exec("/usr/local/bin/xls2csv -x /var/tmp/result.xls* -b WINDOWS-1251 -c /var/tmp/result.csv -a UTF-8"); }

echo "File successfully uploaded and converted to .csv ";

}

else {

echo "error uploading file ".$upfile;}

if (isset($_POST['provider'])) {

//select action to perform on case of different providers

if ($_POST['provider']=='tele2altel'){echo t2a("tele2");}

}

echo "cycle ".$i."ended here; ";

}}

else {echo "not isset post method";}

?>

t2a功能:

function t2a ($string){

//opening .csv file, inserting into table in SAMPLEBANK TELE2ALTEL

$row =0;

if (($handle = fopen("/var/tmp/result.csv", "r"))!==FALSE){

while (($data = fgetcsv($handle, 1000, ","))!==FALSE) {

$row ++;

//we got data in $data[$i] array

if ($row==4) {$idb=$data[2];}

if ($row >6) {

$da=$data[0]; $imei = $data[1]; $ab=$data[2];$ty = NULL;

$du=$data[6]; $op = $data[3];$dir =$data[5];

$num= strlen($dir);

if ($num>=28) {$ty= $dir; $dir=NULL;}

if ($ab!==''){

$sql= "INSERT INTO tele2altel(Abonent,Opponent, Type, Data, Duration, idBase, IMEI,direction)

values ('$ab','$op','$ty','$da','$du', '$idb','$imei','$dir')";

$res = mysqli_query($conn, $sql);}

}}

fclose($handle);

} else {echo "unable to read file";}

$s = "Successfully inserted into DB";

return $s;

}

我的输出:

文件成功上传并转换为.csv

循环我在这里结束;

成功插入数据库i次(要上传的文件数)

我已经检查了seapartely .csv文件,它们已正确转换.因此,错误在于t2a函数.我将不胜感激.

解决方法:

在其中包含另一个文件.

标签:multiple-files,csv,mysql,php,function

来源: https://codeday.me/bug/20191111/2017620.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值