Я получаю Попытка получить свойство ошибки необъекта в $routine = $routine->getRoutine($event->routine_id);
из-за $event->routine_id
Но это немного странно, потому что когда я var_dump($event)
$event->routine_id
на самом деле имеет значение и теперь смотрю на мою функцию getEventsbydate
Однако в прошлый раз у меня была та же ошибка, поэтому я пытаюсь использовать $this->routine_id = $this->_connection->lastInsertId();
для ручной отправки рутины но так как рутина_идентификатора не является первичным ключом таблицы, происходит сбой, есть ли функция, которая может отправлять столбец, который не является первичным ключом?
public function getEventsbydate($year, $month, $day)
{
$stmt = $this->_connection->prepare("SELECT * FROM event WHERE year = :year AND month = :month AND day = :day");
$stmt->execute(['year'=>$year,'month'=>$month, 'day'=>$day]);
$this->routine_id = $this->_connection->lastInsertId();
$stmt->setFetchMode(PDO::FETCH_CLASS, "Event_model"); //datatype user
return $stmt->fetchAll();
}
public function index($y, $m, $d){
$event = $this->model('Event_model');
$event = $event->getEventsbydate($y, $m, $d);
$routine = $this->model('Routine_model');
$routine = $routine->getRoutine($event->routine_id);
if($event == false){ //if there is nothing in the workout_list
header("location:/Event/create/$y/$m/$d"); //mylist controller , create method
}
else{
//whatever you would do here
$this->view('routine/routine_index',$routine);
}
}