2017-04-07 4 views
0

아무도 내가 요청한 숫자에 기초하여 randoms 문자열을 생성하고 codeigniter의 MVC 패턴을 사용하여 my mysql 데이터베이스의 테이블에 저장하고 싶습니다. 감사합니다 컨트롤러codeigniter에서 임의의 숫자를 mysql에 저장하는 방법

public function generate() 
    { 
$this->news_model->generate_pin(); 
     $this->load->helper('string'); 
     echo random_string('alnum',15); 

public function generate_pin(){ 

     $this->load->helper('string'); 
    $this->db->insert('pin', $number); 

이 아무것도도 발생하지 않습니다 모델 내가

+1

당신이 "번호를 요청"에 샘플 흐름을 가질 수이 예는 데이터베이스 테이블에 10 무작위로 생성 된 문자열을 삽입합니다? 그러나 이것은'rand()'를 CI 모델에 간단하게 삽입 한 것이라고 생각합니다. – Jhn

+0

그래,하지만 당신은 날 수있는 방법을 삽입하고 또한 반점 번호를 입력하는 데 필요한 그것을 생성하고 데이터베이스에 삽입 –

+0

반점 번호? 길이를 의미 했습니까? – Jhn

답변

0

당신은 컨트롤러에서 모든 응용 프로그램 로직을 처리해야는 한 번에 10 어레이를 실행하려면 모델 대신에.

// THE CONTROLLER 
public function generate() 
{ 
    // LOAD THE STRING HELPER 
    $this->load->helper('string'); 

    $pins = array(); // HOLDER OF PIN CODES 
    $num_pins = 10; // THE NUMBER OF PIN CODES YOU WANT TO GENERATE 
    $len_pins = 15; // THE LENGTH OF THE PIN CODES YOU WANT TO GENERATE 

    // LOOP and generate the PIN codes 
    for($i = 0; $i < $num_pins; $i++) { 
     //REPLACE 'pin_fieldname' WITH WHATEVER FIELD NAME YOU HAVE IN YOUR TABLE 'pin' 
     $pins[] = array('pin_fieldname'=>random_string('alnum', $len_pins)); 
     //IF YOU WANT TO HAVE DIFFERENT LENGTHS OF YOUR PIN CODES 
     //YOU CAN PUT SOME LOGIC HERE TO CHANGE $len_pins 
     // $len_pins = {WHATEVER NUMBER};  
    } 

    // INSERT THE PINS INTO THE DATABASE 
    if($this->news_model->insert_pins($pins)){ 
     // SUCCESS INSERT... DO SOMETHING...  
    } else { 
     // FAILED INSERT.. DO SOMETHING... 
    } 
} 

및 모델 :

// THE MODEL 
public function insert_pins($pins){ 
    // LOAD THE DATABASE YOU WANT TO USE (IF NOT ALREADY DONE ELSEWHERE) 
    $this->db = $this->load->database(); //https://www.codeigniter.com/user_guide/database/connecting.html 
    return $this->db->insert_batch('pin', $pins); 
} 
+0

감사합니다 마이클하지만 $ len_pins에 오류가 발생했습니다. 내 컨트롤러에() 줄이 있습니다. 메시지 : 구문 오류, 예기치 않은 '$ len_pins'(T_VARIABLE) –

+0

죄송합니다. 변수 이름 뒤에';' 그것이 효과가 있으면 알려주세요. 대답을 업데이 트했습니다 .. –

+0

Wao 감사합니다 Micheal 완벽하게 작동 –