提问人:urv_a_shi 提问时间:1/31/2016 更新时间:1/31/2016 访问量:160
检查文件是否为CSV代码,但出现错误
Check if file is CSV code is working with error
问:
我发现 Internet 上的这段代码根据我第一次使用 EOF 时的要求进行了更改。我不明白为什么它显示错误。 未定义变量:第 70 行的内容!!我知道它是未定义的,但我不知道如何解决它。
<?php
define('DB_SERVER', 'localhost');
define('DB_USER', 'root');
define('DB_PASSWORD',"");
define('DB_NAME', 'uploadcsv');
@$conn = mysql_connect (DB_SERVER, DB_USER, DB_PASSWORD);
mysql_select_db (DB_NAME,$conn);
if(!$conn){
die( "Sorry! There seems to be a problem connecting to our database.");
}
function get_file_extension($file_name) {
return end(explode('.',$file_name));
}
$error="";
function errors($error){
if (!empty($error))
{
$i = 0;
$showError="";
while ($i < count($error)){
$showError.= '<div class="msg-error">'.$error[$i].'</div>';
$i ++;}
return $showError;
}// close if empty errors
} // close function
if (isset($_POST['upfile'])){
// check feilds are not empty
if(get_file_extension($_FILES["uploaded"]["name"])!= 'csv')
{
$error[] = 'Only CSV files accepted!';
}
if (!$error){
$tot = 0;
$handle = fopen($_FILES["uploaded"]["tmp_name"], "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
for ($c=0; $c < 1; $c++) {
if($data[0] !='keywords'){
mysql_query("INSERT INTO fields(
keywords,
tags
)VALUES(
'".mysql_real_escape_string($data[0])."',
'".mysql_real_escape_string($data[1])."'
)")or die(mysql_error());
}
$tot++;}
}
fclose($handle);
$content.= "<div class='success' id='message'> CSV File Imported, $tot records added </div>";
}// end no error
}//close if isset upfile
$er = errors($error);
$content.= <<<EOF
<h3>Import CSV Data</h3>
$er
<form enctype="multipart/form-data" action="" method="post">
File:<input name="uploaded" type="file" maxlength="20" /><input type="submit" name="upfile" value="Upload File">
</form>
EOF;
echo $content;
?>
答:
0赞
Phiter
1/31/2016
#1
这是因为您没有创建变量。的第一个用法是向其添加字符串部分。$content
所以在行59
$content.= "<div class='success' id='message'> CSV File Imported, $tot records added </div>";
删除 before 应该会使变量起作用,因为您正在创建它,而不是尝试连接它。.
=
$content= "<div class='success' id='message'> CSV File Imported, $tot records added </div>";
评论
0赞
urv_a_shi
2/2/2016
嘿,实际上它部分工作..我换了$content。无论$content在代码中,代码都可以正常工作。但是以前,如果我添加了 15 个字段,它曾经给我添加了一条消息,添加了 15 个字段,现在没有显示任何消息
0赞
Phiter
2/2/2016
$content =
更改字符串值,将向实际字符串添加更多文本。$content .=
评论
mysql_*
PDO
MySQLi