在php中导入excel
值未在数据库表列中映射 这是我的代码在php中导入excel,php,csv,Php,Csv,值未在数据库表列中映射 这是我的代码 <?php if (isset($_POST["import"])) { ini_set('max_execution_time', 120); //300 seconds = 5 minutes //$filename = $_FILES['file']['name']; $file = $_FILES['file']['tmp_name']; //$ext=substr($file,strrpos($file,
<?php
if (isset($_POST["import"])) {
ini_set('max_execution_time', 120); //300 seconds = 5 minutes
//$filename = $_FILES['file']['name'];
$file = $_FILES['file']['tmp_name'];
//$ext=substr($file,strrpos($file,"."),(strlen($file)-strrpos($file,".")));
//if($ext=="csv")
$handle = fopen($file, "r");
//$c = 0;
while(($filesop = fgetcsv($handle,",")) !== false)
{
$category = mysqli_real_escape_string($filesop[0]);
$tags = mysqli_real_escape_string($filesop[1]);
$title = mysqli_real_escape_string($filesop[2]);
$url = mysqli_real_escape_string( $filesop[3]);
$description = mysqli_real_escape_string($filesop[4]);
$date = mysqli_real_escape_string($filesop[5]);
//print_r($filesop);
var_dump($filesop);
//echo $filesop[0];
$sql = "insert into report(category,tags,title,url,description,date) values ('$category','$tags','$title','$url','$description','$date')";
//$c = $c + 1;
$result=mysqli_query($conn,$sql)or die($sql."<br/><br/>".mysql_error());
//echo $sql;
//echo $filesop[1];
//echo "success";
exit();
}
//if($result){
//echo " upload success";
//ini_set('auto_detect_line_endings',FALSE);
fclose($handle);
// }
//else
// echo "cannot upload csv file";
}
mysqli_close($conn);
?>
Marketing & Customer Analytics,Trends & Product Updates,Segment Launches Segment Select,https://martechseries.com/analytics/customer-data-platforms/segment-launches-segment-select-new-program-help-companies-leverage-first-party-data-certified-partners/,"Segment, the customer data infrastructure company, launched Segment Select, a new program designed to help Channel and Technology Partners easily build and implement solutions for their customers that leverage Segment’s Customer Data Infrastructure (CDI).",2/24/2019
我的数据库示例屏幕截图
我的csv文件
<?php
if (isset($_POST["import"])) {
ini_set('max_execution_time', 120); //300 seconds = 5 minutes
//$filename = $_FILES['file']['name'];
$file = $_FILES['file']['tmp_name'];
//$ext=substr($file,strrpos($file,"."),(strlen($file)-strrpos($file,".")));
//if($ext=="csv")
$handle = fopen($file, "r");
//$c = 0;
while(($filesop = fgetcsv($handle,",")) !== false)
{
$category = mysqli_real_escape_string($filesop[0]);
$tags = mysqli_real_escape_string($filesop[1]);
$title = mysqli_real_escape_string($filesop[2]);
$url = mysqli_real_escape_string( $filesop[3]);
$description = mysqli_real_escape_string($filesop[4]);
$date = mysqli_real_escape_string($filesop[5]);
//print_r($filesop);
var_dump($filesop);
//echo $filesop[0];
$sql = "insert into report(category,tags,title,url,description,date) values ('$category','$tags','$title','$url','$description','$date')";
//$c = $c + 1;
$result=mysqli_query($conn,$sql)or die($sql."<br/><br/>".mysql_error());
//echo $sql;
//echo $filesop[1];
//echo "success";
exit();
}
//if($result){
//echo " upload success";
//ini_set('auto_detect_line_endings',FALSE);
fclose($handle);
// }
//else
// echo "cannot upload csv file";
}
mysqli_close($conn);
?>
Marketing & Customer Analytics,Trends & Product Updates,Segment Launches Segment Select,https://martechseries.com/analytics/customer-data-platforms/segment-launches-segment-select-new-program-help-companies-leverage-first-party-data-certified-partners/,"Segment, the customer data infrastructure company, launched Segment Select, a new program designed to help Channel and Technology Partners easily build and implement solutions for their customers that leverage Segment’s Customer Data Infrastructure (CDI).",2/24/2019
代码
mysqli\u real\u escape\u string
中的问题是,函数中缺少参数。您需要在mysqli\u real\u escape\u string
函数中传递数据库对象。
例如:
您的代码:$category=mysqli\u real\u escape\u string($filesop[0])代码>
新代码:$category=mysqli\u real\u escape\u字符串($conn,$filesop[0])代码>
下面还有一些有用的代码,请检查
while(($filesop = fgetcsv($handle,",")) !== false)
{
$category = mysqli_real_escape_string($conn, $filesop[0]);
$tags = mysqli_real_escape_string($conn, $filesop[1]);
$title = mysqli_real_escape_string($conn, $filesop[2]);
$url = mysqli_real_escape_string($conn, $filesop[3]);
$description = mysqli_real_escape_string($conn, $filesop[4]);
$date = mysqli_real_escape_string($conn, $filesop[5]);
$sql = "insert into report(category,tags,title,url,description,date) values ('$category','$tags','$title','$url','$description','$date')";
$result=mysqli_query($conn,$sql)or die($sql."<br/><br/>".mysqli_error($conn));
exit();
}
while($filesop=fgetcsv($handle,“,”)!==false)
{
$category=mysqli\u real\u escape\u字符串($conn,$filesop[0]);
$tags=mysqli\u real\u escape\u字符串($conn,$filesop[1]);
$title=mysqli\u real\u escape\u字符串($conn,$filesop[2]);
$url=mysqli\u real\u escape\u字符串($conn,$filesop[3]);
$description=mysqli\u real\u escape\u字符串($conn,$filesop[4]);
$date=mysqli\u real\u escape\u字符串($conn,$filesop[5]);
$sql=“在报告(类别、标记、标题、url、说明、日期)中插入值(“$category”、“$tags”、“$title”、“$url”、“$description”、“$date”)”;
$result=mysqli_query($conn,$sql)或die($sql。“
”。mysqli_error($conn));
退出();
}
代码中的问题mysqli\u real\u escape\u string
,函数中缺少参数。您需要在mysqli\u real\u escape\u string
函数中传递数据库对象。
例如:
您的代码:$category=mysqli\u real\u escape\u string($filesop[0])代码>
新代码:$category=mysqli\u real\u escape\u字符串($conn,$filesop[0])代码>
下面还有一些有用的代码,请检查
while(($filesop = fgetcsv($handle,",")) !== false)
{
$category = mysqli_real_escape_string($conn, $filesop[0]);
$tags = mysqli_real_escape_string($conn, $filesop[1]);
$title = mysqli_real_escape_string($conn, $filesop[2]);
$url = mysqli_real_escape_string($conn, $filesop[3]);
$description = mysqli_real_escape_string($conn, $filesop[4]);
$date = mysqli_real_escape_string($conn, $filesop[5]);
$sql = "insert into report(category,tags,title,url,description,date) values ('$category','$tags','$title','$url','$description','$date')";
$result=mysqli_query($conn,$sql)or die($sql."<br/><br/>".mysqli_error($conn));
exit();
}
while($filesop=fgetcsv($handle,“,”)!==false)
{
$category=mysqli\u real\u escape\u字符串($conn,$filesop[0]);
$tags=mysqli\u real\u escape\u字符串($conn,$filesop[1]);
$title=mysqli\u real\u escape\u字符串($conn,$filesop[2]);
$url=mysqli\u real\u escape\u字符串($conn,$filesop[3]);
$description=mysqli\u real\u escape\u字符串($conn,$filesop[4]);
$date=mysqli\u real\u escape\u字符串($conn,$filesop[5]);
$sql=“在报告(类别、标记、标题、url、说明、日期)中插入值(“$category”、“$tags”、“$title”、“$url”、“$description”、“$date”)”;
$result=mysqli_query($conn,$sql)或die($sql。“
”。mysqli_error($conn));
退出();
}
您面临的错误是什么?显示excel文件的数据我的表中有id(自动增量)和日期值0000-00-00,其他列在导入后仍为空。建议您先打印数组,然后查看每行附加了哪些键。在您的语句之后,请使用以下命令:echo'
<代码>模具()代码>该<代码>''
将使您的数组看起来很漂亮,以便您可以通过它进行读取。并使用一个库(您要求excel导入,并且您在此处使用csv导入)使用此库(不难使用)[您面临的错误是什么?显示excel文件的数据我有id(自动增量)和我的表中的日期值0000-00-00,其他列在导入后仍为空。我建议您先打印数组,然后查看每行附加了哪些键。在while
语句之后使用以下命令:echo'
;die()
这个'';
会让你的数组看起来很漂亮,这样你就可以通过它来阅读。使用一个库(你要求excel导入,你在这里使用csv导入)使用这个(不难使用它)[我已经试过了。但是它不起作用。var_dump($filesop);返回null。有什么错误?请在脚本顶部添加此代码以检查错误。ini_集('display_errors',1);ini_集('display_startup_errors',1);错误报告(E_ALL);ini_集('display_errors',1)
错误报告(E_ALL)
注意:未定义的索引:第196行的D:\xamppp\htdocs\rev\lumino\importexcel.php中的文件
警告:fopen():第200行的D:\xamppp\htdocs\rev\lumino\importexcel.php中的文件名不能为空
警告:fgetcsv()参数1应为resource,布尔值在第202行的D:\xamppp\htdocs\rev\lumino\importexcel.php中给出
我遇到了这些错误请在问题中显示文件上载代码或添加文件上载代码,以便轻松给出正确答案。我已尝试过。但它不起作用。var\u dump($filesop);返回null。有什么错误?请在脚本顶部添加此代码以检查错误。ini_集('display_errors',1);ini_集('display_startup_errors',1);错误报告(E_ALL);ini_集('display_errors',1)
错误报告(E_ALL)
注意:未定义的索引:第196行的D:\xamppp\htdocs\rev\lumino\importexcel.php中的文件
警告:fopen():第200行的D:\xamppp\htdocs\rev\lumino\importexcel.php中的文件名不能为空
警告:fgetcsv()参数1应为resource,布尔值在第202行的D:\xamppp\htdocs\rev\lumino\importexcel.php中给出
我遇到了这些错误请在问题中显示文件上载代码或添加文件上载代码,以便轻松给出正确答案。