質問

私のデータは2回出力されています、そして私はなぜ確かにされません。1行に1つのFNAMEとLNAMEにする必要があります。

<?php

$row = 1;
if (($handle = fopen("nameList1.txt", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, "    ")) !== FALSE) {
        $num = count($data);
        //$result = explode($data);
        echo "<br />\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
                //echo $data[$c];
                echo $data[0];
                echo " ";
                echo $data[1];
        }
    }
    fclose($handle);
}
.

** * ** 出力 ** * ** * ** * **

Nancy AlvordNancy Alvord
Lucy HadacLucy Hadac
Laura LundgrenLaura Lundgren
Judy PigottJudy Pigott
Thomas BayleyThomas Bayley
Barbara BrownBarbara Brown
Aaron DixonAaron Dixon
Jennifer HadlockJennifer Hadlock
Molly AdolfsonMolly Adolfson
Susan AnsteadSusan Anstead
Shannon BraddockShannon Braddock
Isa D’ArleansIsa D’Arleans
Elizabeth DavisElizabeth Davis
William DonnellyWilliam Donnelly
.

役に立ちましたか?

解決

for ($c=0; $c < $num; $c++) {
    echo $data[0] . " " . $data[1];
}
.

行ごとに2つの異なるデータ(fname、lname)$ numは常に2です。

SO 2回、$ DATA [0]&$ DATA [1];)

あなたはたくさんしなければならない:

echo $data[0];
echo $data[0];
.

または絶対にforステートメントを使用したい場合:

for ($c=0; $c < $num; $c++) {
    echo $data[$c] . " ";
}
.

他のヒント

これを試してください

$row = 1;
if (($handle = fopen("nameList1.txt", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, "    ")) !== FALSE) {
    $num = count($data);
    //$result = explode($data);
    echo "<br />\n";
    $row++;
    echo $data[0];
    echo " ";
    echo $data[1];
}
fclose($handle);
}
.

これを試してみてください:

$file = $_FILES[csv][tmp_name]; 
    $handle = fopen($file,"r"); 

    //loop through the csv file and insert into database 
    do { 
        if ($data[0]) { 
            $record['contact_email'] = $data[2];
            $record['subject'] = $_REQUEST['subject'];
            $record['message'] = $_REQUEST['message'];
            $record['status'] = 0;

            $oAdminEmail->insertQueEmail($record);
            } 
    } while ($data = fgetcsv($handle,1000,",","'")); 
.

whileループ内のforループは0から始まっているため、1から0までの場合は1から0になる必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top