Передать значение всплывающего окна обратно в поле формы, которое названо набором массивов - PullRequest
0 голосов
/ 18 января 2012

Я пытаюсь передать значения из радиоблока во всплывающем окне в форму, в которой поля названы в соответствии с их идентификатором, извлеченным из базы данных MySQL.

Форма:

echo "<form id='form' name='pick_thumbnails' action='' method='post'>";

$result = mysql_query("SELECT thumb, set_id FROM sets WHERE id = '".$id."'", $conn); 
while ($row = mysql_fetch_array($result)){
    $get_set_id = "".$row{'set_id'}.""; 
    $get_thumb = "".$row{'thumb'}."";

    echo "<input type='text' name='txt_thumb[".$get_set_id."]' id='set_".$get_set_id."_thumb' size='10' maxlength='10' value='".$get_thumb."'>";
    echo "<a href='#' onClick=window.open('popup_forms/select_thumbnails.php?thumb=".$get_set_id."&id=".$get_set_id."');><img src='thumbnails.png' width='16' height='16' title='Select set ".$get_set_id." Thumbnail'></a>";                         

}
</form>

Всплывающее окно, которое помогает пользователю заполнить поле, выбирая миниатюру, если поле пустое из таблицы MySQL: (строка кода, которая доставляет мне проблемы)

opener.document.pick_thumbnails.$thumb.value = document.pick_icon$c$d.pick_icon_file$c$d.value; self.close();

Проблема в том, что мне нужно назвать поле txt_thumb [". $ Get_set_id."], Чтобы оно публиковалось в виде массива, и я мог работать с данными после публикации. Но это разбивает всплывающее окно, потому что когда я выбираю что-то во всплывающем окне, оно ничего не делает. Если я называю поле чем-то вроде txt_thumb_ $ get_set_id, всплывающее окно работает, когда я нажимаю на что-то, оно передает данные обратно в форму, но, очевидно, нарушает мою способность отправлять поля как массив.

Я подумал, что, возможно, мое решение могло бы заключаться в том, чтобы всплывающее окно отправляло обратно идентификатор поля формы вместо имени поля. Но мне трудно понять, как это сделать.

...