abonnement Unibet Coolblue Bitvavo
pi_53313066
Ik heb een vraag over of bepaald gedrag van PHP nou een bug is of niet.

Het gedrag waar ik het over heb is als volgt:

Static lokale variabelen van een method worden tussen instanties van klasses gedeeld.

Ik vind dat zelf erg onlogisch. Laat ik er een beetje code bij gooien:

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
33
34
35
36
37
<?php
    
class foo {
        
        
public function bar($v '') {
            static 
$value;        
            if (!
$v) {
                return 
$value;
            }
            
            
$value $v;
            
            
// enz enz
        
        
}
    
    }
    
    
$henk = new foo();
    
$piet = new foo();

    
$henk->bar('Dit is een test');
    
$piet->bar('En dit is een tweede test');
    
    echo 
$henk->bar() . '<br>';
    echo 
$piet->bar();
    
    
/*
        Huidige Output:
        En dit is een tweede test
        En dit is een tweede test
        
        Naar mijn idee verwachte output:
        Dit is een test
        En dit is een tweede test
    
    */    
?>

Ik verwacht dat deze variabelen niet tussen instanties gedeeld zijn, omdat ik $value definieer als lokale variabelen van een method, niet als members van de klasse...

Is mijn verwachting nou verkeerd, of verwacht ik gewoon te veel van de OOP van php5?

[ Bericht 2% gewijzigd door Arjan321 op 19-09-2007 22:20:20 ]
pi_53321357
en wat nou als je er private van maakt?
Amsterdam, stad van hash en coke,
Waar de vrouwen zich vrouwelijk gedragen..
En de mannen ook..
pi_53322049
@Arjan321

Ik ben met je eens dat het enigzins onlogisch is. Maar waarom zou je in vredesnaam zo'n constructie gebruiken? Jouw static variabele is eigenlijk gewoon een class member. Zoals jij ze nu gebruikt zou je ze buiten OOP gebruiken, in losse functies bijvoorbeeld.
pi_53328975
quote:
Op donderdag 20 september 2007 10:35 schreef markiemark het volgende:
en wat nou als je er private van maakt?
Dan zou het huidige gedrag verwacht zijn.. Het zijn, vind ik, lokale variabelen van een method.
quote:
Op donderdag 20 september 2007 11:01 schreef JeRa het volgende:
@Arjan321

Ik ben met je eens dat het enigzins onlogisch is. Maar waarom zou je in vredesnaam zo'n constructie gebruiken?
Ik heb een class die het een en ander uitrekent / controleert (best zware berekeningen). Hij roept van al zijn members een method aan. De bedoeling was dan dat deze method zijn resultaat opslaat, zodat hij dat maar 1x hoeft te rekenen.. Ik kan het later dan direct opvragen. Doorgeslagen optimalisatie, wellicht.

Dit is natuurlijk deels uit luiheid om getX() functies te schrijven die het resultaat uit een private variabele exposen, maar het werkt op deze manier perfect, zolang je maar 1 instance hebt tenminste.

Ik ga denk ik maar het script aanpassen om __call() te overloaden.. Op die manier werken al die getX() functies automagisch..
quote:
Jouw static variabele is eigenlijk gewoon een class member. Zoals jij ze nu gebruikt zou je ze buiten OOP gebruiken, in losse functies bijvoorbeeld.
Ja precies. Ik zou helemaal met dit gedrag eens zijn, als ik de variabele gedeclareerd zou hebben als een class member.. wat ik, naar mijn inziens, niet doe..
pi_53330394
quote:
Op donderdag 20 september 2007 15:28 schreef Arjan321 het volgende:
Ik heb een class die het een en ander uitrekent / controleert (best zware berekeningen). Hij roept van al zijn members een method aan. De bedoeling was dan dat deze method zijn resultaat opslaat, zodat hij dat maar 1x hoeft te rekenen.. Ik kan het later dan direct opvragen. Doorgeslagen optimalisatie, wellicht.
Of het wel of niet doorgeslagen is maakt niet zoveel uit, het gaat erom dat het niet doet wat je ervan verwacht. Ik kan het denk ik wel verklaren; de methodes van een object zijn de methodes van een class en alleen voor de class members wordt bij een nieuw object geheugen vrijgemaakt om gegevens op te slaan.

Static variabelen in een functie zijn zichtbaar voor en blijven in de scope van die functie zolang de functie blijft bestaan. Aangezien je zodra je een class definieert ook de functies aanmaakt, heb je maar één static variabele voor alle instanties van die class.

