phpでcsv出力を試みています。
①名前を書き込む
②追加書き込みモード(a)でそれぞれの名前の横に情報を書き込む
②の追加書き込みモードの時に1行目、2列目から書き込む方法はないものでしょうか?
完成イメージ
https://gyazo.com/d7801185eb00a9788a42787410bf3dbc
現在の状態
https://gyazo.com/e234954829af0b534858759fa625c63d
コード
$allNames=$allName; //名前を書き込み $data1 = mb_convert_encoding($allNames, 'SJIS-win', 'UTF-8'); $f=fopen("ichiran.csv","w"); fputs($f,$data1); fclose($f); $allDatas=$days."\n".$all; //それぞれの情報を追加書き込み $data2 = mb_convert_encoding($allsDatas, 'SJIS-win', 'UTF-8'); $f=fopen("ichiran.csv","a"); fputs($f,$data2); fclose($f); print("<a href='ichiran.csv' download>ここからダウンロード</a>");
何日も解決できておらず、困っております。
宜しくお願い致します。
$year = $_POST[year]; $month = $_POST[month]; $day = $_POST[day]; date_default_timezone_set('Asia/Tokyo'); define('TERM', $during);//1週間表示 $date_data=array(); $date = date($year."-".$month."-".$day);//今日の日付 //$date = date("2021-02-01");//今日の日付 print("名前"); for( $i=0; $i<TERM; $i++){ $timestamp = strtotime($i.' day ' . $date); $a=date('Y/m/d', $timestamp).",,,,"; print($a); $days=$days.$a; //$days=$days.$a."\n"; $date_data[] = date("Y-m-d", $timestamp); } print("<br>"); // ---------------------------------------------------------------------- $db=mysqli_connect("localhost","kunren_rensyu","2vFz44k@","admin_kunren"); //データベース名、ユーザ名、パスワード、利用するデータベース mysqli_set_charset($db,"utf8"); //文字化け対策 //print("接続完了"); /*名前取り出し*/ $query = "select no,sei,mei from suga_player where del_flg = 0"; $result = mysqli_query($db,$query) or die("クエリエラー".mysqli_error($db)); while($row = mysqli_fetch_array($result)) { $c=$row[sei].$row[mei].","; $allName=$allName.",".$c."\n"; print($allName); /*$all='';*/ for( $i=0; $i<TERM; $i++){ //名前IDと登録日が一致したデータ取り出し $query2 = "select student_no,torokubi,taion,reason,shukketu,other,hurigana from suga_shukketu where torokubi='".$date_data[$i]."'and student_no =".$row[0]." order by hurigana asc"; $result2 = mysqli_query($db,$query2) or die("クエリエラー".mysqli_error($db)); $row2 =mysqli_fetch_array($result2); $n=$i + 1; if($row2 == false) { $b=" , , , ,"; //$all=$all.$b."\n"; if(($n % $during) == 0){ $all=$all.$b."\n"; print($b); }else{ $all=$all.$b; print($b); } } else { if(($n % $during) == 0){ $br="\n"; $b=$row2[3].",".$row2[2].",".$row2[4].",".$row2[5].","; print($b); $all=$all.$b.$br; //$all=$all.$b."\n"; }else{ $b=$row2[3].",".$row2[2].",".$row2[4].",".$row2[5].","; print($b); $all=$all.$b; } } } print("<br>"); } //$alls='名前,'.$days."\n".$sei_mei.",".$all."\n"; /*$alls=$allName.$days."\n".$all; $data = mb_convert_encoding($alls, 'SJIS-win', 'UTF-8'); $f=fopen("ichiran.csv","w"); fputs($f,$data); fclose($f);*/ $allNames="\n".$allName; //名前を書き込み $data1 = mb_convert_encoding($allNames, 'SJIS-win', 'UTF-8'); $f=fopen("ichiran.csv","w"); fputs($f,$data1); fclose($f); $allDatas=$days."\n".$all; //それぞれの情報を追加書き込み $data2 = mb_convert_encoding($allDatas, 'SJIS-win', 'UTF-8'); $f=fopen("ichiran.csv","a"); fputs($f,$data2); fclose($f); print("<a href='ichiran.csv' download>ここからダウンロード</a>"); コード
回答2件
あなたの回答
tips
プレビュー