Как настроить сеанс и user_id сразу после вызова метода? (кодегнитер)Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как настроить сеанс и user_id сразу после вызова метода? (кодегнитер)

Сообщение Anonymous »

Эти два метода отвечают за добавление пользователей из другой системы в эту систему.

Код: Выделить всё

private function api_login($email, $password){

$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.#.com.br/v1/driver/login",
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_ENCODING => "",
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 3000,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode(['email' => $email, 'password' => $password, 'device_name' => 'web']),
CURLOPT_HTTPHEADER => [
'Accept: application/json',
'Content-Type: application/json'
],
]);

$response_body = curl_exec($curl);
$response_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
$response_error = curl_errno($curl);
$err = curl_error($curl);

curl_close($curl);
$token = false;
if (!$err) {
if($response_code == 200){
$json_decode = json_decode($response_body);
$token = $json_decode->token;
}
}

return $token;
}

private function api_user_info(){

$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.#.com.br/v1/driver/user",
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_ENCODING => "",
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 3000,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
'Authorization: Bearer '.$this->session->userdata('token_#'),
'Accept: application/json',
'Content-Type: application/json'
],
]);

$response_body = curl_exec($curl);
$response_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
$response_error = curl_errno($curl);
$err = curl_error($curl);

curl_close($curl);
$json_decode = '';
if (!$err) {
if($response_code == 200){
$json_decode = json_decode($response_body);
}
}

return $json_decode;

}
Я хочу установить параметры следующего метода:

Код: Выделить всё

public function stripe_payment($user_id = "", $payment_request_from = "", $session_id = "") {
if ($this->session->userdata('user_login') != 1 && $payment_request_from == 'from_web'){
$this->session->set_flashdata('error_message', get_phrase('please_login_first'));
redirect('home/login', 'refresh');
}

//THIS IS HOW I CHECKED THE STRIPE PAYMENT STATUS
$response = $this->payment_model->stripe_payment($user_id, $session_id);

if ($response['payment_status'] === 'succeeded') {
// STUDENT ENROLMENT OPERATIONS AFTER A SUCCESSFUL PAYMENT

$check_duplicate = $this->db->get_where('bundle_payment', array('user_id' => $user_id, 'session_id' => $session_id, 'transaction_id' =>  $response['transaction_id']))->num_rows();
if($check_duplicate course_bundle_model->bundle_purchase('stripe', $response['paid_amount'], $response['transaction_id'], $session_id);
$this->email_model->bundle_purchase_notification($user_id);

$this->session->set_userdata('checkout_bundle_price', null);
$this->session->set_userdata('checkout_bundle_id', null);
else:
$this->session->set_flashdata('error_message', site_phrase('session_time_out'));
redirect('home/course_bundles', 'refresh');
endif;

if($payment_request_from == 'from_web'):
$this->session->set_flashdata('flash_message', site_phrase('payment_successfully_done'));
redirect('home/my_bundles', 'refresh');
else:
//for mobile
endif;
}else{
if($payment_request_from == 'from_web'):
$this->session->set_flashdata('error_message', $response['status_msg']);
redirect('home', 'refresh');
else:
//for mobile
endif;

}

}
И мне нужно настроить эти параметры на основе результатов API, указанных выше.

Подробнее здесь: https://stackoverflow.com/questions/656 ... odeigniter
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»