Hoe het in C/C++ en andere talen werkt weet ik niet, maar dit lijkt me de meest logische verklaring. Maar wat is er mis met deze methode, welke ik persoonlijk niet eens lelijk vind?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
class Vector
{
    
private $cacheWaarde false;

    
public function getWaarde()
    {
        if (
$this->cacheWaarde !== false)
        {
            return 
$this->cacheWaarde;
        }
        
$this->cacheWaarde sin(.2);
        return 
$this->cacheWaarde;
    }
}
?>
pi_53331611
quote:
Op donderdag 20 september 2007 16:15 schreef JeRa het volgende:

[..]

Of het wel of niet doorgeslagen is maakt niet zoveel uit, het gaat erom dat het niet doet wat je ervan verwacht. Ik kan het denk ik wel verklaren; de methodes van een object zijn de methodes van een class en alleen voor de class members wordt bij een nieuw object geheugen vrijgemaakt om gegevens op te slaan.

Static variabelen in een functie zijn zichtbaar voor en blijven in de scope van die functie zolang de functie blijft bestaan. Aangezien je zodra je een class definieert ook de functies aanmaakt, heb je maar één static variabele voor alle instanties van die class.

Hoe het in C/C++ en andere talen werkt weet ik niet, maar dit lijkt me de meest logische verklaring. Maar wat is er mis met deze methode, welke ik persoonlijk niet eens lelijk vind?
[ code verwijderd ]
ANSI-C is uiteraard snel te zeggen, die ondersteund geen klasses.. heerlijke tijden Ik heb het eventjes getest in C++, en die heeft het zelfde gedrag als PHP.

Die oplossing is inderdaad dan de werkende oplossing. Nadeel daarvan is dat de method dan op de hoogte moet zijn van welke member hij controleert. En dat is extra typwerk, danwel aanpaswerk als er een nieuwe method bij komt.

Of is PHP pienter genoeg om te zeggen in welke method hij zit? Dat zou handig zijn
pi_53337313
Ik heb een probleempje met het uitlezen van data uit een xml bestand. Het XML bestand is als volgt:

1
2
3
4
5
6
7
8
<Verwachting dagnaam="vrijdag" dag="21" maandnaam="september" maand="9" jaar="2007" datum="20070921">
<minimumtemperatuur>14</minimumtemperatuur>
<maximumtemperatuur>20</maximumtemperatuur>
<windrichting>zw</windrichting>
<windsnelheid>3-5</windsnelheid>
<weersymbool>C</weersymbool>
<weersomschrijving>zwaar bewolkt</weersomschrijving>
</Verwachting>


En dat dan 5 keer. Al wil ik echter met de volgende code de data eruit halen dan werkt het niet: (in de code staat nu een teller , en die telt er maar 1 ipv 5.)

1
2
3
4
5
6
7
8
9
   $inhoud = file_get_contents($vijfdaags);
   $inhoud = explode('<verwachting>', $inhoud);
   $teller = 0;
   foreach($inhoud as $verwachting) {
   
   $teller++;
   
   }
   echo $teller;


Weet iemand wat het probleem is? Ik denk zelf omdat er ook de dag en maand enz. in de <verwachting> tag staat. Hoe los ik dit op?
  donderdag 20 september 2007 @ 20:39:52 #108
32768 DionysuZ
Respect my authority!
pi_53338046
quote:
Op donderdag 20 september 2007 20:14 schreef broodmonkeh het volgende:
Ik heb een probleempje met het uitlezen van data uit een xml bestand. Het XML bestand is als volgt:
[ code verwijderd ]

En dat dan 5 keer. Al wil ik echter met de volgende code de data eruit halen dan werkt het niet: (in de code staat nu een teller , en die telt er maar 1 ipv 5.)
[ code verwijderd ]

Weet iemand wat het probleem is? Ik denk zelf omdat er ook de dag en maand enz. in de <verwachting> tag staat. Hoe los ik dit op?
Op die manier gaat het inderdaad niet lukken. Ten eerste staat er een hoofdletter in het begin van Verwachting en ten tweede staat er meer info in. Explode werkt met exact strings. Met PHP kun je xml parsen. http://nl3.php.net/xml
□ 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
  vrijdag 21 september 2007 @ 21:12:01 #109
37634 wobbel
Da WoBBeL King
pi_53366685
Ik heb een tabel Winamp_Tracks waarin alle tracks staan die ik in Winamp heb.

De tabel Winamp_History geeft aan welke nummers ik allemaal gespeeld heb incl. de datum


Winamp_Tracks
1 - K3 - Oya LeLe
2 - Bob Sinclar - w00t
3 - Peter Gelderblom - Waiting 4


Winamp_History
1 - 1 - 10035235
2 - 3 - 100357837
3 - 1 - 10035375
4 - 3 - 100321295
5 - 2 - 10033242
6 - 3 - 10033206

