HTML
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="csv" value="" />
<input type="submit" name="submit" value="Save" /></form>
</form>
。とecho json_encode($ csv)です。私は値を得るのが難しいです。私が試したことは、私にnullを与えることでした。
<?php
$csv = array();
// check there are no errors
if($_FILES['csv']['error'] == 0){
$name = $_FILES['csv']['name'];
$ext = strtolower(end(explode('.', $_FILES['csv']['name'])));
$type = $_FILES['csv']['type'];
$tmpName = $_FILES['csv']['tmp_name'];
// check the file is a csv
if($ext === 'csv'){
if(($handle = fopen($tmpName, 'r')) !== FALSE) {
// necessary if a large csv file
set_time_limit(0);
while(($data = fgetcsv($handle, 10000, ',')) !== FALSE) {
// number of fields in the csv
$col_count = count($data);
// get the values from the csv
}
array_walk($csv, function(&$a) use ($csv) {
$a = array_combine($csv[0], $a);
});
array_shift($csv); # remove column header
header('Content-Type: application/json');
echo json_encode($csv); //display array
fclose($handle);
}
}
}
?>
サンプルCSV
LastName,FirstName,MAT251-Calc-I ,MAT252-Calc-II,MAT320-DiscreteMath,CPS210-CompSci-I,CPS310-CompSci-II,CPS315-CompSci-III,CPS352-OOP,CPS330-Assembly.Arch.,CPS353-SoftEng,CPS415-Disc.Cont.Algorithms,CPS340-Op.Sys,CPS425-Lang.Processing,CPS493-Elect-1,CPS493-Projects,EGC230-Dig.Logic,EGC208-Dig.Logic.Lab,SCIENCE-I,SCIENCE-II
Rocha, Cara I.,A,A,A,C-,,,,,,,,,,,,,,
Hamilton, Mufutau N.,B,B,B,A-,,,,,,,,,,,,,,
Castro, Chiquita A.,B,B,C ,C ,,,,,,,,,,,,,,
Juarez, Edward Y.,C+,B,B,C,A,C+,B,B,C,A,C+,B,B,C,A,C+,A,B
Erickson, Norman H.,C-,B-,C+,B,B,B,,C-,B,,,,,,,B,,
Downs, Moana C.,A,C+,B,C-,A,C-,,A-,B+,,,,,,,,,
私はそれを試してみましたが、私はまだ[[ヌル]] –
'のerror_reporting(E_ALL)を追加することで、あなたのPHPコードにエラーレポートを有効に取得しています。 ini_set( 'display_errors'、 '1'); 'スクリプトの先頭には何が返されますか? –
私がしようとしているのは、csvファイルをアップロードすることです。これは、サンプルcsvと同じ構造を持つ任意のcsvファイルです。 –