abonnement Unibet Coolblue Bitvavo
pi_57653496
quote:
Op donderdag 27 maart 2008 18:54 schreef qu63 het volgende:
Ik snap er nog minder van nu

sql-query:
[ code verwijderd ]

Er staan 4 rijen in mn tabel, maar de enige output is dit:
[ code verwijderd ]

Wat gaat er nou allemaal fout hier
Het haalt zowel de associatieve array op als de nummerieke. Je moet even specificeren welke wordt weergegeven

1
2
3
4
5
6
7
8
9
10
<?php
$q = "SELECT * FROM meldingen";
$res=mysql_query($q);
$i=0;
while($berichten = mysql_fetch_array($res))
 {
  print $berichten[$i];
  $i++;
 }
?>


Zo zou het wel moeten werken.
  donderdag 27 maart 2008 @ 19:13:39 #102
62215 qu63
..de tijd drinkt..
pi_57653626
quote:
Op donderdag 27 maart 2008 19:08 schreef beerten het volgende:

[..]

Het haalt zowel de associatieve array op als de nummerieke. Je moet even specificeren welke wordt weergegeven
[ code verwijderd ]

Zo zou het wel moeten werken.
Dan nog krijg ik maar 1 rij te zien.

En als ik mysql_fetch_array vervang door mysql_fetch_row krijg ik nog steeds 1 rij terug
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_57653877
Hoe ziet je tabel er uit en wat wil je ophalen? Welke gegevens wil je?
Je haalt nu ALLES op, alle rijen, alle velden en kolommen. 2 keer zelfs zo te zien.
  donderdag 27 maart 2008 @ 19:48:04 #104
62215 qu63
..de tijd drinkt..
pi_57654716
quote:
Op donderdag 27 maart 2008 19:22 schreef beerten het volgende:
Hoe ziet je tabel er uit en wat wil je ophalen? Welke gegevens wil je?
Je haalt nu ALLES op, alle rijen, alle velden en kolommen. 2 keer zelfs zo te zien.
1
2
3
4
5
id        van_id        voor_id        titel        inhoud        datum        gelezen
1    1    2    Titel Ongelezen    Ongelezen    1206710100    1
2    2    1    Titel Gelezen    Gelezen    1206710100    1
3    1    2    Titel Gelezen    Gelezen    1206621950    1
4    2    1    Titel Ongelezen    Ongelezen    1206621950    0

dat is de inhoud van de tabel 'meldingen', en die wil ik gewoon in een keer neerplempen. Tot nu toe poept ie alleen de eerste rij er uit -O-
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  donderdag 27 maart 2008 @ 20:07:39 #105
32768 DionysuZ
Respect my authority!
pi_57655396
Natuurlijk krijg je maar 1 rij terug. Om meerdere rijen terug te krijgen moet je, zoals hierboven ergens ook staat, er een while loopje van maken.
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
  donderdag 27 maart 2008 @ 20:11:04 #106
62215 qu63
..de tijd drinkt..
pi_57655508
quote:
Op donderdag 27 maart 2008 20:07 schreef DionysuZ het volgende:
Natuurlijk krijg je maar 1 rij terug. Om meerdere rijen terug te krijgen moet je, zoals hierboven ergens ook staat, er een while loopje van maken.
ook met
<?php
$q = "SELECT * FROM meldingen";
$res=mysql_query($q);
$i=0;
while($berichten = mysql_fetch_array($res))
{
print $berichten[$i];
$i++;
}
?>

krijg ik maar 1 rij
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_57655745
quote:
Op donderdag 27 maart 2008 20:11 schreef qu63 het volgende:

[..]

ook met
<?php
$q = "SELECT * FROM meldingen";
$res=mysql_query($q);
$i=0;
while($berichten = mysql_fetch_array($res))
{
print $berichten[$i];
$i++;
}
?>

krijg ik maar 1 rij
Nee, je krijgt het nulde element van rij 0, het eerste element van rij 1, het tweede element van rij 2, etc.