Nu wil ik dus een query zodat ik onderstaande lijstje kan krijgen

K3 Oya LeLe - 2 keer afgespeeld
Bob Sinclaar w00t - 1 keer afgespeeld
Peter Gelderblom waiting 4 - 3 keer afgespeeld

Ik heb btw al onderstaande, maar klopt niet

1SELECT t.Artist, t.Title, COUNT(h.IdHistory) as Winamp_History FROM Winamp_Tracks n LEFT JOIN Winamp_History v ON h.IdHistory
pi_53368336
zoiets?

SELECT t.Artist, t.Title, COUNT(h.IdHistory) as aantal FROM Winamp_Tracks t LEFT JOIN Winamp_History h ON h.song_id = t.song_id

Je geeft de inhoud terwijl de database layout zinvoller was
pi_53368859
Je moet ook nog een GROUP BY toevoegen voor alle kolommen in die in de SELECT staan maar waar geen agregate functie (zoals count()) op staat.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_53381410
Ik heb een leuk berekenings vraagje

Voor een site wil ik gaan werken met een template voor afbeeldingen. Deze template is alleen de 'border' rondom het plaatje. Nu heeft deze rare maten.

normaal = 121 x 92
klein = 92 x 69

Hoe kan ik zorgen dat alle afbeeldingen er juist in komen te staan qua verkleining? anyone?

ps en dan voor te stellen dat een afbeelding bv

640x480
800x600
1024x800
etc zijn?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  zaterdag 22 september 2007 @ 15:21:19 #113
37634 wobbel
Da WoBBeL King
pi_53381529
quote:
Op zaterdag 22 september 2007 15:15 schreef Chandler het volgende:
Ik heb een leuk berekenings vraagje

Voor een site wil ik gaan werken met een template voor afbeeldingen. Deze template is alleen de 'border' rondom het plaatje. Nu heeft deze rare maten.

normaal = 121 x 92
klein = 92 x 69

Hoe kan ik zorgen dat alle afbeeldingen er juist in komen te staan qua verkleining? anyone?

ps en dan voor te stellen dat een afbeelding bv

640x480
800x600
1024x800
etc zijn?
dan moet je de verhouding uitrekenen en daarmee kan je alles herberekenen.
pi_53382368
quote:
Op zaterdag 22 september 2007 15:15 schreef Chandler het volgende:
Ik heb een leuk berekenings vraagje

Voor een site wil ik gaan werken met een template voor afbeeldingen. Deze template is alleen de 'border' rondom het plaatje. Nu heeft deze rare maten.

normaal = 121 x 92
klein = 92 x 69

Hoe kan ik zorgen dat alle afbeeldingen er juist in komen te staan qua verkleining? anyone?

ps en dan voor te stellen dat een afbeelding bv

640x480
800x600
1024x800
etc zijn?
Met bijvoorbeeld PHPThumb de afbeeldingen herschalen en automatisch het overtollige gedeelte laten wegsnijden.
pi_53383900
Ja maar overtollig is niet altijd handig hé.

Ik heb even wat voorbeelden gemaakt.


.

.

.

.

.

.

.


maar vind vooral afbeelding 2 en 4 niet mooi. Wanneer ik ga snijden in deze foto's ziet het er helemaal niet meer uit juist omdat de afbeeldingen dan echt een groot stuk missen

ps, ik ben niet een van de gozerts op deze afbeeldingen echt niet

[ Bericht 3% gewijzigd door Chandler op 22-09-2007 17:20:25 ]
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_53384986
Met PHPThumb kun je alles (!) op het gebied van afbeeldingen bewerken.

Je kunt dus ook de afbeelding zo herschalen dat 'ie binnen het frame past (met vervorming), schalen totdat 'ie in het frame past en overtollige gedeelten laten wegvallen of schalen totdat 'ie in het frame past en de overgebleven ruimte opvullen met een vaste kleur of transparatie (indien GIF).

Bekijk de demo pagina maar eens: http://phpthumb.sourceforge.net/demo/demo/phpThumb.demo.demo.php

Vooral voorbeelden 17, 19, 22 en 23 zijn wel interessant voor je denk ik.
  zondag 23 september 2007 @ 10:48:55 #117
159979 G.Fawkes
Libera eas de ore leonis!
pi_53400373
Ik gebruik wamp om torrentflux te gebruiken. Nu moet er buiten de www map weggeschreven worden. En omdat die waarschijnlijk niet kan, krijg ik deze foutmeldingen:

1
2
3
4
5
6
7
Warning: mkdir() [function.mkdir]: Invalid argument in C:wwwtorrentfluxfunctions.php on line 865

