テキスト入力とともにフォームに複数の画像があります。画像にはリンクを含める必要があり、選択したリンクは POST 形式で送信する必要があります (テキスト入力フィールドでデータをキャプチャできるようにするため)。画像のソースは動的です (そのため、type=button の背景を css ファイルで設定することはできません)。次のコードは実際のコードではなく、単なる例です (基本的なエラーはご容赦ください)。私の考えは<input type=image>
、各画像と対応する非表示フィールドを使用して、各画像のリンクを保存することです。私はこれがうまくいくことを知っています。私の質問は、より良い、またはより標準的な方法があるかどうかです。私はそれ<input type=image>
がイメージマップ用であることを知っており、利用可能なものを使用/悪用しているだけですが、より良い方法は考えられません. ご意見ありがとうございます。
<form method=post action=<?php echo $_SERVER['PHP_SELF'] ?>?dosomething=true enctype='multipart/form-data'>
<?php
$i=0;
foreach ($files as $file){
?>
<input type="text" name='user-input<?php echo $i ?>'>
<input type="image" name='img<?php echo $i ?>' src='<?php echo $file ?>'>
<input type="hidden" name='img<?php echo $i ?>url' value='<?php echo $file ?>'>
<?php
}
?>
フォームが読み込まれたら、投稿の値を確認します。
foreach ($_POST as $key => $val){
if (substr($key,0,3)=="img"){
$akey = explode("_",$key);
$url = $_POST[$akey[0] . "url"];
// do some processing with user input before leaving form...
header("Location: " . $url);
exit;
}
}