для проблемы петли - PullRequest
       4

для проблемы петли

0 голосов
/ 12 августа 2011
function cartinsert() {
    $num = $this->input->post('numOflim');
    $numb = count($num);
    echo $num;
    for ($x =1; $x <= $numb; $x++) {
       $quanoutput = $this->input->post('quanoutput');
       $barcodeoutput = $this->input->post('barcodeoutput');
       $productsoutput = $this->input->post('productsoutput');
       $buyprice = $this->input->post('buyprice');
       $outward_date=$this->input->post('outward_date');
       $stock=$this->input->post('stock');
       $warehouse_id =$this->input->post('warehouse_id');
       $request_id =$this->input->post('request_id');
       $warehouse=$this->input->post('warehouse');
       $flag2 = $productsoutput;
       $undefined = 'undefined';
       if ($flag2 == $undefined) {
           $flag3 = $this->cartmodel->cartInsert($quanoutput,$barcodeoutput,$productsoutput);
       } else {
           $flag3 = $this->cartmodel->cartInsert( $barcodeoutput,$quanoutput,$buyprice,$stock,$warehouse,$warehouse_id,$request_id,$outward_date);
       }
    }
}

Я просто могу получить только первый ряд, а остальные строки не отображаются

Ответы [ 2 ]

3 голосов
/ 12 августа 2011

посмотрите на код

$num = $this->input->post('numOflim');
$numb = count($num);
echo $num;
for ($x =1; $x <= $numb; $x++) {

вы говорите, что $ num равно 10?Well count (10) = 1, поэтому цикл предназначен для x = 1 до x <= 1, то есть это происходит только один раз! </p>

1 голос
/ 12 августа 2011

Элемент внутри вашего цикла for не имеет индекса.

Строка $quanoutput = $this->input->post('quanoutput'); в коде воспламенителя будет собирать только элемент $_POST['quanoutput']

Вам нужно проиндексироватьваш пост, выполнив что-то вроде этого во входных данных:

<input name='quanoutput[1]' ... >
<input name='quanoutput[2]' ... >
<input name='quanoutput[{NUM}]' ... >

, где {NUM} индекс, который вы можете получить следующим образом:

for ($x = 1; $x <= $numb; $x++) {
    $quanoutput[] = $_POST['quanoutput'][$x];
}

СОВЕТ ПРО: хотя я индексирую с 1, потому что это то, что вы сделали, обычно хорошо индексировать с 0.


Кроме того, как указывает ответ mattumotu, ваш счет возвращает только 1, поэтомутакже имеет смысл, что ваш цикл будет работать только один раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...