1
2
3
4
5
6
7
8
9
10
11
12
<?php
$q 
"SELECT * FROM meldingen";
$res=mysql_query($q);
$berichten = array();
while(
$row mysql_fetch_array($res))
{
  
$berichten[] = $row;
}
echo 
'<pre>';
var_dump($berichten);
echo 
'</pre>';
?>
pi_57657576
Of met PDO :)
1
2
3
4
5
6
7
8
<?php
$q 
"SELECT * FROM meldingen";
$stm $pdo->prepare($q);
$berichten $stm->fetchAll(PDO::FETCH_ASSOC);
echo 
'<pre>';
var_dump($berichten);
echo 
'</pre>';
?>
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  donderdag 27 maart 2008 @ 21:31:20 #109
63192 ursel
"Het Is Hier Fantastisch!
pi_57658115
quote:
Op donderdag 27 maart 2008 21:15 schreef SuperRembo het volgende:
Of met PDO
[ code verwijderd ]
Eindelijk iemand ontopic..
Denk alleen dat qu63 er weinig aan heeft...
  donderdag 27 maart 2008 @ 21:58:03 #110
62215 qu63
..de tijd drinkt..
pi_57659160
quote:
Op donderdag 27 maart 2008 21:31 schreef ursel het volgende:

[..]

Eindelijk iemand ontopic..
Denk alleen dat qu63 er weinig aan heeft...
precies
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_57661659
Ik heb een stdClass met een aantal members. Hoe kan ik die omzetten naar een key/value array? Recursief als het kan.

edit:
Ah, gewoon casten naar een array.
1
2
3
<?php
$Array 
= (array) $Object
?>


Is dan wel niet recursief maar hier kom ik wel uit.
pi_57671080
Om maar even ontopic te zijn: PDO is leuk en aardig, maar besef dat je in sommige RDBMS'en die partiele indices ondersteunen geen gebruik kunt maken van die indices zodra je prepared statements gebruikt. Voorbeeldje hiervan is PostgreSQL, die het matchen van de indices al tijdens het preparen van de query doet. Door het ontbreken van je condities (je vult ze namelijk pas later in met Statement->bindValue() of ->bindParam()) is het namelijk onmogelijk om te voorspellen wat je query gaat doen.

Dus mijn idee van good practice in deze situatie: prepared statements gebruiken voor situaties waarbij je eenzelfde soort query heel vaak moet uitvoeren of wanneer je niet geavanceerd gebruik maakt van je database, en anders op de 'oude' manier samenstellen en PDO->quote() gebruiken

Oh en hoi.
  vrijdag 28 maart 2008 @ 14:20:30 #113
63192 ursel
"Het Is Hier Fantastisch!
pi_57672989
Ik zit momenteel eigenlijk met de volgende situatie:

Eens in de 2 weken moet ik een lijst van zo'n 10.000 namen, welke ik via een csv file binnen krijg, vergelijken met alle namen in onze huidige database. Dit zijn er ook zo'n 10.000 stuks.

Uiteindelijk moeten alle namen uit de csv file ook in een tijdelijke db opgeslagen worden.

Nu zit ik een beetje in een dilema wat nu het beste te doen is qua performance. In ons systeem is een generieke functie welke bestanden van een ftp server afhaalt en de gegevens van de file inleest en terug geeft in een array per regel. Pas daarna wordt gekeken welk bestand het is en dus ook wat er moet gebeuren.

Elke keer per regel een query uitvoeren om te kijken of er een match is vergt enorm veel queries achter elkaar. Aan de andere kant ben ik bang dat als ik beide in een array ga plaatsen dat dit ook enorm veel resources van de server gaat vergen.

Iemand enig idee hoe het in performance het beste aan te pakken is om 2 grote arrays met elkaar te vergelijken?
  vrijdag 28 maart 2008 @ 14:58:42 #114
187069 slacker_nl
Sicko pur sang
pi_57673831
Toevallig ben ik met een soort gelijk iets bezig. Onder perl heb je een Array::Compare functie waarbij je 2 arrays met elkaar kan vergelijken.

Echter ben ik het op een andere manier aan het doen.

Ik laad m'n csv file in Oracle (sqlldr is een heel handige tool daarvoor), en vervolgens laat ik een een x-aantal queries los op de DB die de incorrecte entries eruit vist (en ook de correcte entries). De resultaten van elke query worden in cvs format uitgespuugd.

Doordat je alles in de DB gooit kan je over je gehele base checken of alles goed is, ipv per record/naam.

1 tool is verantwoordelijk voor het inladen van de data, een andere tool is verantwoordelijk voor de queries en nog een andere wordt gebruikt om alle mogelijke queries uit te voeren waarna de output naar een file wordt geredirect, en ik een wc -l gebruik om het aantal resultaten weer te geven:

De applicatie die verantwoordelijk is voor de queries heeft een hash waarin alle queries zijn gedefinieerd:

