2015-12-21 1 views
0

Я пытаюсь добавить информацию в две таблицы, проверив тип пользователя. Если пользователь будет обычным пользователем, запись должна быть введена в первую таблицу, а если пользовательский тип - доктор, запись должна быть введена в обе таблицы. Я работаю в CodeIgniter 3,6Две вставки запросов с инструкцией if в CodeIgniter

public function model_signup() 
{ 
$nameVar    = $this->input->post("signup_name"); 
$emailVar   = $this->input->post("signup_email"); 
$phoneVar   = $this->input->post("signup_phone"); 
$passwordVar   = $this->input->post("signup_password"); 
$ifDoctorVar   = $this->input->post("signup_ifdoctor"); 
$pmdcVar    = $this->input->post("signup_pmdc"); 

$signu_query   = $this->db->query("SELECT * FROM `doc_users` WHERE `user_email`='".$emailVar."'"); 
if($signu_query->num_rows() >0){ 
return false; 
} 
else 
{ 

    $this->db->query("INSERT INTO `doc_users` 
    (`user_nicename`, 
    `user_login`, 
    `user_email`, 
    `display_name`, 
    `user_phone`, 
    `user_pass`, 
    `user_type`, 
    `user_registered`) 
    VALUES ('$nameVar', 
    '$emailVar', 
    '$emailVar', 
    '$nameVar', 
    '$phoneVar', 
    '$passwordVar', 
    '$ifDoctorVar', 
    NOW())"); 

    $user_id = $this->db->insert_id(); 

    if($ifDoctorVar=='Doctor') { // checking if user is doctor or not 

    $this->db->query("INSERT INTO `doc_doc_details` 
    (`ID`, 
    `pmdc_id`, 
    `email`, 
    `phone) 
    VALUES ('$user_id', 
    '$pmdcVar', 
    '$emailVar', 
    '$phoneVar')"); 
    return true; 
    } 

    } 
} 
+1

Что ошибка, которую вы получили? – kc1994

+0

получение 2 ошибок, первая запись не входит во вторую таблицу, а вторая после отправки страницы перенаправляется на страницу с ошибкой –

+0

, когда я пытаюсь с одним запросом, все работает нормально –

ответ

0
public function model_signup() 
{ 
$nameVar    = $this->input->post("signup_name"); 
$emailVar   = $this->input->post("signup_email"); 
$phoneVar   = $this->input->post("signup_phone"); 
$passwordVar   = $this->input->post("signup_password"); 
$ifDoctorVar   = $this->input->post("signup_ifdoctor"); 
$pmdcVar    = $this->input->post("signup_pmdc"); 

$signu_query   = $this->db->query("SELECT * FROM 
`doc_users`  WHERE `user_email`='".$emailVar."'"); 
if($signu_query->num_rows() >0){ 
return false; 
} 
else 
{ 

$this->db->query("INSERT INTO `doc_users` 
(`user_nicename`, 
`user_login`, 
`user_email`, 
`display_name`, 
`user_phone`, 
`user_pass`, 
`user_type`, 
`user_registered`) 
VALUES ('$nameVar', 
'$emailVar', 
'$emailVar', 
'$nameVar', 
'$phoneVar', 
'$passwordVar', 
'$ifDoctorVar', 
NOW())"); 

$user_id = $this->db->insert_id(); 

if($ifDoctorVar=='Doctor') { // checking if user is doctor or not 

$this->db->query("INSERT INTO `doc_doc_details` 
(`ID`, 
    `pmdc_id`, 
    `email`, 
    `phone) 
    VALUES ('$user_id', 
    '$pmdcVar', 
    '$emailVar', 
    '$phoneVar')"); 
    // return true remove this 
    } 

} 
} 
+0

спасибо за решение –

+0

рад помочь вам ... – kc1994

Смежные вопросы