Отправить массив значений с помощью SimpleTest - PullRequest
2 голосов
/ 01 июля 2011

Я пытаюсь отправить простую форму с массивом полей:

<form>
<input type='text' name='Article[]' id='Article1' />
<input type='text' name='Article[]' id='Article2' />
<input type='text' name='Article[]' id='Article3' /> 

Итак, как мне установить различные поля с помощью SimpleTest?

(ps Я видел этот вопрос: Простейший браузерный скрипт PHP ... как проверить отправку формы, которая имеет [] в имени формы (в основном в формате массива)? , но это не так не отвечу на мой вопрос).

Ответы [ 3 ]

1 голос
/ 05 июля 2011

Я понял, что один из способов сделать это - использовать setFieldById.Измените код на:

$form->setFieldById('Article1', 'Some Article Text 1'); 
$form->setFieldById('Article2', 'Some Article Text 2'); 

И так далее.Работает отлично, но предполагает, что вы можете генерировать уникальные идентификаторы для каждого поля - не так уж сложно.

0 голосов
/ 01 июля 2011

Попробуйте $form->setField('Article', array("Some article text", "Some article text2"));

0 голосов
/ 01 июля 2011

Попробуйте это: (simpletest.php)

<?php
if( isset( $_REQUEST['submit']))
    print_r( $_POST['Article']);
?>
<form method='post' action='simpletest.php'> 
<input type='text' name='Article[]' id='Article1' />
<input type='text' name='Article[]' id='Article2' />
<input type='text' name='Article[]' id='Article3' />
<input type='submit' name='submit' id='submit' />
</form>
...