私は多次元配列と単一配列からなるフォームを持っています。多次元配列は、ユーザーがボタンをクリックしたときに動的に生成されるので、別のジョブや別の程度のようなフィールドを追加することができます。PHP多次元配列からCSV
多次元配列の場合は、データを収集していることを確認するためにテストしたかったのです。教育用インプットコレクションprint_r($_POST["educationHistory"]
で以下を実行して、アレイをテストし、正しくロギングしていることを確認してください。それは次のように配列内容を出力します。
Array ([0] => WLU [1] => Math [2] => 2016)
そして、後でログに記録される配列ごとに、数値が変化します。
多次元配列を.CSVに保存しようとすると、かなり異なってきます。
私は上記のprint_rレイアウトのスタイルをプッシュしようとしています(Array ([0] => WLU [1] => Math [2] => 2016))
私はすべてのフォームフィールドを出力していますが、運がないです。
このようなことは可能ですか?
このような配列の値を印刷することができたのは、上記の例です。WLU Math 2016ですが、2または3のエントリがあると混乱することがあります。
アドバイスはありますか?ここで
は完全なコードです:
PHP
<?php
//page one inputs
$firstName = $_POST["firstName"];
$lastName = $_POST["lastName"];
$homeAddress = $_POST["homeAddress"];
$homeAddressTwo = $_POST["homeAddressTwo"];
$city = $_POST["city"];
$province = $_POST["province"];
$postalCode = $_POST["postalCode"];
$homePhone = $_POST["homePhone"];
$personalEmail = $_POST["personalEmail"];
$confirmEmail = $_POST["confirmEmail"];
$oectaNumber = $_POST["oectaNumber"];
$memberStatus = $_POST["memberStatus"];
$teacherTraining = $_POST["teacherTraining"];
$teachingYears = $_POST["teachingYears"];
$employmentHistory = $_POST["employmentHistory"];
$employmentHistoryValues = "";
foreach($employmentHistory as $value)
{
$employmentHistoryValues .= $value . " ||| ";
}
$nonSchoolEmployer = $_POST["nonSchoolEmployer"];
$nonSchoolEmployerValues = "";
foreach($nonSchoolEmployer as $employerValue)
{
$nonSchoolEmployerValues .= $employerValue . " ||| ";
}
$educationHistoryValues = "";
foreach(print_r($_POST["educationHistory"]) as $educationValue)
{
$educationHistoryValues .= $educationValue;
}
$csvdata = $firstName . ", " . $lastName . ", " . $homeAddress . ", " . $homeAddressTwo . ", " . $city . ", " . $province . ", " . $postalCode . ", " . $homePhone . ", " . $personalEmail . ", " . $confirmEmail . ", " . $oectaNumber . ", " . $memberStatus . ", " . $teacherTraining . ", " . $teachingYears . "," . $employmentHistoryValues . "," . $nonSchoolEmployerValues . "," . $educationHistoryValues;
$fp = fopen("formdata.csv", "a");
if($fp)
{
fwrite($fp, $csvdata . "\n");
fclose($fp);
}
?>
HTML:
<div id="educationHistory" name="educationHistory[]">
<input type="text" class="three-lines" name="educationHistory[]" id="educationInstitution_1" placeholder="Institution" onblur="this.placeholder='Institution'" onfocus="this.placeholder=''" onkeyup="checkPage2()" />
<input type="text" class="three-lines" name="educationHistory[]" id="degreeFromInstitution_1" placeholder="Degree/Diploma" onblur="this.placeholder='Degree/Diploma'" onfocus="this.placeholder=''" onkeyup="checkPage2()" />
<input type="date" class="three-lines" name="educationHistory[]" id="educationalDates_1" />
<input type="button" value="+" onclick="addEducation()" />
</div><!--end educationHistory Div -->
</div><!--end of education div-->
さてあなたは次に – RiggsFolly
を処理しているどのようなデータたちを示すことから始めますが、出力は – RiggsFolly
になりたいどのような形式私たちを見ますその後、あなたは何時のレートを求めるのですか? – RiggsFolly