Warning: disk_total_space() [function.disk-total-space]: The filename, directory name, or volume label syntax is incorrect. in C:wwwtorrentfluxfunctions.php on line 874

Warning: disk_free_space() [function.disk-free-space]: The filename, directory name, or volume label syntax is incorrect. in C:wwwtorrentfluxfunctions.php on line 875

Warning: Division by zero in C:wwwtorrentfluxfunctions.php on line 878


Ik heb geprobeerd om via windows verkenner de read-only rights weg te halen maar daar heeft het blijkbaar niet veel mee te maken...
pi_53400582
quote:
Op zaterdag 22 september 2007 15:15 schreef Chandler het volgende:
Ik heb een leuk berekenings vraagje

Voor een site wil ik gaan werken met een template voor afbeeldingen. Deze template is alleen de 'border' rondom het plaatje. Nu heeft deze rare maten.

normaal = 121 x 92
klein = 92 x 69

Hoe kan ik zorgen dat alle afbeeldingen er juist in komen te staan qua verkleining? anyone?

ps en dan voor te stellen dat een afbeelding bv

640x480
800x600
1024x800
etc zijn?
Er zijn allerlei libs verkrijgbaar om afbeeldingen op deze gewenste manier te bewerken, maar je kunt het zelf ook vrij eenvoudig doen met behulp van de standaard GD2 functies. Het komt er dan op neer dat je de afbeelding verkleind en eventueel de gewenste uitsnede maakt.
pi_53401274
quote:
Op zaterdag 22 september 2007 17:14 schreef Chandler het volgende:
Ja maar overtollig is niet altijd handig hé.

Ik heb even wat voorbeelden gemaakt.

[afbeelding]
.
[afbeelding]
.
[afbeelding]
.
[afbeelding]
.
[afbeelding]
.
[afbeelding]
.
[afbeelding]
.
[afbeelding]

maar vind vooral afbeelding 2 en 4 niet mooi. Wanneer ik ga snijden in deze foto's ziet het er helemaal niet meer uit juist omdat de afbeeldingen dan echt een groot stuk missen

ps, ik ben niet een van de gozerts op deze afbeeldingen echt niet
Ja, maar daar is vrij weinig aan te doen als je alle thumbs in landscape wilt hebben. Je zou de portrait-foto's zo kunnen snijden dat ze als landscape-thumb te zien worden, maar dan zul je onder en boven veel moeten wegknippen. Bij sommige foto's geen probleem, bij andere weer niet.
pi_53401368
quote:
Op zondag 23 september 2007 10:48 schreef G.Fawkes het volgende:
Ik gebruik wamp om torrentflux te gebruiken. Nu moet er buiten de www map weggeschreven worden. En omdat die waarschijnlijk niet kan, krijg ik deze foutmeldingen:
[ code verwijderd ]

Ik heb geprobeerd om via windows verkenner de read-only rights weg te halen maar daar heeft het blijkbaar niet veel mee te maken...
Volgens mij heeft het niets met rechten te maken, in windows heb je vrijwel alle rechten (behalve indien anders ingesteld) om te schrijven.

(simpel te testen door via een php bestand een map oid proberen aan te maken)
  zondag 23 september 2007 @ 13:27:26 #121
84926 WyriHaximus
Release the hounds smithers!
pi_53403634
quote:
Op zondag 23 september 2007 10:48 schreef G.Fawkes het volgende:
Ik gebruik wamp om torrentflux te gebruiken. Nu moet er buiten de www map weggeschreven worden. En omdat die waarschijnlijk niet kan, krijg ik deze foutmeldingen:
[ code verwijderd ]

Ik heb geprobeerd om via windows verkenner de read-only rights weg te halen maar daar heeft het blijkbaar niet veel mee te maken...
Heb je de config van torenflux aangepast? Of post hem hier ff .
phluphy for president!
  zondag 23 september 2007 @ 15:02:56 #122
62215 qu63
..de tijd drinkt..
pi_53406284
Mijn script:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
for ($i 1$i <= 1$i++) {
//De pagina openen
$handle file_get_contents("http://www.queenconcerts.com/detail/live/".$i."/");
//De titel opzoeken
preg_match_all('/<caption>(.*?)</caption>/'$handle $matches);
//De : uit de titel halen en vervangen omdat Windows zeurt
$filename preg_replace('/:/',' =',$matches[0][0]);
//Inhoud wegschrijven naar bestand
fwrite($matches[0][0].".html"file_get_contents("http://www.queenconcerts.com/detail/live/".$i."/"));
//Link sluiten
fclose($handle);
}
?>


Mijn foutmeldingen:
1
2
3
Warning: fwrite(): supplied argument is not a valid stream resource in C:webwwwhomequ63Queenconcertsindex.php on line 10

Warning: fclose(): supplied argument is not a valid stream resource in C:webwwwhomequ63Queenconcertsindex.php on line 12


Wat klopt er dan niet?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 23 september 2007 @ 15:06:38 #123
84926 WyriHaximus
Release the hounds smithers!
pi_53406373
quote:
Op zondag 23 september 2007 15:02 schreef qu63 het volgende:
Mijn script:
[ code verwijderd ]

Mijn foutmeldingen:
[ code verwijderd ]

Wat klopt er dan niet?
Lees deze eens door .:
http://nl3.php.net/fopen
http://nl3.php.net/fwrite
http://nl3.php.net/fclose
phluphy for president!
  zondag 23 september 2007 @ 15:24:25 #124
62215 qu63
..de tijd drinkt..
pi_53407052
quote:
Dat had ik al gedaan, toen kwam ik er niet meer uit en probeerde ik het hier
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_53407170
quote:
Op zondag 23 september 2007 15:02 schreef qu63 het volgende:
Mijn script:
[ code verwijderd ]

Mijn foutmeldingen:
[ code verwijderd ]

Wat klopt er dan niet?
In ieder geval klopt de $handle variabele niet. Fclose() verwacht een file handle, maar file_get_contents() geeft geen file handle terug, maar een string. Waarschijnlijk heeft ook de fout met fwrite() hier mee te maken.
  zondag 23 september 2007 @ 15:31:51 #126
84926 WyriHaximus
Release the hounds smithers!
pi_53407258
quote:
Op zondag 23 september 2007 15:24 schreef qu63 het volgende:

[..]

Dat had ik al gedaan, toen kwam ik er niet meer uit en probeerde ik het hier
fwrite en fclose werken alleen in combinatie met fopen ! Probeer anders eens file_put_contents ipv fwrite en fclose .
phluphy for president!
  zondag 23 september 2007 @ 15:34:25 #127
84926 WyriHaximus
Release the hounds smithers!
pi_53407353
quote:
Op zondag 23 september 2007 15:28 schreef floris.exe het volgende:

[..]

In ieder geval klopt de $handle variabele niet. Fclose() verwacht een file handle, maar file_get_contents() geeft geen file handle terug, maar een string. Waarschijnlijk heeft ook de fout met fwrite() hier mee te maken.
Zie post hier boven . Ze werken ook met fsockopen trouwens .


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
define
('FILE_APPEND', 1);
function
file_put_contents($n, $d, $flag = false) {
    
$mode = ($flag == FILE_APPEND || strtoupper($flag) == 'FILE_APPEND') ? 'a' : 'w';
    
$f = @fopen($n, $mode);
    if (
$f === false) {
        return
0;
    } else {
        if (
is_array($d)) $d = implode($d);
        
$bytes_written = fwrite($f, $d);
        
fclose($f);
        return
$bytes_written;
    }
}
?>
Voor als file_put_contents niet bestaat voor je .
phluphy for president!
  zondag 23 september 2007 @ 15:45:52 #128
62215 qu63
..de tijd drinkt..
pi_53407706
quote:
Op zondag 23 september 2007 15:28 schreef floris.exe het volgende:

[..]

In ieder geval klopt de $handle variabele niet. Fclose() verwacht een file handle, maar file_get_contents() geeft geen file handle terug, maar een string. Waarschijnlijk heeft ook de fout met fwrite() hier mee te maken.
thanks!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
for ($i 1$i <= 1$i++) {
//De pagina openen
$html file_get_contents("http://www.queenconcerts.com/detail/live/".$i."/","r");
//De titel opzoeken
preg_match_all('/<caption>(.*?)</caption>/'$html $matches);
//De : uit de titel halen en vervangen omdat Windows zeurt
$filename preg_replace('/:/',' -',$matches[1][0]);
$filename $filename.".html";
//Inhoud wegschrijven naar bestand, eerst maken/opene
$handle fopen($filename,"w+");
//dan schrijven
fwrite($handle$html);
//En dan sluiten
fclose($handle);
}
?>
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_53409468
gewoon benieuwd, waarom die for-loop die maar 1 keer loop't?
  zondag 23 september 2007 @ 16:49:45 #130
62215 qu63
..de tijd drinkt..
pi_53409547
quote:
Op zondag 23 september 2007 16:45 schreef the_disheaver het volgende:
gewoon benieuwd, waarom die for-loop die maar 1 keer loop't?
omdat het om te testen was

