eh i znowu problem z tablicami juz tlumacze o co chodzi
mam sobie tabelki w bazie oto one
tabelka z ocenami
Kod
+----+---------+------------+------+---------+---------+------------+
| id | user_id | subject_id | mark | type_id | half_id | time       |
+----+---------+------------+------+---------+---------+------------+
| 61 |       7 |          1 | 1    |       2 |       1 | 1127495309 |
| 62 |       7 |          1 | 1    |       1 |       1 | 1127495313 |
+----+---------+------------+------+---------+---------+------------+

tabelka z typami ocen
Kod
+----+------------+---------+
| id | name       | color   |
+----+------------+---------+
|  1 | Kartkowka  | #00FF00 |
|  2 | Sprawdizan | #FF00FF |
+----+------------+---------+

i tabelka z poprawionymi ocenami
Kod
+----------+-------+
| marks_id | cmark |
+----------+-------+
|       61 | 4     |
|       62 | 4     |
+----------+-------+


nastpenie tym zapytaniem odczytuje sobie informacje z tabelek ocen i porpawionych ocen
  1. <?php
  2.  
  3. return $result = $this->engine->db->queryf('SELECT * FROM `%t` LEFT JOIN `%t` ON `%1$t`.`id`=`%2$t`.`marks_id` WHERE `%1$t`.`user_id`=%u AND `%1$t`.`subject_id`=%u', 'marks', 'cmarks', $user, $sid)->fetchAll();
  4. ?>


nastpenie za pomocą takiego kodu probje przyparzadkowac typ oceny (type_id) do odpownieniego id w tabeli z typami ocen

  1. <?php
  2.  
  3. $color = $this->engine->libraries('marks')->getColor();
  4.         
  5.         foreach($marks AS $item)
  6.         {
  7.             $mark[] = $item + array('color' => $color[$item['type_id']]['color'], 'name' => $color[$item['type_id']]['name'], print_r($item);'user_name' => $r[$item['user_id']]['name'], 'user_surname' => $r[$item['user_id']]['surname'], 'user_id' => $item['user_id']);
  8.         }
  9.         
  10. ?>

teraz zapodam metode getcolor();
  1. <?php
  2.  
  3. public function getColor()
  4.     {
  5.         return $this->engine->db->queryf('SELECT * FROM `%t` ', 'markstypes')->fetchAll();
  6.     }
  7.  
  8. ?>


no i po tej massie kodu wywala mi notice ...

.Notice: Undefined index: 2 in /var/www/htdocs/e-journal/modules/marks.mod.php on line 197

linika 197 to ta $mark[] = $item + .......

skad ten notic sie bieze bo nie moge dojsc :/

no coz kobinowalem kobinowalem i doszedlem do wniosku ze szybciej bedzie polaczyc 3 tabelki zapytaniem i postawlo to zapytanie

  1. <?php
  2.  
  3. return $result = $this->engine->db->queryf('SELECT * FROM `%t` LEFT JOIN `%t` ON `%1$t`.`id`=`%2$t`.`marks_id` LEFT JOIN `%t` ON `%1$t`.`type_id`=`%3$t`.`id` WHERE `%1$t`.`user_id`=%u AND `%1$t`.`subject_id`=%u', 'marks', 'cmarks', 'markstypes', $user, $sid)->fetchAll();
  4.  
  5. ?>