1
2
3
4
5
6
7
8
9
my %queries = ( name_of_query => {
   description => "Description",
   sql => qq{
SELECT * FROM table
WHERE key = value
-- insert more sql code here
}, # end of qq
}, # end of name_of_query
);


Vervolgens is er 1 functie die de queries uitvoert op basis van userinput:

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
28
29
30
31
32
sub sql2csv {
    my $sql = shift;
    print STDERR $sql . "\n";
    # Some queries return undef
    # warnings are noise in that case
    no warnings;
    foreach ($oracle->do_query($sql)) {
        print join (",", @$_) . "\n";
    }
    use warnings;
}

sub do_query {
    my $query_id = shift;
    if (exists $queries{$query_id}) {
        printf STDERR "/* %s */\n", $queries{$query_id}->{description} 
          if defined $queries{$query_id}->{description};

        my $sql = $queries{$query_id}->{sql};

        if ($opt{limit}) {
            $sql = join("\n", $sql, sprintf($limit_query, $opt{limit}));
        }

        if ($opt{order}) {
            $sql = join("\n", $sql, $order_query);
        }
        sql2csv($sql);
    } else {
        printf STDERR "Query for %s does not exists!\n", $query_id;
    }
}


Vervolgens kan ik alle checks uitvoeren door hetvolgende:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash

exe=./datacheck
total="^total_"

do_query() {
        local i
        for i in $* ; do
                file=../out/RESULTS.$i
                $exe --query $i > $file 2>../out/QUERY.$i ; wc -l $file
        done
}

do_query $($exe --list | grep $total) $($exe --list | grep -v $total)


Voordeel is dat ik het grootste gedeelte in de DB zelf afhandel, en ik zelf niet moeilijk hoef te gaan doen om arrays met elkaar te vergelijken. Ander pluspunt, maar die had ik al aangegeven, ik hoef niet per record een aparte query uit te voeren.
In theory there is no difference between theory and practice. In practice there is.
  vrijdag 28 maart 2008 @ 15:11:03 #115
63192 ursel
"Het Is Hier Fantastisch!
pi_57674039
We werken hier in ieder geval met MySQL.
Weet niet of dat verder consequenties heeft.

Daarnaast, die Perl functie, dat zou betekenen dat ik beide al in een array zal moeten hebben. Weet niet of dat zo tactisch is..
  vrijdag 28 maart 2008 @ 16:09:21 #116
187069 slacker_nl
Sicko pur sang
pi_57675300
quote:
Op vrijdag 28 maart 2008 15:11 schreef ursel het volgende:
We werken hier in ieder geval met MySQL.
Weet niet of dat verder consequenties heeft.

Daarnaast, die Perl functie, dat zou betekenen dat ik beide al in een array zal moeten hebben. Weet niet of dat zo tactisch is.. :{
Maakt verder niet uit of je MySQL of Oracle gebruikt. Mijn queries zijn ook onder MySQL te gebruiken. Ik gebruik de PDO variant van Perl, dussuh.. :)

In beide gevallen een array? ow, voor array::compare, maar als je alles door de DB laat checken heb je dat helemaal niet nodig, en als je het wel nodig hebt, kan je 2 arrays aanmaken, je csv file line by line inlezen, query bakken aan de hand van je csv file, en die loslaten, vervolgens de arrays gaan vergelijken, dan krijg je zoiets:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
my (@array_db, @array_csv);
my $comp= Array::Compare->new();

open(FH, $csvfile);
while(<FH>) {
    chomp(); # Remove the new line
    @array_csv = split(/,/, $_);

    # Do stuff met array_csv to create the SQL code
    $sql = sprintf "SELECT * FROM example WHERE example_name = '%s'", $array_csv[1];

    # ervanuitgaand dat do_query een array returned
    @array_db = do_query($sql); 

    # Compare werkt met een reference naar een array.
    if ($comp->compare(\@array_csv, \@array_db)) {
        # compare is OK
    } else {
        # Compare failed
    }
}


Enige lelijke is wat je al aangaf, de hoeveelheid nagenoeg identieke queries. Maar daarom zou ik je csv file in je DB laden zodat je alles met SQL kan checken.

Waarom moet jij moeilijk gaan proggen als je de DB al het moeilijke werk kan laten doen door een paar goed gekozen queries.
In theory there is no difference between theory and practice. In practice there is.
  vrijdag 28 maart 2008 @ 16:26:58 #117