Hij moet in totaal 1770 keer lopen, maar had geen zin om steeds te wachten tot ie klaar was met draaien, 1x is tenslotte sneller dan 1770 keer
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 23 september 2007 @ 17:41:35 #131
84926 WyriHaximus
Release the hounds smithers!
pi_53410666
quote:
Op zondag 23 september 2007 16:49 schreef qu63 het volgende:

[..]

omdat het om te testen was

Hij moet in totaal 1770 keer lopen, maar had geen zin om steeds te wachten tot ie klaar was met draaien, 1x is tenslotte sneller dan 1770 keer
Dan comment ik zelf meestal de loop uit .
phluphy for president!
pi_53411615
Ik maak mijn sites nu altijd door dingen te include, daaruit komt $header en $body, en die worden in de layout geprint.
Dit is niet echt de handigste manier en dus wou ik iets met classes gaan doen.
Ik weet wel hoe ze werken, maar ik kan ze niet echt goed implementeren..
Ik heb bijvoorbeeld een sql class, en moet ik dan al mijn andere classes daarop enten?
Hoe word mijn directory structuur? Wat bepaald welke functies worden aangeroepen, gewoon de index.php of een aparte class? enz enz..
  zondag 23 september 2007 @ 18:48:57 #133
62215 qu63
..de tijd drinkt..
pi_53412026
quote:
Op zondag 23 september 2007 17:41 schreef WyriHaximus het volgende:

[..]

Dan comment ik zelf meestal de loop uit .
ach, nu hoefde ik maar 1 cijfer te veranderen als ik ff wilde testen met meerdere concerten
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 23 september 2007 @ 18:56:21 #134
84926 WyriHaximus
Release the hounds smithers!
pi_53412192
quote:
Op zondag 23 september 2007 18:48 schreef qu63 het volgende:

[..]

ach, nu hoefde ik maar 1 cijfer te veranderen als ik ff wilde testen met meerdere concerten
Ja kan ook,is persoonlijke voorkeur .
phluphy for president!
pi_53413312
edit: ehhhh.... laat maar
  zondag 23 september 2007 @ 23:17:34 #136
167671 Hijacking
wat is je probleem ?
pi_53419879
Kan iemand mij helpen
Op school werken wij met Oracle SQL Plus
Nu heb ik na heel wat pogingen eindelijk sql plus op mijn pc zitten alleen weet ik niet wat mijn gebruikersnaam , ww + host string voor de eerste keer inloggen is kan iemand mij daarme helpen ?
happen naar de baas
pi_53420238
Problemen met Oracle SQL Plus lijkt me iets voor een eigen topic.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  maandag 24 september 2007 @ 10:26:34 #138
167671 Hijacking
wat is je probleem ?
pi_53425849
jah daar was ik ook bang voor
happen naar de baas
pi_53426589
Ik kan je niet verder helpen Hijacking, maar op zich is dit toch niet het verkeerde topic SuperRembo? Het is PHP en (My)SQL voor dummies, dus niet alleen voor problemen met MySQL
pi_53426732
vraagje.. ik heb een keyword als url variabele: bijvoorbeeld

http://www.site.nl?keyword=zwarte_mercedes_clk

ik heb ook een array met automerken: bijvoorbeeld
$merken = array('mercedes', 'audi', 'bmw', 'ferrari', 'opel', 'volkswagen');

nu wil ik controleren of er een waarde uit de url variabele keyword voorkomt in de array. het keyword heeft geen vaste structuur omdat dit een zoekopdracht is.

hoe kan ik dit controleren?
Amsterdam, stad van hash en coke,
Waar de vrouwen zich vrouwelijk gedragen..
En de mannen ook..
pi_53427246
quote:
Op maandag 24 september 2007 11:04 schreef markiemark het volgende:
vraagje.. ik heb een keyword als url variabele: bijvoorbeeld

http://www.site.nl?keyword=zwarte_mercedes_clk

ik heb ook een array met automerken: bijvoorbeeld
$merken = array('mercedes', 'audi', 'bmw', 'ferrari', 'opel', 'volkswagen');

nu wil ik controleren of er een waarde uit de url variabele keyword voorkomt in de array. het keyword heeft geen vaste structuur omdat dit een zoekopdracht is.

hoe kan ik dit controleren?
Je zou de keyword string uit de URL kunnen opdelen in een array op basis van een scheidingskarakter. In jouw voorbeeld zie ik in de URL variabele een aantal keer een underscore staan. Is dat in feite een spatie? Volgens mij wordt een spatie bij URL encoding standaard omgezet naar een +, wat in jouw geval dan zou opleveren: zwarte+mercedes+clk.

