Waarom niet timestamp? Met datetime moet je eerst alles door strtotime() halen voor je date() kan gebruiken?quote:Op dinsdag 1 mei 2007 16:50 schreef hornage het volgende:
datetime dus
Kan toch ook gewoon met timestamp?quote:Op dinsdag 1 mei 2007 17:19 schreef Geqxon het volgende:
Zodat je in je queries kan rekenen.
Volgens mij kun je dan direct in de query al op eigenschappen filteren als "gisteren" of "over een jaar"quote:
Dat is zeer zeker waar. Echter zijn dat ook dingen die je vantevoren in PHP kunt doen. Een timestamp neemt als unsigned int maar 4 bytes in beslag, terwijl een datetime 8 bytes in beslag neemt. Een index op een unsigned int is daardoor ook nog eens kleiner (en waarschijnlijk sneller). Verder kun je je afvragen of je de presentatie al op databaseniveau wilt doen, of juist in de presentatielaagquote:Op woensdag 2 mei 2007 00:36 schreef Geqxon het volgende:
[..]
Volgens mij kun je dan direct in de query al op eigenschappen filteren als "gisteren" of "over een jaar"
Precies, als je dan toch met PHP werkt kan het inderdaad vaak makkelijker om met timestamps te werken. Strtotime is een mooie functie waar je simpelweg "-1 day" als string in kan voeren.quote:Op woensdag 2 mei 2007 00:44 schreef JeRa het volgende:
[..]
Dat is zeer zeker waar. Echter zijn dat ook dingen die je vantevoren in PHP kunt doen. Een timestamp neemt als unsigned int maar 4 bytes in beslag, terwijl een datetime 8 bytes in beslag neemt. Een index op een unsigned int is daardoor ook nog eens kleiner (en waarschijnlijk sneller). Verder kun je je afvragen of je de presentatie al op databaseniveau wilt doen, of juist in de presentatielaagik zie persoonlijk een RDMBS als een opslagplatform waarbij de datatypen het liefst zo simpel en klein mogelijk zijn.
1 |
Zo had ik het ook op php.net gevonden...maar dat werkt helaas nietquote:
1 2 3 4 5 | header("Content-Type: audio/mpeg"); header("Content-Disposition: attachment; filename=$file"); readfile('blablabla.mp3'); ?> |
1 2 3 | "Hans" . $tussennaam . "Dieter" ?> |
Jep je hebt gelijk. Had die quotes ook al gelijk aangepast, maar het werkte toen alsnog niet...quote:Op woensdag 2 mei 2007 12:18 schreef Geqxon het volgende:
Je moet even oppassen dat je quotes 100% zoals op bovenstaand voorbeeld typt, daarnaast raad ik je aan een constructie als:
[ code verwijderd ]
te gebruiken om de variabele in de string te verwerken.
Mooi! Met deze doet ie wel wat ik wil.quote:Op woensdag 2 mei 2007 12:19 schreef ViPeRII het volgende:
Voorbeeltje voor H4ze:
<?php
$filename = "theDownloadedFileIsCalledThis.mp3";
$myFile = "/absolute/path/to/my/file.mp3";
$mm_type="audio/mpeg";
header("Cache-Control: public, must-revalidate");
header("Pragma: hack");
header("Content-Type: " . $mm_type);
header("Content-Length: " .(string)(filesize($myFile)) );
header('Content-Disposition: attachment; filename="'.$filename.'"');
header("Content-Transfer-Encoding: binary");
readfile($myFile);
?>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $filename = "theDownloadedFileIsCalledThis.mp3"; $myFile = "/absolute/path/to/my/file.mp3"; $mm_type="audio/mpeg"; header("Cache-Control: public, must-revalidate"); header("Pragma: hack"); header("Content-Type: " . $mm_type); header("Content-Length: " .(string)(filesize($myFile)) ); header('Content-Disposition: attachment; filename="'.$filename.'"'); header("Content-Transfer-Encoding: binary"); readfile($myFile); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $output = ""; $gegevens = array( array("Voornaam" => "Ans" , "Achternaam" => "Albrechts"), array("Voornaam" => "Bram" , "Achternaam" => "Bertus"), array("Voornaam" => "Carol" , "Achternaam" => "Cyprus"), array("Voornaam" => "Dieter", "Achternaam" => "de Vries"), ); foreach ($gegevens as $persoon){ $output .= """ . $persoon['Voornaam'] . "";"" . $persoon['Achternaam'] . ""n"; } header('Content-type: application/csv'); header('Content-Disposition: attachment; filename="bedrijfsgegevens '.date("H_i - d-m-Y",time()).'.csv"'); echo $output; ?> |
1 2 3 4 5 | FROM movies m JOIN binding b ON m.id = b.movie JOIN actors a ON b.actor = a.id WHERE m.id =1 |
1 2 3 | Titanic Bootje zinkt Leonardo di Caprio Titanic Bootje zinkt Kate Winslet |
1 2 | Titanic Bootje zinkt Leonardo di Caprio Kate Winslet |
Dat is ook onderdeel van het gebrek aan informatiequote:Op woensdag 2 mei 2007 23:01 schreef Piles het volgende:
Ik zou het oplossen met 2 queries: 1 voor de film zelf, en 1 voor de acteurs bij die film. Lijkt me het snelst/handigst toch?
Mjah ik bedacht me dat ik dan met een extra loopje door de variabele velden kan lopen. Dan hoef ik me niet druk te maken over 'in welke film zit ik nu'quote:Op woensdag 2 mei 2007 23:04 schreef JeRa het volgende:
@George.W.Bush
Ik zie twee oplossingen op dit ogenblik. Eén oplossing vereist dat jij gaat specificeren wat je nu precies wilt, wil je echt een variabel aantal kolommen terugkrijgen?
Ik wil het uiteraard presenteren per film. Met bovenstaande query moet ik me dus in php bezig gaan houden of de filmnaam nog gelijk is aan het vorige rondje. En zo ja, dan de gevonden acteur in de tabel spugen, en zo nee de row afsluiten en een nieuwe row aanmaken.quote:Wat is er precies mis met de 'per acteur een record' methode?
Ik ben even snel wat in elkaar an het zetten voor een familielid.... Ik doe het wel met de 'record per acteur' methode.quote:De andere oplossing omvat overstappen op een andere RDBMS die custom group aggregate functions ondersteunt zodat je je acteurs in één veld kunt samenvatten, bijvoorbeeld in een comma separated list
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | m.title, m.description, GROUP_CONCAT(a.name) FROM movies m JOIN binding b, actors a ON m.id = b.movie AND b.actor = a.id GROUP BY m.id |
Ik wil inderdaad een beetje rekening houden met performance.quote:Op woensdag 2 mei 2007 23:05 schreef JeRa het volgende:
[..]
Dat is ook onderdeel van het gebrek aan informatieals het om één film gaat die GWB wil opvragen, dan is dat inderdaad een goede oplossing. Gaat het om meerdere films dan wordt het al gauw slechter.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |