Web 開発では、ユーザーが送信した情報の保存、レポート ファイルの生成、データのバックアップなど、フォーム データのエクスポートは一般的な機能シナリオです。この記事では、PHP を使用してフォーム データを CSV、JSON、XML ファイルなどの複数の形式にエクスポートする方法、またはデータベースに直接書き込む方法を紹介します。
まず、ユーザー入力データを収集するには、単純な HTML フォームが必要です。
<form action="export.php" method="post"> <input type="text" name="name" placeholder="名前前"> <input type="email" name="email" placeholder="電子メール"> <input type="submit" value="出力"> </form>
import.phpファイルで、 $_POST を使用して、ユーザーが送信したフォームのコンテンツを取得します。
$name = $_POST['名前前']; $email = $_POST['email'];
実際のニーズに応じて、さまざまなデータ エクスポート方法を選択できます。
PHP の組み込みファイル書き込み機能を使用して、CSV ファイルを生成します。
$fh = fopen('export.csv', 'w'); fputcsv($fh, array('名前前', 'メール')); fputcsv($fh, array($name, $email)); fclose($fh);
JSON は、フロントエンドとバックエンドのデータ交換に適した軽量のデータ形式です。
$data = array('name' => $name, 'email' => $email); $json = json_encode($data); file_put_contents('export.json', $json);
データを XML 形式にエクスポートする必要がある場合は、 SimpleXMLElementクラスを使用できます。
$xml = 新しいしい SimpleXMLElement('<data></data> '); $xml->addChild('name', $name); $xml->addChild('email', $email); $xml->asXML('export.xml');
データを長期間保存したい場合は、フォームのコンテンツをデータベースに書き込むことを選択できます。
$サーバー名前 = "ローカルホスト";
$ユーザー名前 = "ルート";
$パスワード = "";
$database = "フォームデータ";
$conn = new mysqli($servername, $username, $password, $database);
if ($conn->connect_error) {
die("接続に失敗しました: " . $conn->connect_error);
}
$sql = "ユーザー (名前前、電子メール) の値 (?, ?) に挿入";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ss", $name, $email);
$stmt->execute();
$conn->close();生成されたファイルをユーザーにダウンロードしてもらいたい場合は、応答ヘッダーを設定することでこれを行うことができます。
header('Content-Type: application/csv'); header('Content-Disposition:attachment; filename=export.csv'); readfile('export.csv');
以上の方法により、PHPでフォームデータのエクスポート機能を柔軟に実装することができます。 CSV、JSON、XML ファイルを生成する場合でも、データをデータベースに保存する場合でも、プロジェクトのニーズに応じて自由に選択できます。これらのスキルを習得すると、Web データの処理とエクスポートの効率が大幅に向上します。