63192 ursel
"Het Is Hier Fantastisch!
pi_57675708
Tja, dat is idd een oplossing, alleen misschien nog een belangrijk detail dat ik eigenlijk nog vergeten was, de opzet was ook om de namen in de similar_text te zetten en te kijken of de naam er voor meer dan 90% op lijkt.

Ergens anders kreeg ik eigenlijk ook het advies om de vergelijking door de database te laten uitvoeren middels een FULL outer join. Alleen is eigenlijk dan dus mijn probleem hoe kan ik 2 tabellen met elkaar goed vergelijken welke een match hebben van meer dan 90%.
pi_57703567
quote:
Op vrijdag 28 maart 2008 12:50 schreef JeRa het volgende:
Om maar even ontopic te zijn: PDO is leuk en aardig, maar besef dat je in sommige RDBMS'en die partiele indices ondersteunen geen gebruik kunt maken van die indices zodra je prepared statements gebruikt. Voorbeeldje hiervan is PostgreSQL, die het matchen van de indices al tijdens het preparen van de query doet. Door het ontbreken van je condities (je vult ze namelijk pas later in met Statement->bindValue() of ->bindParam()) is het namelijk onmogelijk om te voorspellen wat je query gaat doen.

Dus mijn idee van good practice in deze situatie: prepared statements gebruiken voor situaties waarbij je eenzelfde soort query heel vaak moet uitvoeren of wanneer je niet geavanceerd gebruik maakt van je database, en anders op de 'oude' manier samenstellen en PDO->quote() gebruiken

Oh en hoi.
Je kunt met PostgreSQL toch zeker wel geparameteriseerde query's uitvoeren zonder de hele performance om zeep te helpen?
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_57703891
quote:
Op zaterdag 29 maart 2008 20:57 schreef SuperRembo het volgende:

[..]

Je kunt met PostgreSQL toch zeker wel geparameteriseerde query's uitvoeren zonder de hele performance om zeep te helpen?
Dat kan ook wel ja, maar dus niet met partiële indices vanwege de reden die ik noemde. Het is een leuke pitfall in ieder geval met MySQL kan ik geen vergelijking geven aangezien die geen partiële indices ként.
pi_57705701
quote:
Op zaterdag 29 maart 2008 21:10 schreef JeRa het volgende:

[..]

Dat kan ook wel ja, maar dus niet met partiële indices vanwege de reden die ik noemde. Het is een leuke pitfall in ieder geval met MySQL kan ik geen vergelijking geven aangezien die geen partiële indices ként.
In dat geval lijkt het me good practice om altijd geparameteriseerde query's te gebruiken, tenzij performance een een speciale aanpak vereist.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_57705929
quote:
Op zaterdag 29 maart 2008 22:19 schreef SuperRembo het volgende:

[..]

In dat geval lijkt het me good practice om altijd geparameteriseerde query's te gebruiken, tenzij performance een een speciale aanpak vereist.
Klopt, dat zeg ik (op een beetje vage manier) ook ik gebruik zelf echter veel partiële indices om de update-performance te verhogen van mijn database, en dan is dat in de praktijk vrij vervelend.
pi_57717631
Welk cms is het makkelijkst skinbaar? Wat je dan kan gebruiken om te implementeren in websites van klanten?
pi_57727949
Degene die hier laatst vroeg hoe 9292ov.nl wist waar jij bent (het "Routebestemming vanaf hier" knopje).... dat schijnt dus een samenwerking tussen de telecomproviders en 9292ov.nl te zijn.
pi_57728009
quote:
Op maandag 31 maart 2008 00:00 schreef Geqxon het volgende:
Degene die hier laatst vroeg hoe 9292ov.nl wist waar jij bent (het "Routebestemming vanaf hier" knopje).... dat schijnt dus een samenwerking tussen de telecomproviders en 9292ov.nl te zijn.
Dat soort informatie laten ze dus los? Dus in feite weet 9292ov waar ik woon?
  maandag 31 maart 2008 @ 00:10:54 #125
62215 qu63
..de tijd drinkt..
pi_57728156
quote:
Op maandag 31 maart 2008 00:00 schreef Geqxon het volgende:
Degene die hier laatst vroeg hoe 9292ov.nl wist waar jij bent (het "Routebestemming vanaf hier" knopje).... dat schijnt dus een samenwerking tussen de telecomproviders en 9292ov.nl te zijn.
dat was ik!

