Netjes in 1 rij vanuit meerdere tabellen (MySQLi)

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jan Erik Van woerden

Jan Erik Van woerden

11/08/2010 17:07:56
Quote Anchor link
Hallo,

Ik zit nog even met een probleem.

Ik heb 2 tabellen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
CREATE TABLE IF NOT EXISTS `userParams` (
  `id` int(15) NOT NULL auto_increment,
  `user_id` int(13) NOT NULL,
  `name` varchar(255) NOT NULL,
  `value` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

INSERT INTO `userParams` (`id`, `user_id`, `name`, `value`) VALUES
(1, 1, 'date', '09-10-1995'),
(2, 1, 'last', 'this'),
(3, 2, 'date', '13-10-1994'),
(4, 2, 'last', 'those');



CREATE TABLE IF NOT EXISTS `users` (
  `id` int(13) NOT NULL auto_increment,
  `voornaam` varchar(255) NOT NULL,
  `achternaam` varchar(255) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;


INSERT INTO `users` (`id`, `voornaam`, `achternaam`) VALUES
(1, 'Jan Erik', 'van Woerden'),
(2, 'Testie', 'Brits');


Nu wil ik graag dat ik via een scriptje er voor zorgen dat alle Params en users bij elkaar gevoegd worden tot 1 rij.

Ik heb nu dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$query
= $db->query("SELECT * FROM users AS t1, userParams AS t2 WHERE t1.id = t2.user_id AND t1.id = (SELECT user_id FROM userParams WHERE name = 'last' AND value = 'this')") or die($db->error);

while($row = $query->fetch_object())
{

    $return->{$row->user_id}->id = $row->user_id;
    $return->{$row->user_id}->voornaam = $row->voornaam;
    $return->{$row->user_id}->achternaam = $row->achternaam;
    $return->{$row->user_id}->{$row->name} = $row->value;
}

print_r($return);
?>


Weten jullie of dit misschien makkelijker kan?
Gewijzigd op 11/08/2010 17:10:55 door Jan Erik Van woerden
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.