检查文件是否为CSV代码,但有错误


Check if file is CSV code is working with error

我发现互联网上的这段代码根据我的要求第一次使用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;
?>

这是因为您没有创建变量。$content的第一个用法是向其添加字符串部分。

所以在第 59

$content.= "<div class='success' id='message'> CSV File Imported, $tot records added </div>";

=之前删除.应该会使变量正常工作,因为您正在创建它,而不是尝试连接它。

$content= "<div class='success' id='message'> CSV File Imported, $tot records added </div>";