heb je een bron daarvoor?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  maandag 31 maart 2008 @ 00:11:51 #126
62215 qu63
..de tijd drinkt..
pi_57728180
quote:
Op maandag 31 maart 2008 00:03 schreef Flaccid het volgende:

[..]

Dat soort informatie laten ze dus los? Dus in feite weet 9292ov waar ik woon?
nee, dat niet.

Als je 9292ov.nl op je mobiel gebruikt, geeft je telefoon je locatie door. Op basis van de zendmasten, dus niet geheel accuraat
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  maandag 31 maart 2008 @ 11:22:27 #127
63192 ursel
"Het Is Hier Fantastisch!
pi_57733470
quote:
Op vrijdag 28 maart 2008 16:26 schreef ursel het volgende:
Tja, dat is idd een oplossing, alleen misschien nog een belangrijk detail dat ik eigenlijk nog vergeten was, de opzet was ook om de namen in de similar_text te zetten en te kijken of de naam er voor meer dan 90% op lijkt.

Ergens anders kreeg ik eigenlijk ook het advies om de vergelijking door de database te laten uitvoeren middels een FULL outer join. Alleen is eigenlijk dan dus mijn probleem hoe kan ik 2 tabellen met elkaar goed vergelijken welke een match hebben van meer dan 90%.
Iemand al suggesties voor mijn probleem??
Even samenvattend:
- 2 arrays met namen van +/- 10.000 stuks.
- 1 array is al volledig in geheugen aanwezig. (inlezen en opslaan van de cvs file)
- Vergelijken van lijst 1 of de naam in lijst 2 voorkomt.
- Als de naam voor 90% gelijk is, dan een match geven.
pi_57733699
quote:
Op maandag 31 maart 2008 00:10 schreef qu63 het volgende:

[..]

dat was ik!

heb je een bron daarvoor?
http://life.tweakers.net/(...)lers-voor-hyves.html

Edit: Ik bedoel:

http://www.9292ov.nl/9292ov1171.asp >> ( Location based services (KPN en Hi) )
  maandag 31 maart 2008 @ 11:49:24 #129
62215 qu63
..de tijd drinkt..
pi_57734058
quote:
Op maandag 31 maart 2008 11:32 schreef Geqxon het volgende:

[..]

http://life.tweakers.net/(...)lers-voor-hyves.html

Edit: Ik bedoel:

http://www.9292ov.nl/9292ov1171.asp >> ( Location based services (KPN en Hi) )
nu is het nog de vraag of kpn/hi LBS standaard doorgeeft, en hoe je het kan uitlezen..
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_57734159
quote:
Op maandag 31 maart 2008 11:49 schreef qu63 het volgende:

[..]

nu is het nog de vraag of kpn/hi LBS standaard doorgeeft, en hoe je het kan uitlezen..
Het lijkt me dat ze dat niet zomaar doen. Stel je voor dat Jamba achter mijn adres komt!
  maandag 31 maart 2008 @ 11:56:42 #131
62215 qu63
..de tijd drinkt..
pi_57734210
quote:
Op maandag 31 maart 2008 11:54 schreef Geqxon het volgende:

[..]

Het lijkt me dat ze dat niet zomaar doen. Stel je voor dat Jamba achter mijn adres komt!
alleen je locatie, en dan nog alleen als je mobielhun site bekijkt.

Maar idd is het wel wat privacygevoelig..
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  maandag 31 maart 2008 @ 13:06:11 #132
85514 ralfie
!Yvan eht nioj
pi_57735441
quote:
Op maandag 31 maart 2008 11:22 schreef ursel het volgende:

[..]

Iemand al suggesties voor mijn probleem?? O-) :')
Even samenvattend:
- 2 arrays met namen van +/- 10.000 stuks.
- 1 array is al volledig in geheugen aanwezig. (inlezen en opslaan van de cvs file)
- Vergelijken van lijst 1 of de naam in lijst 2 voorkomt.
- Als de naam voor 90% gelijk is, dan een match geven.
Lastig probleem, hangt van zoveel dingen af...

Misschien een idee om, als er veel namen 100% matchen, om eerst alle namen te zoeken die 100% matchen dmv =, en dan de rest dmv similar_text oid.

