Я загружаю файл, а затем пытаюсь использовать fgetcsv, чтобы что-то делать с ним.Использование fopen на загружаемом файле с php
Это мой сценарий ниже. Все работало нормально, прежде чем добавить порции загрузки файлов. Теперь он не показывает никаких ошибок, просто не отображая загруженные данные.
Im получать мой «файл загружен» уведомление, и файл сохранения правильно, но счетчик числа записей показывает 0.
if(isset($_FILES[csvgo])){
$tmp = $_FILES[csvgo][tmp_name];
$name = "temp.csv";
$tempdir = "csvtemp/";
if(move_uploaded_file($tmp, $tempdir.$name)){ echo "file uploaded<br>"; }
$csvfile = $tempdir.$name;
$fh = fopen($csvfile, 'r');
$headers = fgetcsv($fh);
$data = array();
while (! feof($fh))
{
$row = fgetcsv($fh);
if (!empty($row))
{
$obj = new stdClass;
foreach ($row as $i => $value)
{
$key = $headers[$i];
$obj->$key = $value;
}
$data[] = $obj;
}
}
fclose($fh);
$c=0;
foreach($data AS $key){
$c++;
$phone = $key->PHONE;
$fax = $key->Fax;
$email = $key->Email;
// do things with the data here
}
echo "$c entries <br>";
}
Если вы вообще не получаете никаких ошибок, вы не видите все ошибки. Например, $ _FILES [csvgo] должен генерировать ошибку уровня E_NOTICE, потому что 'csvgo' не является константой, и у вас должны быть кавычки вокруг него. Вы должны убедиться, что у вас есть error_reporting (E_ALL); и ini_set ('display_errors', '1'); где-то в вашем коде. – Rithiur