Codeigniter Нужна помощь по поводу сессии. выберите имя зарегистрированной учетной записи и вставьте его в базу данных - PullRequest
0 голосов
/ 07 марта 2020

A PHP Произошла ошибка. Серьезность: уведомление

Сообщение: преобразование массива в строку

Имя файла: models / event_models. php

Номер строки: 524

Backtrace:

Файл: D: \ Xampp \ htdocs \ CapstoneFiles \ application \ models \ event_models. php Строка: 524 Функция: _error_handler

Файл: D: \ Xampp \ htdocs \ CapstoneFiles \ application \ models \ event_models. php Строка: 536 Функция: getuserinfo

Файл: D: \ Xampp \ htdocs \ CapstoneFiles \ application \ controllers \ event_user. php Строка: 30 Функция: join_events

Файл: D: \ Xampp \ htdocs \ CapstoneFiles \ index. php Строка: 315 Функция: require_once

Ошибка базы данных: номер ошибки: 1054

Неизвестный столбец 'Массив' в 'предложении where'

выберите * из user_profile, где user_id = Array

Имя файла: D: /Xampp/htdocs/CapstoneFiles/system/database/DB_driver.php

Номер строки: 691`

public function getuserinfo($user_id) {
    $userdata = $this->session->userdata('user_id');

    //This is Model

    $userid = $this->db->escape_str($user_id);
    $sql = "select * from user_profile where user_id=".$userid;
    return $this->db->query($sql);
}

public function join_events($event_id) {
    $data = array(
        'participants_id' => "",  
        'event_id' => $event_id,
        'profile_id' => $this->event_models->getuserinfo($this->session->user_id)- 
        >row()->name
    );
    $this->db->insert('participants',$data);
}

Ответы [ 2 ]

0 голосов
/ 07 марта 2020

Вы получаете данные сеанса в одной переменной и передаете другую переменную

$sql = "select * from user_profile where user_id=".$userdata;

обновите запрос следующим образом

0 голосов
/ 07 марта 2020

Переменная $userid не является целочисленной переменной, это массив. Просто убедитесь, что вы передаете целочисленную переменную. Это должно работать.

Попробуйте следующее

$sql = "select * from user_profile where user_id=".$user_id;

Надеюсь, это поможет.

...