een voorbeeld kan dmv een temp tabel, waar je reeds gematchedte namen verwijdert zodat de query elke keer sneller zal gaan.
Je kunt dit deels in php doen, bijv (niet werkende code)
1
2
3
4
5
6
7
<?php
$lnames 
'"'join("', '",$names).'"';
mysql_query_blaat("select id from temp_table where name in ($lnames)");
mysql_query_blaat("delete from temp_table where id in ($allfoundids);
$names=array_dif($names, $allfoundnames);
//en doe dan de rest met similar_text oid
?>

Als dit niet lukt vanwege de max lengte van de SQL query, kun je met array_splice de query opsplitsen natuurlijk
pi_57736028
quote:
Op maandag 31 maart 2008 11:56 schreef qu63 het volgende:

[..]

alleen je locatie, en dan nog alleen als je mobielhun site bekijkt.

Maar idd is het wel wat privacygevoelig..
http://www.marketingfacts(...)tion_based_services/

Je kunt het dus gewoon bij KPN aanvragen.
  maandag 31 maart 2008 @ 14:28:00 #134
62215 qu63
..de tijd drinkt..
pi_57736998
quote:
Op maandag 31 maart 2008 13:39 schreef Geqxon het volgende:

[..]

http://www.marketingfacts(...)tion_based_services/

Je kunt het dus gewoon bij KPN aanvragen.
quote:
Flops heeft KPN na 8 maanden nog niet meegemaakt aangezien ze een redelijk uitgebreid proces hebben voordat je als Content Partner een LBS dienst mag aanbieden. Over elke dienst is heel goed nagedacht aangezien elke Content Partner eerst een storyboard (procesbeschrijving) moest aanleveren.
Dus voor mijn eigen weblogje denk ik niet dat ik in aanmerking kom
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  maandag 31 maart 2008 @ 14:32:47 #135
107951 JortK
Immer kwaliteitsposts
pi_57737100
quote:
Op maandag 31 maart 2008 14:28 schreef qu63 het volgende:

[..]


[..]

Dus voor mijn eigen weblogje denk ik niet dat ik in aanmerking kom
Storyboard maken zou ik zeggen
  maandag 31 maart 2008 @ 14:34:59 #136
62215 qu63
..de tijd drinkt..
pi_57737142
quote:
Op maandag 31 maart 2008 14:32 schreef JortK het volgende:

[..]

Storyboard maken zou ik zeggen
mja:
1) invoerpagina, locatie wordt meegestuurd
2) verwerking, locatie wordt omgezet naar google-maps locatie
3) leuk plaatje met allemaal stipjes waar ik een item toegevoegd heb

That's it
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  maandag 31 maart 2008 @ 14:45:22 #137
63192 ursel
"Het Is Hier Fantastisch!
pi_57737315
quote:
Op maandag 31 maart 2008 13:06 schreef ralfie het volgende:

[..]

Lastig probleem, hangt van zoveel dingen af...

Misschien een idee om, als er veel namen 100% matchen, om eerst alle namen te zoeken die 100% matchen dmv =, en dan de rest dmv similar_text oid.

een voorbeeld kan dmv een temp tabel, waar je reeds gematchedte namen verwijdert zodat de query elke keer sneller zal gaan.
Je kunt dit deels in php doen, bijv (niet werkende code)
[ code verwijderd ]

Als dit niet lukt vanwege de max lengte van de SQL query, kun je met array_splice de query opsplitsen natuurlijk
Met de filter op 80% heb ik maar 2% matches, wat ook maar de bedoeling is dat er maar weinig opstaan..
Op zich is het wel een idee om uit te werken.
Ga er ff mee aan de slag..
  maandag 31 maart 2008 @ 18:14:55 #138
187069 slacker_nl
Sicko pur sang
pi_57741629
Ben van het weekend mezelf wat meer gaan verdiepen in PHP.

Ik heb een klasse gemaakt, en die wilde ik aanroepen in een andere klasse, maar als ik dat doe krijg ik telkens de foutmelding:

Parse error: syntax error, unexpected T_NEW in /home/wesleys/sbox/php/lib/OPN/Config.php on line 12


In het kort:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
class OPNParameters {

        var 
$params;

        function 
__construct() {
                
$this->params = array();
        }

        function list() {
              return 
array_keys($this->params);
        }
?>


De klasse die daarvan gebruik van moet maken:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
class Config {

        function 
__construct() {

        }

        
# Problemen..
        
var $test = new OPNParameters;

