abonnement Unibet Coolblue Bitvavo
pi_48946867
@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? Wat is er precies mis met de 'per acteur een record' methode?

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
pi_48946913
quote:
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?
Dat is ook onderdeel van het gebrek aan informatie als 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.
pi_48947114
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?
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:
Wat is er precies mis met de 'per acteur een record' methode?
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
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
Ik ben even snel wat in elkaar an het zetten voor een familielid.... Ik doe het wel met de 'record per acteur' methode.
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
  woensdag 2 mei 2007 @ 23:11:14 #179
104583 cyberstalker
Een krachtig neen!
pi_48947164
Zou GROUP_CONCAT niet iets zijn?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT
    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


Dan krijg je de acteurs terug als een kommagescheiden lijst die je vervolgens met php kunt explode()n.
Hope for the best, prepare for the worst.
pi_48947170
quote:
Op woensdag 2 mei 2007 23:05 schreef JeRa het volgende:

[..]

Dat is ook onderdeel van het gebrek aan informatie als 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.
Ik wil inderdaad een beetje rekening houden met performance.
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48947730
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
[..]
Twee queries? Eerst alle films opvragen, en daarna aan de hand van het film-id alle acteurs erbij opvragen?

Dat is meestal wel hoe je het in de presentatielaag wilt hebben.
pi_48948403
quote:
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.
Ah right, ik heb denk ik te lang met MySQL 3.23 en 4.0 gewerkt om die te onthouden GROUP_CONCAT() is inderdaad een goede, gegeven dat je met MySQL 4.1 of hoger werkt
pi_48952990
ik heb een cronjob probleem in plesk, als in ik weet niet welke tijdwaardes ik in moet stellen. het probleem zit voornamelijk bij het feit dat ik dag van de maand kan instellen, én dag van de week

de cronjob moet elke 2 dagen lopen.. moet ik dan iets in deze trend doen?:
01 07 */2 * * /usr/bin/php /home/httpd/vhosts/domain.com/httpdocs/cron.php
dat zou dan moeten inhouden minuut 01 op uur 07, elke 2 dagen van de maand, elke maand, elke dag van de week.. ik kan er vrijwel geen voorbeelden over vinden online
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_48953618
@Desdinova

Eigenlijk is dit iets voor het Unixtopic maar 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.
  donderdag 3 mei 2007 @ 09:09:26 #185
64262 DJRandall
zijn vrouw!
pi_48953849
Dag beste scripters!

Ook ik heb een probleem!
Ik heb een script gemaakt wat hier intern draait op een windows apache ( WAMP ) server.
Het script kijkt op een interne MSSQL server en bouwt een PNG vd resultaten die hij via FTP upload.
Als ik het geheel manueel uitvoer werkt het perfekt!

Als ik het echter via scheduled tasks ( of via cmd ) laat uitvoeren krijg ik een error!
C:>D:wampphpphp.exe D:wwwrootcronjobsrealtimemob.php

Fatal error: Call to undefined function mssql_connect() in D:wwwrootcronjobsrealtimemob.php on line 8

Iemand enig idee wat dit kan zijn?
pi_48954103
@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.
pi_48954237
quote:
Op donderdag 3 mei 2007 08:58 schreef JeRa het volgende:
@Desdinova

Eigenlijk is dit iets voor het Unixtopic maar 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.
oh wist niet dat er zo'n topic was
klinkt op zich wel logisch, als je de logica dr achter eenmaal snapt.

merci bien
As a rule, I never touch anything more sophisticated and delicate than myself.
  donderdag 3 mei 2007 @ 09:35:06 #188
64262 DJRandall
zijn vrouw!
pi_48954548
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.
Ik hou geen log bij.
Moet ik na dll kopieren de server herstarten? ( iig zonder, werkt het niet )
pi_48954809
quote:
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 )
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 geladen
  donderdag 3 mei 2007 @ 10:01:47 #190
64262 DJRandall
zijn vrouw!
pi_48955208
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!
  donderdag 3 mei 2007 @ 10:19:58 #191
76511 Xtr3mE
X to the Z
pi_48955754
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..

1
2
3
4
<?php
  $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"
;
?>


Iemand ?
It's time to kick ass and chew bubble gum... and I'm all out of bubble gum
pi_48962033
quote:
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!
Of je past je php.ini gewoon aan
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48965494
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 ?
echo je query en echo de eventuele mysql_error(). kan je die resultaten even posten?
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_48980245
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?
pi_48981491
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?
Met de functie array_rand()

1$newarr = array_rand($oudearray, 4);


Als $oudearray vier elementen bevat, bevat $newarr hierna die 4 elementen in willekeurige volgorde.
Too old to Trick or Treat, too young to die
pi_48981832
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.
Thanks.
pi_48983277
quote:
Op donderdag 3 mei 2007 21:53 schreef Qunix het volgende:

[..]

Thanks.
Klein dingetje...

1
2
3
4
5
6
7
8
9
10
<?php
$oldarr 
= array("left""leftcenter""rightcenter""right");
$kolommen array_rand($oldarr4);

echo 
"<pre>";
print_r($kolommen);
echo 
"</pre><br><br>";

echo 
$kolommen[3];
?>


Ik krijg alleen het getal te zien. Hoe kan dat?
pi_48983906
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?
hierom:
quote:
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.
http://nl2.php.net/function.array_rand

dus als je het goed wilt doen doe je dit:
1
2
3
4
5
6
7
8
9
10
<?php
$oldarr 
= array("left""leftcenter""rightcenter""right");
$kolommen array_rand($oldarr4);

echo 
"<pre>";
print_r($kolommen);
echo 
"</pre><br><br>";

echo 
$oldarr[$kolommen[3]];
?>
pi_48985466
quote:
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 ]
Hij werkt! Tnx
  vrijdag 4 mei 2007 @ 08:48:10 #200
64262 DJRandall
zijn vrouw!
pi_48992878
quote:
Op donderdag 3 mei 2007 13:05 schreef George.W.Bush het volgende:

[..]

Of je past je php.ini gewoon aan
Wat zou ik aan moeten passen in de php.ini?

De juiste dll's worden al geladen in php.ini!
Alleen php.exe via cmd gebruikt die dll's niet!
Je MOET ze apart aanroepen.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')