在for循环中使用代码点火器生成一系列数字并保存在数据库中

Generating a range of numbers using code igniter in a for loop and saving in database

我正在尝试使用 for 循环在 codeigniter 中生成随机数。生成的数字应保存在数据库中。在我的代码中,数据库中只添加了一行。下面是我的代码。

查看

  <form action="<?php echo site_url('/Gen/gen_num'); ?>" method="post">
  <select name="country_code_id" class="form-control show-tick" required>
   <option value="">263</option>
    </select>
    <select name="mobile_operator_prefix_id" class="form-control show-tick" required>
     <option value="0">772</option>
     <option value="1">774</option>
     <option value="2"> 774</option>
    </select>
   <input type="hidden" name="mobile_number" placeholder="Mobile Number">                                                            
  <input type="text" class="form-control" name="quantity" placeholder="How many numbers ?" required>
  <button class="btn btn-block bg-pink waves-effect" type="submit">SUBMIT</button>
   </form>

控制器

$quantity = $this->input->post('quantity');
for ($x=0; $x<$quantity; $x++) {   
$mobile_number = rand(10000, 99999);
$data = array(
           'mobile_operator_prefix_id' => $this->input->post('mobile_operator_prefix_id'),
           'country_code_id' => $this->input->post('country_code_id'),
            'mobile_number' => $mobile_number,
 );
$this->Gen_model->save_number($data);  
}

型号

function save_number($data){
                        $this->db->insert('mobile_numbers', $data);
                        }

您的代码看起来不错 - 您只需在 for 循环后删除分号 - 试试这个

$quantity = $this->input->post('quantity');
for ($x=0; $x<$quantity; $x++)
{   
    $mobile_number = rand(10000, 99999);
    $data = array(
        'mobile_operator_prefix_id' => $this->input->post('mobile_operator_prefix_id'),
        'country_code_id' => $this->input->post('country_code_id'),
        'mobile_number' => $mobile_number,
    );
    $this->Gen_model->save_number($data);  
}

For better understanding you can take a look at this PHP Sandbox example