        function 
test() {
                return new 
OPNParameters;
        }
?>


Zodra je de new OPNParameters niet in een functie zet, dan krijg je dus de error die ik hierboven beschreven heb.

Waarom is dit?
In theory there is no difference between theory and practice. In practice there is.
  maandag 31 maart 2008 @ 18:36:20 #139
85514 ralfie
!Yvan eht nioj
pi_57742147
vars buiten constructors en member-functies mogen alleen met statisch materiaal geladen worden (strings, integers, etc). Voor al het andere zijn constructors bedoeld
  maandag 31 maart 2008 @ 18:43:06 #140
187069 slacker_nl
Sicko pur sang
pi_57742274
Uhm.. een object in deze is net zo statisch als de string "hello world"..

als ik var $test = array () en/of $test = array( 1, 2, 3); in de Config klasse gooi dan parsed ie wel. Terwijl dat net zo dynamisch is als een klasse...
In theory there is no difference between theory and practice. In practice there is.
pi_57743114
quote:
Op maandag 31 maart 2008 18:43 schreef slacker_nl het volgende:
Uhm.. een object in deze is net zo statisch als de string "hello world"..

als ik var $test = array () en/of $test = array( 1, 2, 3); in de Config klasse gooi dan parsed ie wel. Terwijl dat net zo dynamisch is als een klasse...
PHP eist dat de standaardwaarde van een class member een constante expressie is. Dus "hello world" mag wel, maar "hello "."world" mag niet. Er zijn meer voorbeelden in de PHP manual. (Zie Example #3)
pi_57743659
Haha, daar heeft het mee te maken... OK. Heb dat stuk een paar keer gelezen, maar is niet bij me opgekomen. Thnx.
pi_57743675
Ik heb een vraagje!

Op een website heb ik een grafieken script die werkt met sessies. Wanneer script.php?ses=sessieID aanroept zal het plaatje gegenereerd worden. Echter wil ik graag middels het zelfde script een AREA's om deze afbeelding heen willen zetten middels een IMAGE MAP. Echter kan ik pas de posities van de AREA's lezen als de afbeelding is gegenereerd. Helaas kan ik niet het plaatje en de resultaten includen omdat het plaatje pas bij user actie geladen wordt en dan dus ook de AREA's pas gemaakt worden van het plaatje.

Nu vraag ik mij af, hoe is het simpel weg mogelijk om middels javascript een veld te vullen met data die pas gelezen wordt wanneer het plaatje geladen is!? en deze IMAGE map dan ook te laten functioneren!.

Anyone? (Als ik niet duidelijk genoeg ben, meld het dan dan probeer ik het beter uit te leggen)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_57745236
quote:
Op maandag 31 maart 2008 19:48 schreef Chandler het volgende:
Ik heb een vraagje!

Op een website heb ik een grafieken script die werkt met sessies. Wanneer script.php?ses=sessieID aanroept zal het plaatje gegenereerd worden. Echter wil ik graag middels het zelfde script een AREA's om deze afbeelding heen willen zetten middels een IMAGE MAP. Echter kan ik pas de posities van de AREA's lezen als de afbeelding is gegenereerd. Helaas kan ik niet het plaatje en de resultaten includen omdat het plaatje pas bij user actie geladen wordt en dan dus ook de AREA's pas gemaakt worden van het plaatje.

Nu vraag ik mij af, hoe is het simpel weg mogelijk om middels javascript een veld te vullen met data die pas gelezen wordt wanneer het plaatje geladen is!? en deze IMAGE map dan ook te laten functioneren!.

Anyone? (Als ik niet duidelijk genoeg ben, meld het dan dan probeer ik het beter uit te leggen)
Dit is het php-forum hoor
pi_57747116
Het heeft met PHP te maken (sessies) en de manier hoe ik dit het beste kan realiseren
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  maandag 31 maart 2008 @ 21:57:44 #146
85514 ralfie
!Yvan eht nioj
pi_57747331
quote:
Op maandag 31 maart 2008 19:48 schreef Chandler het volgende:
Ik heb een vraagje!

Op een website heb ik een grafieken script die werkt met sessies. Wanneer script.php?ses=sessieID aanroept zal het plaatje gegenereerd worden. Echter wil ik graag middels het zelfde script een AREA's om deze afbeelding heen willen zetten middels een IMAGE MAP. Echter kan ik pas de posities van de AREA's lezen als de afbeelding is gegenereerd. Helaas kan ik niet het plaatje en de resultaten includen omdat het plaatje pas bij user actie geladen wordt en dan dus ook de AREA's pas gemaakt worden van het plaatje.

Nu vraag ik mij af, hoe is het simpel weg mogelijk om middels javascript een veld te vullen met data die pas gelezen wordt wanneer het plaatje geladen is!? en deze IMAGE map dan ook te laten functioneren!.

Anyone? (Als ik niet duidelijk genoeg ben, meld het dan dan probeer ik het beter uit te leggen)
Ik zie niet in waarom je niet dezelfde informatie voor het genereren van je plaatje kunt gebruiken om de pagina met je IMAGE MAP te maken, maar als je geen andere uitweg ziet ben je gebonden aan ajax oid.
pi_57747726
ralfie, omdat het script die de afbeeldingen maakt de posities doorgeef die ik kan gebruiken om cirkels te maken in een IMAGE MAP.

En inderdaad, denk dat ik maar moet gaan spelen met XMLHTTP
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  dinsdag 1 april 2008 @ 11:21:17 #148
187069 slacker_nl
Sicko pur sang
pi_57757003
Ik zit met een "probleem".

In Perl kan ik hetvolgende doen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
sub functie_1 {
   my ($self, $args_1, $args_2, @overige_args) = @_;
   return functie_2(@overige_args);
#   of je doet dit:
#   my $self = shift;
#   my $args_1 = shift;
#   my $args_2 = shift;
#   return functie_2(@_);
}

sub functie_2 {
    my ($args1, $args2) = @_;
    return $args1 + $args2;
}


Echter in PHP is dit onmogelijk om te doen.

Met func_get_args() kan ik wel alle argumenten ophalen, en dan krijg ik een array terug, maar ik kan niet deze array doorgeven aan de volgende functie zoals in Perl.
Ik moet alle variablen uitspellen zodat ik ze daarna weer kan doorgeven aan de volgende functie.

1
2
3
4
5
6
7
8
9
10
11
<?php
fucntion functie_1
() {
   list(
$self$args1$args2$overige_args1$overige_args2) = func_get_args();
   return 
functie_2($overige_args1$overige_args2);
}

function 
functie_2() {
   list(
$args1$args2) = func_get_args();
   return 
$args1 $args2;
}
?>


Mijn vraag is, hoe lossen jullie dit op? Of hebben jullie hier geen problemen mee, omdat jullie het altijd op manier X doen..

--edit--

Never mind, de volgende code lost dit probleem op:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
function test_me() {
    
$args func_get_args();
    
call_user_func_array(test_me2$args);
}

function 
test_me2() {
    
$args func_get_args();
    
print_r($args);
}

test_me(12,3,4,5);
?>


1 ding stoor ik me nog wel aan, dat je func_get_* stuff niet kan uitvoeren om door te geven aan een functie. Je moet ten alle tijde een tijdelijke variable toekennen om die door te geven.

dus..

1
2
3
4
5
<?php
function test_me() {
     
call_user_func_array(test_me2func_get_args());
}
?>


Is niet geldige code..
Fatal error: func_get_args(): Can't be used as a function parameter in /home/wesleys/sbox/php/bin/x.php on line 32

[ Bericht 14% gewijzigd door slacker_nl op 01-04-2008 18:46:03 (perl functies in php is lelijk) ]
In theory there is no difference between theory and practice. In practice there is.
pi_57758794
quote:
Op maandag 31 maart 200822:13 schreef Chandler het volgende:
ralfie, omdat het script die de afbeeldingen maakt de posities doorgeef die ik kan gebruiken om cirkels te maken in een IMAGE MAP.

En inderdaad, denk dat ik maar moet gaan spelen met XMLHTTP
je kunt toch gewoon
1
2
3
<?php
echo "javascriptjavascriptlalal" $variable1 "nog meer javascript" $variable2
?>


enz doen?
pi_57759740
quote:
Op dinsdag 1 april 2008 12:53 schreef mcDavid het volgende:

[..]

je kunt toch gewoon
[ code verwijderd ]

enz doen?
Zou je zeggen inderdaad maar helaas, de posities worden pas gemaakt nadat de afbeelding is gegenereerd (ik zou ook de afbeelding 2x kunnen genenreren maar dat is een beetje onzin)

Heb het nu opgelost met xmlhttp (werkt nog niet infiref0x) zie http://test.ipcounter.nl/stat/ipcounter/datum.html en ga maar eens met je muis over de afbeelding heen (vooral daar waar rondjes te vinden zijn )
The people who lost my respect will never get a capital letter for their name again.
Like trump...
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')