プロトタイプのeコマースWebサイトを作成中ですが、訪問者の名前をフラットファイルデータベース「購入」に保存するのに問題があります。
<body>
<h1>Confirm Selection</h1>
<form action="write.php" method="post">
<table>
<tr><th></th><th></th><th></th><th>Price</th></tr>
<?php
$visitor = $_POST['visitor'];
echo "<p>".'Hello '."<b>".$visitor."</b> ".'please confirm your purchase(s) below.'."</p>";
?>
</table>
上記の確認ファイルは、ユーザーが前のフォームで名前として入力した$ visitorという変数を作成します。次に、この変数を取得し、ユーザーが選択を確認したら、それを「write.php」に渡します。処理され、購入ファイルに書き込まれるファイル。
私の「write.php」ファイルの一部を以下に示します。
<?php
if (!($data = file('items.txt'))) {
echo 'ERROR: Failed to open file! </body></html>';
exit;
}
$now = date(' d/m/y H:i:s ');
foreach ($_POST as $varname => $varvalue) {
foreach ($data as $thedata) {
list($partno, $name, $description, $price, $image) = explode('|', $thedata);
if ($partno == $varname) {
$myFile = "purchases.txt";
$fh = fopen($myFile, 'a') or die("can't open file\n");
$content = $now . "|" . $partno . "|" . $name . "|" . $price . "\n";
if (!(fwrite($fh, $content))) {
echo "<p>ERROR: Cannot Write ($myFile)\n</p>";
exit;
} else {
echo "<p>Transaction Completed!</p>";
fclose($fh);
}
}
}
}
?>