[php / mysql] php begrijpt iets niet van temporary tables

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • henkbiertank
  • Registratie: April 2006
  • Laatst online: 15-09 14:22
Hallo mensen,

Na een tijdje zoeken en vooral veel zoeken, heb ik nog geen resultaat gevonden. Ik zit met het volgende. Ik heb 2 tabellen waar ik data uithaal. De tabellen hebben geen link met elkaar. Daarom gebruik ik een temporary table.


SQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TEMPORARY TABLE `temp_content` (
    `id` INT NOT NULL AUTO_INCREMENT,
    `content_id` INT,
    `playlist_id` INT,
    `title` VARCHAR(200) NOT NULL,
    `text_one` TEXT,
    `datetime` DATETIME NOT NULL,
    PRIMARY KEY (`id`)
);

INSERT INTO `temp_content` (`content_id`, `title`, `text_one`, `datetime`)
SELECT `id` AS `content_id`, `title` AS `title`,
`text_one` AS `text_one`, `created_datetime` AS `datetime`
FROM `content` LIMIT 5;

INSERT INTO `temp_content` (`playlist_id`, `title`, `datetime`)
SELECT `id` AS `playlist_id`,
CONCAT('Playlist van ', DATE_FORMAT(`day`, '%e-%c-%Y')) AS `title`,
CONCAT(`day`, ' ', `start`) AS `datetime`
FROM `program_playlist` WHERE `program_id` = 1 AND `playlist` != '' LIMIT 5;

SELECT * FROM `temp_content` ORDER BY `datetime` DESC LIMIT 5;

Dit gaat allemaal prima in MySQL. Maar PHP laat alleen de gegevens van de eerst tabel (`content`) zien en niet de gegevens van `program_playlist`.

PHP:
1
2
3
4
5
6
7
8
9
$query = "SELECT * ";
$query .= "FROM `temp_content` ";
$query .= "ORDER BY `datetime` DESC ";
$query .= "LIMIT 5";
$query_content = mysql_query($query);
while($content = mysql_fetch_object($query_content)) {
    echo "                  <h1>$content->title</h1>\n";
    echo "                  $content->text_one<br />\n";
}


Wie o wie wilt mij helpen¿ Alvast bedankt!

Als je dit leest, verdoe je je tijd


Acties:
  • 0 Henk 'm!

  • twiekert
  • Registratie: Februari 2001
  • Laatst online: 30-08 11:55
rolfdenhartog schreef op zondag 14 januari 2007 @ 13:47:


PHP:
1
2
3
4
$query = "SELECT * ";
$query .= "FROM `temp_content` ";
$query .= "ORDER BY `datetime` DESC ";
$query .= "LIMIT 5";

!
LIMIT 5 > LIMIT 10 :?

Ik zou toch eerst eens even kijken wat er nou eigenlijk in de TEMP table staat. staan er wel rijen in van program_playlist?

[ Voor 17% gewijzigd door twiekert op 14-01-2007 15:00 ]


Acties:
  • 0 Henk 'm!

  • qless
  • Registratie: Maart 2000
  • Laatst online: 17:11

qless

...vraag maar...

Waarom wil je een temp tabel gebruiken?

Website|Air 3s|Mini 4 Pro|Avata 2|Canon R6|Canon 5d2|8 fisheye|14f2.8|24f2.8|50f1.8|135f2|10-22|17-40|24-105|70-300|150-600


Acties:
  • 0 Henk 'm!

  • henkbiertank
  • Registratie: April 2006
  • Laatst online: 15-09 14:22
In mysql (command line & phpyadmin) gaat het allemaal goed. maar iets in het php-script gaat er iets fout. Kan dat misschien door een instelling van php/mysql (¿) fout gaan?

Ik gebruik een temporary table omdat de tabellen geen link met elkaar hebben.

Als je dit leest, verdoe je je tijd


Acties:
  • 0 Henk 'm!

  • henkbiertank
  • Registratie: April 2006
  • Laatst online: 15-09 14:22
opgelost (syntax error) 8)7 |:( :X

Als je dit leest, verdoe je je tijd


Acties:
  • 0 Henk 'm!

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
rolfdenhartog schreef op zondag 14 januari 2007 @ 17:29:
Ik gebruik een temporary table omdat de tabellen geen link met elkaar hebben.
Daar zou je normaal gesproken een UNION in je query voor gebruiken :)

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]

Pagina: 1