これを行う方法を2日間探しました。私はこのフォームを持っています:
<form action="preview.php" method="post">
In the city of <input name="city" type="text" /> at <input name="days" type="text" /> days of <input name="month" type="text" /> gathered the following people: <input name="name1" type="text" /> and <input name="name2" type="text" /> with the objective of...
<button type="submit">Preview</button></form>
そして、preview.php には次のものが必要です。
In the city of <?php echo $_POST['city'];?> at <?php echo $_POST['days'];?> days of <?php echo $_POST['month'];?> gathered the following people: <?php echo $_POST['name1'];?> and <?php echo $_POST['name2'];?> with the objective of...
問題は、フォームが CMS 経由で作成されるため、入力の名前がどうなるかを知る方法がありません。<input name="city" type="text" />
たとえば、動的に置き換える方法はあり<?php echo $_POST['city'];?>
ますか? 私が心に留めていることがいくつかありますが、私はPHPが初めてなので、それらを実装する方法がわかりません。
たぶんpreg_replace
できるかもしれませんが、入力の名前が変更されないようにする方法がわかりません。または、たとえば<input name="data[]" type="text" />
次のような配列を使用することもできます。
for($i=0;"";$i++){
if( isset( $_POST["data{$i}"] )) {
$string = $form;
$patterns = '<input name="data[]" type="text" />';
$replacement = $_POST["data{$i};
preg_replace($patterns, $replacements, $string);
}
}
私はここで本当に迷っています。誰かが私を助けてくれれば幸いです。
PS: 私は英語を母国語としないので、間違いがありましたら申し訳ありません。
更新: ユーザーは、データベースに保存される CMS でさまざまなフォームを作成できます。次に、彼はどれを埋めたいかを選択できます。入力したら、プレビューして PDF として保存できます。preview.php のフォームには同じテキストが含まれますが、入力の代わりにユーザーが入力した値が含まれます。