In ieder geval zou het dan op het volgende neerkomen (uit de losse pols):
1
2
3
<?php
$search_query 
split('+'$_GET["keyword"]);
?>

En vervolgens match je dan ieder element in $search_query met ieder element in $merken. Bijvoorbeeld op de volgende manier:
1
2
3
4
5
<?php
$match 
false;
if(
count(array_intersect($merken$search_query)) > 0)
     
$match true;
?>
  maandag 24 september 2007 @ 11:26:10 #142
84926 WyriHaximus
Release the hounds smithers!
pi_53427449
quote:
Op maandag 24 september 2007 11:04 schreef markiemark het volgende:
vraagje.. ik heb een keyword als url variabele: bijvoorbeeld

http://www.site.nl?keyword=zwarte_mercedes_clk

ik heb ook een array met automerken: bijvoorbeeld
$merken = array('mercedes', 'audi', 'bmw', 'ferrari', 'opel', 'volkswagen');

nu wil ik controleren of er een waarde uit de url variabele keyword voorkomt in de array. het keyword heeft geen vaste structuur omdat dit een zoekopdracht is.

hoe kan ik dit controleren?
1
2
3
<?php
if(isset($_GET['keyword']) && isset($merken[$_GET['keyword']]))
?>
Zoiets? :)
quote:
Op zondag 23 september 2007 23:17 schreef Hijacking het volgende:
Kan iemand mij helpen
Op school werken wij met Oracle SQL Plus
Nu heb ik na heel wat pogingen eindelijk sql plus op mijn pc zitten alleen weet ik niet wat mijn gebruikersnaam , ww + host string voor de eerste keer inloggen is kan iemand mij daarme helpen ?
Vraag het aan je leeraar ;). Aan je connect string kan niemand je hier helpen omdat dat per server verschilt ;). En username en wachtwoord weten wij ook niet, zul je toch echt bij je leeraar of in je opdracht lezen :). (Tenzij je met een eigen server install zit dan hoor je dat te weten :P.)
quote:
Op zondag 23 september 2007 18:30 schreef Scriptha het volgende:
Ik maak mijn sites nu altijd door dingen te include, daaruit komt $header en $body, en die worden in de layout geprint.
Dit is niet echt de handigste manier :P en dus wou ik iets met classes gaan doen.
Ik weet wel hoe ze werken, maar ik kan ze niet echt goed implementeren..
Ik heb bijvoorbeeld een sql class, en moet ik dan al mijn andere classes daarop enten?
Hoe word mijn directory structuur? Wat bepaald welke functies worden aangeroepen, gewoon de index.php of een aparte class? enz enz..
:?
Dat is het leuke van zelf iets ontwerpen/programmeren: Je mag het allemaal zelf bedenken :P. Probeer gewoon wat te maken en zie waar je komt en je merkt vanzelf of je het handig vind of niet. Misschien is http://cakephp.org/ wat voor je. Veel dingen zitten er al in, die jij zoekt (mits ik je enig wanhopige overkomende post goed begrepen heb) denk ik :).
phluphy for president!
pi_53427523
quote:
Op zondag 23 september 2007 23:17 schreef Hijacking het volgende:
Kan iemand mij helpen
Op school werken wij met Oracle SQL Plus
Nu heb ik na heel wat pogingen eindelijk sql plus op mijn pc zitten alleen weet ik niet wat mijn gebruikersnaam , ww + host string voor de eerste keer inloggen is kan iemand mij daarme helpen ?
Vaak is dat zoiets als admin en admin, of alleen admin en geen wachtwoord. Is er geen documentatie te vinden op het internet? Het lijkt mij toch wel dat er ergens iets te vinden is over het initiële account van zo'n databaseserver?
pi_53428622
quote:
Op maandag 24 september 2007 11:04 schreef markiemark het volgende:
vraagje.. ik heb een keyword als url variabele: bijvoorbeeld

http://www.site.nl?keyword=zwarte_mercedes_clk

ik heb ook een array met automerken: bijvoorbeeld
$merken = array('mercedes', 'audi', 'bmw', 'ferrari', 'opel', 'volkswagen');

nu wil ik controleren of er een waarde uit de url variabele keyword voorkomt in de array. het keyword heeft geen vaste structuur omdat dit een zoekopdracht is.

hoe kan ik dit controleren?
This will do:
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
// place the existing keywords from database in array
$keywords = array();
$key_counter 0;
$query "SELECT keyword, banner, logo FROM keywords;";
$result mysql_query($query);
$db_keywords mysql_num_rows($result);
while(list(
$keyword$banner$logo) = mysql_fetch_row($result)){
    
$keywords[$key_counter]['keyword'] = $keyword;
    
$keywords[$key_counter]['banner'] = $banner;
    
$keywords[$key_counter]['logo'] = $logo;
    
$key_counter++;
}

