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.
Twee queries? Eerst alle films opvragen, en daarna aan de hand van het film-id alle acteurs erbij opvragen?quote:Op woensdag 2 mei 2007 23:10 schreef George.W.Bush het volgende:
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.
*denkt* hmz, dat hoeft niet eens want ik weet dat het om 1 film gaat ivm de WHERE clausule. Een simpel tellertje in de while lus is genoeg. Als het tellertje > 1 weet ik dat ik alleen de acteurs moet parsen
[..]
Ah right, ik heb denk ik te lang met MySQL 3.23 en 4.0 gewerkt om die te onthoudenquote:Op woensdag 2 mei 2007 23:11 schreef cyberstalker het volgende:
Zou GROUP_CONCAT niet iets zijn?
[ code verwijderd ]
Dan krijg je de acteurs terug als een kommagescheiden lijst die je vervolgens met php kunt explode()n.
oh wist niet dat er zo'n topic wasquote:Op donderdag 3 mei 2007 08:58 schreef JeRa het volgende:
@Desdinova
Eigenlijk is dit iets voor het Unixtopicmaar goed. Die vijf velden zijn filters en elke minuut wordt er door de crondaemon gecontroleerd of het filter voldoet aan de huidige tijd. Zoals je het nu doet zal er dus om één over zeven elke dag gecontroleerd worden of de dag in de maand even is (voor zover ik weet) en zo ja, dan wordt het uitgevoerd. Als je ook nog een dag van de week instelt zal het dus alleen uitgevoerd worden als béide filters voldoen, dus als de dag in de maand even is én het maandag is, bijvoorbeeld.
Ik hou geen log bij.quote:Op donderdag 3 mei 2007 09:20 schreef JeRa het volgende:
@DJRandall
Er is een aparte DLL die de functies zoals mssql_connect() levert; deze DLL kan tijdens die scheduled tasks kennelijk niet geladen worden. Hou je een log bij met PHP errors zodat je kunt terugzien of het geladen kan worden? Probeer anders eens de mssql.dll (als ie zo heet) in je PHP-map onder extensions eens in C:\windows\system32 te zetten om te zien of ie 'm dan wél kan laden.
Wat let je om het te proberen? Als het dan nog niet werkt kun je 'm weer weghalen uit system32, en zul je dus even achter de reden moeten gaan waarom mssql.dll niet wordt geladenquote:Op donderdag 3 mei 2007 09:35 schreef DJRandall het volgende:
[..]
Ik hou geen log bij.
Moet ik na dll kopieren de server herstarten? ( iig zonder, werkt het niet )
1 2 3 4 | $query = "SELECT klant.Email, klant.C_email, extracontactpersoon.Email FROM klant, extracontactpersoon WHERE klant.Nieuwsbrief ='Ja' AND klant.Email LIKE '%@%' AND klant.Klantvan = '$verkoper' AND klant.Klantvan = extracontactpersoon.Klantvan"; ?> |
Of je past je php.ini gewoon aanquote:Op donderdag 3 mei 2007 10:01 schreef DJRandall het volgende:
Ik heb het antwoord hier gevonden:
http://www.issociate.de/b(...)_-_command_line.html
Ik moet de benodigde DLL's handmatig aanroepen ( en in system32 map zetten )
dus in het begin van de php: dl("php_mssql.dll");
Daarna werkt het prima!
Bedankt voor de input!
echo je query en echo de eventuele mysql_error(). kan je die resultaten even posten?quote:Op donderdag 3 mei 2007 10:19 schreef Xtr3mE het volgende:
Ik heb een probleempje met een SQL query:
Ik wil uit meerdere gegevens uit 2 tabellen halen in 1 query.
Ik heb de tabellen klant en extracontactpersoon en ik wil uit de tabel klant de waardes Email en C_email eruit lezen
Uit de tabel extracontactpersoon wil ik de waarde Emaill uitlezen.
Ik heb de volgende code maar die is denk ik best wel fout, en kom er niet uit zelf..
[ code verwijderd ]
Iemand ?
Met de functie array_rand()quote:Op donderdag 3 mei 2007 21:21 schreef Qunix het volgende:
Ik heb vier kolommen met wat tekst. Ze moeten allemaal getoond worden alleen op welke plek maakt me niet uit. Ieder kolom heeft een nummer. Ik wil dit met een rand(); functie doen.
Als ik rand(1, 4); doe, dan pakt hij een willekeurige nummer. Als ik dit voor iedere kolom doe, dan is er een kans dat hij een kolom 2x toont omdat er bv 2 dezelfde nummers zijn door de rand();. Hoe los ik dit op?
Of kan het op een andere manier?
1 |
Thanks.quote:Op donderdag 3 mei 2007 21:47 schreef doka het volgende:
[..]
Met de functie array_rand()
[ code verwijderd ]
Als $oudearray vier elementen bevat, bevat $newarr hierna die 4 elementen in willekeurige volgorde.
Klein dingetje...quote:
1 2 3 4 5 6 7 8 9 10 | $oldarr = array("left", "leftcenter", "rightcenter", "right"); $kolommen = array_rand($oldarr, 4); echo "<pre>"; print_r($kolommen); echo "</pre><br><br>"; echo $kolommen[3]; ?> |
hierom:quote:Op donderdag 3 mei 2007 22:24 schreef Qunix het volgende:
[..]
Klein dingetje...
[ code verwijderd ]
Ik krijg alleen het getal te zien. Hoe kan dat?
http://nl2.php.net/function.array_randquote:If you are picking only one entry, array_rand() returns the key for a random entry. Otherwise, it returns an array of keys for the random entries. This is done so that you can pick random keys as well as values out of the array.
1 2 3 4 5 6 7 8 9 10 | $oldarr = array("left", "leftcenter", "rightcenter", "right"); $kolommen = array_rand($oldarr, 4); echo "<pre>"; print_r($kolommen); echo "</pre><br><br>"; echo $oldarr[$kolommen[3]]; ?> |
Hij werkt! Tnxquote:Op donderdag 3 mei 2007 22:37 schreef mschol het volgende:
[..]
hierom:
[..]
http://nl2.php.net/function.array_rand
dus als je het goed wilt doen doe je dit:
[ code verwijderd ]
Wat zou ik aan moeten passen in de php.ini?quote:Op donderdag 3 mei 2007 13:05 schreef George.W.Bush het volgende:
[..]
Of je past je php.ini gewoon aan
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |