Selhání ref() funkce v MYSQL

- sppilka
 - Člen | 37
 
Je možné aby nefungovalo ani $xxx->ref(‚user‘,‚id_student‘)?
ALTER TABLE `active_lesson`
  ADD CONSTRAINT `active_lesson_ibfk_1` FOREIGN KEY (`id_lesson`) REFERENCES `lesson` (`id`),
  ADD CONSTRAINT `active_lesson_ibfk_2` FOREIGN KEY (`id_student`) REFERENCES `user` (`id`);
Zkoušel jsem vše… cache, přejmenovat klíče, adt… a nic…

- sppilka
 - Člen | 37
 
Toto téma je docela časté, ovšem jsem na něj nenašel lék…
No každopádně chyba je jasná prostě chci přes tabulku ACTIVE_LESSON:
CREATE TABLE IF NOT EXISTS `active_lesson` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_lesson` int(11) NOT NULL,
  `id_student` int(11) NOT NULL,
  `student_name` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `email` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `is_payed` int(4) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `id_lesson` (`id_lesson`),
  KEY `id_student` (`id_student`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=103 ;
ALTER TABLE `active_lesson`
  ADD CONSTRAINT `active_lesson_ibfk_1` FOREIGN KEY (`id_lesson`) REFERENCES `lesson` (`id`),
  ADD CONSTRAINT `active_lesson_ibfk_2` FOREIGN KEY (`id_student`) REFERENCES `user` (`id`);
Chci si vzít informace které jsou zde LESSON:
CREATE TABLE IF NOT EXISTS `lesson` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `teacher_id` int(11) NOT NULL,
  `pay_tax` int(11) NOT NULL,
  `room_id` int(11) NOT NULL,
  `start_date` date NOT NULL,
  `start_hour` int(11) NOT NULL,
  `start_minute` int(11) NOT NULL,
  `week_day` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `type_of_lesson` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `repeating` int(11) NOT NULL,
  `take_lesson` int(11) NOT NULL,
  `howlong` int(11) NOT NULL,
  `capacity` int(11) NOT NULL,
  `usage_capacity` int(11) NOT NULL,
  `dificulty` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `uni` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  PRIMARY KEY (`id`),
  KEY `teacher_id` (`teacher_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=28 ;
ALTER TABLE `lesson`
  ADD CONSTRAINT `lesson_ibfk_3` FOREIGN KEY (`teacher_id`) REFERENCES `user` (`id`);
A také v USER:
CREATE TABLE IF NOT EXISTS `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(20) COLLATE utf8_czech_ci NOT NULL,
  `password` char(128) COLLATE utf8_czech_ci NOT NULL,
  `name` varchar(30) COLLATE utf8_czech_ci NOT NULL,
  `role` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `email` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `facebook` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `twitter` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `icq` varchar(255) COLLATE utf8_czech_ci NOT NULL,
  `is_allowed` tinyint(4) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=19 ;
PDOException: No reference found for $active_lesson->user
Když cizím klíčem chci se spojit s lesson jako $ctive_lesson->lesson->name funguje to, ale $active_lesson->user->name nejde… jak jsme říkal zkusil jsem i ref(‚user‘,‚id_student‘) ale toto také nefunguje…
Pro více info kdyby si potřeboval, rád zašlu, budu kontrolovat
Díky

- sppilka
 - Člen | 37
 
No začal sem s nette asi před měsícem… moc se v tom neorientuji zatím, ale nečekal, že když se zeptám na foru pro začátečníky, tak mi řeknou že sem matla… no to je fuk dík za info zkusím to opravit…
edit: Tak jsem to opravil měl si pravdu s tou verzí… neboj polepším se :)
Editoval sppilka (26. 8. 2012 22:50)