// setting up the keyword
if (isset($_GET['kwd'])){
    
$keyword $_GET['kwd'];
}else{
    
$keyword "no_keyword";
}
$keyword str_replace(" ""_"$keyword);
$keyword str_replace(" ""_"$keyword);
$keyword str_replace("%20""_"$keyword);
$keyword explode("_"$keyword);

// array filled with found keywords
$found_keys = array();
$found_keys_cnt 0;

// loop with separated url variabele keywords
for ($i=1$i<=count($keyword); $i++){
    
// loop with keywords from database
    
for ($j=0$j<=$db_keywords-1$j++){
        if (
$keyword[$i-1] == $keywords[$j]['keyword']){
            
$found_keys[$found_keys_cnt] = $keywords[$j]['keyword'];
            
$found_keys_cnt++;
            break;
        }
    }
}

// pick first value from array
if (count($found_keys) > 0){
    
$keyword $found_keys[0];
}else{
    
$keyword "default";
}
?>


Niet de meest efficiente manier, maar het werkt..
Amsterdam, stad van hash en coke,
Waar de vrouwen zich vrouwelijk gedragen..
En de mannen ook..
pi_53432462
quote:
Op maandag 24 september 2007 10:59 schreef JeRa het volgende:
Ik kan je niet verder helpen Hijacking, maar op zich is dit toch niet het verkeerde topic SuperRembo? Het is PHP en (My)SQL voor dummies, dus niet alleen voor problemen met MySQL
Niet echt verkeerd, maar de kans dat ie geholpen wordt lijkt me met een los topic groter. Het heeft ook niet met PHP en MySQL te maken, en ook niet echt met SQL.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_53432556
quote:
Op maandag 24 september 2007 14:44 schreef SuperRembo het volgende:

[..]

Niet echt verkeerd, maar de kans dat ie geholpen wordt lijkt me met een los topic groter. Het heeft ook niet met PHP en MySQL te maken, en ook niet echt met SQL.
Oracle SQL Plus eerste keer inloggen.
  maandag 24 september 2007 @ 14:55:49 #147
107951 JortK
Immer kwaliteitsposts
pi_53432716
quote:
Op maandag 24 september 2007 14:44 schreef SuperRembo het volgende:

[..]

Niet echt verkeerd, maar de kans dat ie geholpen wordt lijkt me met een los topic groter. Het heeft ook niet met PHP en MySQL te maken, en ook niet echt met SQL.
Ik ben het met je eens Superrembo
  Redactie Sport maandag 24 september 2007 @ 20:47:55 #148
102433 crew  dennistd
FOK!sport *O*
pi_53442813
wat doe ik hier aan fout?

1SELECT g.ID,g.naam,s.beschrijving FROM ogames AS g, spelvdweek AS s WHERE g.ID = s.spel_id ORDER BY s.datum DESC LIMIT 1


ogames:
1
2
ID   link                     naam             datum       
327   http://www.papalouie.com/games/papa_freeversion.swf    Papa Louie Pizza Game    2007-04-20 19:36:46


spelvdweek:
1
2
id   spel_id      datum         beschrijving
1   327      2006-01-11 16:40:08   In dit spel moet je tijdens een race<br>auto's tot...
PM mij!
Disclaimer: Mijn posts worden geschreven als user, en niet als crew, tenzij dit duidelijk wordt aangegeven
pi_53443141
Ik ben bezig om 2 queries te maken om (de ID van) het vorige en volgende record uit een lijst te selecteren. Op zich is dit niet zo ingewikkeld, als je het op ID sorteert bijvoorbeeld.

Nu heb ik een lijst die gesorteerd is op achternaam, voornaam. Op zich gaat het dan nog steeds goed, totdat ik twee records krijg die zowel dezelfde voornaam als achternaam hebben. Als ik dan vorige of volgende klik biljf ik tussen deze twee records wisselen.

In de praktijk is de kans hierop natuurlijk erg klein, maar het is toch niet fijn. Iemand enig idee hoe ik dit kan omzeilen?
  maandag 24 september 2007 @ 21:02:55 #150
85514 ralfie
!Yvan eht nioj
pi_53443404
quote:
Op maandag 24 september 2007 20:47 schreef dennistd het volgende:
wat doe ik hier aan fout?
[ code verwijderd ]

ogames:
[ code verwijderd ]

spelvdweek:
[ code verwijderd ]
Beide 'AS' moeten eruit, dan werkt het wel. AS is om data te hernoemen, niet om tabellen een lettertje te geven
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')