1

ユーザーが必要に応じてフィールドを追加できるフォームがあります。ユーザーがこれを行うと、さらに 2 つのフィールドが表示されます (1 つはリンク テキスト用、もう 1 つはリンク アドレス用)。入力名に数字を追加するためにJavaScriptを使用しています(例:newLinkTitle1+ newLinkAddress1newLinkTitle2+newLinkAddress2など)。

  <input type="text" value="" name="newLinkTitle" size="50" />
  <input type="text" value="http://" name="newLinkAddress" size="50" />  

プレフィックスを含む POST 配列に変数があるかどうかを確認し、それに関連付けられている変数を取得して、それらをデータベースに追加したいと考えていますnewLinkTitlenewLinkAdress

現在、私はこれを持っています:

foreach ((strpos($_POST, 'newLinkTitle')) as $currentNewLinkTitle) { // check if newLinkTitle exists
    $num = substr($currentNewLinkTitle, 12);  // get the number following "newLinkTitle"
    $currentLinkAddress = $_POST['newLinkAddress'.$num];
    //Update query 

}
4

5 に答える 5

0

フォーム名には配列を使用する必要があります。例:

<input type="text" value="" name="newLinkTitle[0]" size="50" />
<input type="text" value="http://" name="newLinkAddress[0]" size="50" />
<input type="text" value="" name="newLinkTitle[1]" size="50" />
<input type="text" value="http://" name="newLinkAddress[1]" size="50" />

PHP はフォーム フィールドを配列に変換します。次のように使用できます。

foreach ($_POST['newLinkTitle'] as $key => $value) {
  echo 'Link title: ' . $value . ', link address: ' . $_POST['newLinkAddress'][$key];
}

$_POST 配列を検証することを忘れないでください。

于 2013-06-21T13:59:52.437 に答える