abonnement Unibet Coolblue Bitvavo
pi_65621320

cd niet bijgeleverd

Als je vragen hebt over PHP/MySQL, dan zit je hier goed met een vaste kliek guru's en een groot aantal regelmatige bezoekers. Beperk je vragen niet tot "hij doet het niet" of "hij geeft een fout" - onze glazen bol is kapot en we willen graag van je weten wát er niet lukt en wélke foutmelding je precies krijgt

Vorige delen:
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, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,65, 66, 67

Zie ook:
  • PHP Dataverwerking
  • Officiële PHP website
  • PHP Documentatie
  • MySQL Reference Manual
  • Yet Another PHP Faq
  • PHP Cheat Sheet
  • PHP5 Power Programming - boek met uitleg over OOP, Pear, XML, etc

    Tutorials:
  • W3Schools PHP
  • W3Schools SQL

    Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP

    [ Bericht 49% gewijzigd door Light op 01-02-2009 13:40:49 ]
  •   zondag 1 februari 2009 @ 13:33:32 #2
    75592 GlowMouse
    l'état, c'est moi
    pi_65621442
    Sorry, zag niet dat het pagina zeven was.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65621566
    tvp zal vast wel meer vragen hebben
    Redacted
    pi_65621800
    quote:
    Op zondag 1 februari 2009 13:33 schreef GlowMouse het volgende:
    Sorry, zag niet dat het pagina zeven was.
    Kan gebeuren
    pi_65624417
    tvp
    Bodybuilding #1
    Hardlopen #2
      zondag 1 februari 2009 @ 15:35:26 #6
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_65626054
    Present..
    pi_65628315
    Ik heb een vraag (alweer :@)
    het resultaat van deze query:
    1SELECT actief FROM tbl_test WHERE id =  ".$id 

    is een 0 of een 1. Die wil ik omkeren en dan terug in de DB proppen:
    1UPDATE tbl_test SET actief = ".$actief." WHERE id = ".$id


    Ik krijg het niet voor elkaar. Kan ik dit in één query doen? Ik weet hoe een subquery werkt, maar hoe ik een 0 in een 1 kan omtoveren met een subquery weet ik niet. Kan dat sowieso wel?
      zondag 1 februari 2009 @ 16:45:30 #8
    75592 GlowMouse
    l'état, c'est moi
    pi_65628350
    1"UPDATE tbl_test SET actief = 1-actief WHERE id=" . $id

    Moet je wel zeker weten dat actief altijd 0 of 1 is

    Groetjes,
    GlowMouse
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65628697
    quote:
    Op zondag 1 februari 2009 16:45 schreef GlowMouse het volgende:

    [ code verwijderd ]

    Moet je wel zeker weten dat actief altijd 0 of 1 is

    Groetjes,
    GlowMouse
    stel het gaat om leden en je wil meerdere rijen bijwerken. hoe gaat dit dan in zijn werking?

    1 ophaal query
    2 aanpassen in html bvb lid is van actief naar inactief.
    3 alles in $_POST dingen?
    en for each ( $_POST[status] update query? ?
    Redacted
      zondag 1 februari 2009 @ 16:59:34 #10
    75592 GlowMouse
    l'état, c'est moi
    pi_65628788
    Alle id's in een arraytje stoppen, imploden op een komma, en WHERE id IN(" . $ids . ")" gebruiken. Zeker bij MyISAM moet je zoveel mogelijk in één UPDATE-query doen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      zondag 1 februari 2009 @ 17:02:39 #11
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_65628864
    quote:
    Op zondag 1 februari 2009 16:59 schreef GlowMouse het volgende:
    Alle id's in een arraytje stoppen, imploden op een komma, en WHERE id IN(" . $ids . ")" gebruiken. Zeker bij MyISAM moet je zoveel mogelijk in één UPDATE-query doen.
    Hoezo zeker bij MyISAM??
      zondag 1 februari 2009 @ 17:06:00 #12
    75592 GlowMouse
    l'état, c'est moi
    pi_65628986
    quote:
    Op zondag 1 februari 2009 17:02 schreef ursel het volgende:

    [..]

    Hoezo zeker bij MyISAM??
    Omdat je bij MyISAM voor iedere UPDATE-query de table lockt en daarvoor op alle SELECT-queries moet wachten en zowel tijdens het wachten als tijdens het updaten alle nieuwe SELECT-queries laat wachten. Dat ga je merken als je wat meer bezoekers hebt.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65629071
    quote:
    Op zondag 1 februari 2009 16:45 schreef GlowMouse het volgende:

    [ code verwijderd ]

    Moet je wel zeker weten dat actief altijd 0 of 1 is

    Groetjes,
    GlowMouse
    Thanks! Ik wist niet dat dat ook op die manier kan met een update query! Tof, wel!
      zondag 1 februari 2009 @ 17:09:26 #14
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_65629078
    quote:
    Op zondag 1 februari 2009 17:06 schreef GlowMouse het volgende:

    [..]

    Omdat je bij MyISAM voor iedere UPDATE-query de table lockt en daarvoor op alle SELECT-queries moet wachten en zowel tijdens het wachten als tijdens het updaten alle nieuwe SELECT-queries laat wachten. Dat ga je merken als je wat meer bezoekers hebt.
    Ok, dat wisten we niet, weer wat geleerd..
      zondag 1 februari 2009 @ 17:11:30 #15
    75592 GlowMouse
    l'état, c'est moi
    pi_65629133
    quote:
    Op zondag 1 februari 2009 17:09 schreef veldmuis het volgende:

    [..]

    Thanks! Ik wist niet dat dat ook op die manier kan met een update query! Tof, wel!
    Die manier is met name handig bij tellertjes. Als je eerst een SELECT en daarna een UPDATE zou doen, heb je kans dat twee vrijwel gelijktijdige requests eerst allebei de SELECT doen en daarna met UPDATE de teller maar met één ophogen in plaats van met twee.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65629246
    quote:
    Op zondag 1 februari 2009 17:11 schreef GlowMouse het volgende:

    [..]

    Die manier is met name handig bij tellertjes. Als je eerst een SELECT en daarna een UPDATE zou doen, heb je kans dat twee vrijwel gelijktijdige requests eerst allebei de SELECT doen en daarna met UPDATE de teller maar met één ophogen in plaats van met twee.
    Hmm, klinkt logisch inderdaad. Ik heb nog behoorlijk wat te leren .
    pi_65638096
    quote:
    Op zondag 1 februari 2009 17:09 schreef ursel het volgende:

    Ok, dat wisten we niet, weer wat geleerd..
    Dat is dus ook waarom je per tabel moet bekijken of je (bijv.) MyISAM of InnoDB wilt gebruiken. Voor tabellen met veel schrijf- en leesacties kun je InnoDB overwegen; die maakt namelijk gebruik van row locking, en niet van table locking (en ook handig: je kunt transacties gebruiken).
      maandag 2 februari 2009 @ 00:43:27 #18
    46383 Tiemie
    sowieso wel!
    pi_65643461
    quote:
    Op zondag 1 februari 2009 16:44 schreef veldmuis het volgende:
    Ik heb een vraag (alweer )
    het resultaat van deze query:
    [ code verwijderd ]

    is een 0 of een 1. Die wil ik omkeren en dan terug in de DB proppen:
    [ code verwijderd ]

    Ik krijg het niet voor elkaar. Kan ik dit in één query doen? Ik weet hoe een subquery werkt, maar hoe ik een 0 in een 1 kan omtoveren met een subquery weet ik niet. Kan dat sowieso wel?
    1UPDATE tbl_test SET actief = ABS(actief-1)

    zo kan het ook
      maandag 2 februari 2009 @ 00:51:00 #19
    75592 GlowMouse
    l'état, c'est moi
    pi_65643595
    Ja, of
    1UPDATE tbl_test SET actief = 1-ABS(actief)


    [ Bericht 0% gewijzigd door GlowMouse op 02-02-2009 00:55:06 (doe ik het nog fout) ]
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      maandag 2 februari 2009 @ 09:37:02 #20
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_65647023
    tvp
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
      maandag 2 februari 2009 @ 09:39:07 #21
    136730 PiRANiA
    All thinking men are atheists.
    pi_65647066
    Oeh ik was deze kwijt, maar door die post 301 heb ik hem weer gevonden
    pi_65647812
    quote:
    Op maandag 2 februari 2009 00:51 schreef GlowMouse het volgende:
    Ja, of
    [ code verwijderd ]
    Dan is die ABS() bij actief wel wat overbodig, tenzij actief ook negatief kan zijn. En dat lijkt me weer wat onlogisch.
    pi_65649110
    quote:
    Op maandag 2 februari 2009 00:51 schreef GlowMouse het volgende:
    Ja, of
    [ code verwijderd ]
    Maak er dan dit van:
    1UPDATE tbl_test SET actief = IF(actief = 0, 1, 0) WHERE post = 'tvp'
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_65656287
    tvp
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65658857
    Ik heb een scriptje die foto's upload en de geuploade foto laat zien. Nu wil ik deze resizen tot maximaal een breedte van 500px. Hoe zorg ik dan dat de andere hoogte in proportie blijft? En dat ie alleen resized als het moet?
      maandag 2 februari 2009 @ 15:43:43 #26
    75592 GlowMouse
    l'état, c'est moi
    pi_65659065
    Iets met getimagesize, een if en een new_height = 500/old_width * old_height.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65659847
    Ik ben nog niet zo lang bezig met php & MySQL, maar hoe moeilijk is het om een webshop te maken?
    Hebben jullie toevallig nog tips of trucs die ik kan gebruiken?
    pi_65659918
    quote:
    Op maandag 2 februari 2009 15:43 schreef GlowMouse het volgende:
    Iets met getimagesize, een if en een new_height = 500/old_width * old_height.
    Aha. Slim!
      maandag 2 februari 2009 @ 16:18:27 #29
    75592 GlowMouse
    l'état, c'est moi
    pi_65660445
    quote:
    Op maandag 2 februari 2009 16:03 schreef Boschkabouter het volgende:
    Ik ben nog niet zo lang bezig met php & MySQL, maar hoe moeilijk is het om een webshop te maken?
    Hebben jullie toevallig nog tips of trucs die ik kan gebruiken?
    Ik zou er niet aan beginnen omdat je beveiliging goed op orde moet zijn.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65664104
    Ik heb de volgende php code:

    1
    2
    3
    echo "1: ".$_POST['aantal0'].$_POST['product0'].$_POST['prijs0']."<br />"
        ."2: ".$_POST['aantal1'].$_POST['product1'].$_POST['prijs1']."<br />"
        ."3: ".$_POST['aantal2'].$_POST['product2'].$_POST['prijs2']."<br />";


    Het aantal posts kan in principe oneindig lang zijn, dus aantal3, aantal4 etc kan allemaal bestaan.

    Wat ik graag zou willen:
    - aantal0, product0, prijs0 weergeven
    - kijken of aantal1, product1 en prijs1 gepost zijn
    - zoja, die ook weergeven
    - zo nee, dan stoppen
    - als aantal1, product1 en prijs1 bestaan, dan kijken of ze ook bestaan met nr 2.
    - etc.

    dit moet toch met een loopje kunnen ofzo? :@
      maandag 2 februari 2009 @ 18:06:25 #31
    75592 GlowMouse
    l'état, c'est moi
    pi_65664159
    Dat kan inderdaad met een loopje, kijk eens naar while
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65664383
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $id = 0;

    for ( $teller = 1; $teller <= 100; $teller += 1) {
         
       if ( isset($_POST['aantal$id'] ) {   
        echo "$id: ".$_POST['aantal$id'].$_POST['product$id'].$_POST['prijs$id']."<br />";
        id+=1    
           }
        }
    }
    pi_65664407
    Iets zegt me dat het enorm dubbelop is om zowel $id bij te houden als $teller
    (daarnaast werkt het niet )
    pi_65664627
    Ok, naar aanleiding van de tip eens naar de while loop te kijken heb ik dit stukje niet werkende code gefabriceerd:

    1
    2
    3
    4
    5
    while ( isset($_POST['aantal$id']  )) {
         
       echo "$id: ".$_POST['aantal$id'].$_POST['product$id'].$_POST['prijs$id']."<br />";
       id+=1    
    }


    de code:
    Parse error: syntax error, unexpected T_PLUS_EQUAL in /var/www/fact/maakxml3.php on line 27
    pi_65664697
    Je bent de $ voor id+=1 en de ; erna vergeten. Je kunt er ook $id++; van maken.
    pi_65664724
    Let ook op dat $_POST['product$id'] niet zal werken, dat moet $_POST['product'.$id] of $_POST["product$id"] zijn.
    pi_65664772
    ok, ik ga het proberen
    pi_65664843
    Ik krijg geen foutmelding meer! :D maar ook geen echo's :{

    1
    2
    3
    4
    5
    while ( isset($_POST['aantal'.$id] )) {
         
       echo "$id: ".$_POST['aantal'.$id].$_POST['product'.$id].$_POST['prijs'.$id]."<br />";
       $id++  ;  
    pi_65665068
    quote:
    Op maandag 2 februari 2009 18:30 schreef erikkll het volgende:
    Ik krijg geen foutmelding meer! maar ook geen echo's
    [ code verwijderd ]
    Wat is de waarde van $id voordat de lus begint?
    pi_65665200
    1
    2
    3
    4
    5
    6
    7
    $id = 0;

    while ( isset($_POST['aantal'.$id] )) {
         
       echo "$id: ".$_POST['aantal'.$id].$_POST['product'.$id].$_POST['prijs'.$id]."<br />";
       $id++  ;  
    pi_65665351
    Dan is natuurlijk de vraag of $_POST['aantal0'] bestaat.
    pi_65665417
    Yeah! Hij bestond, maar er ging iets mis, eerder in de code waardoor hij al niet tot de while loop kwam! Heel erg bedankt!
    pi_65665458
    kan je de waardes niet beter in een tabel gooien en ze daarvan uit echo'en?

    of snap je niet hoe dat moet ?
    Redacted
    pi_65665977
    quote:
    Op maandag 2 februari 2009 18:46 schreef cablegunmaster het volgende:
    kan je de waardes niet beter in een tabel gooien en ze daarvan uit echo'en?

    of snap je niet hoe dat moet ?
    Jawel, maar ik wil er een xml file van maken, uiteindelijk. Die echo was alleen om te kijken of 't uberhaupt zou werken
    pi_65672455
    quote:
    Op maandag 2 februari 2009 16:18 schreef GlowMouse het volgende:

    [..]

    Ik zou er niet aan beginnen omdat je beveiliging goed op orde moet zijn.
    Kijk, het hoeft geen super uitgebreide shop te worden. Zo was er geen winkelwagensysteem nodig (er hoeft maar 1 product gekocht te worden) en betalen kan in het begin gewoon per overschrijving/iDeal.
    Maar wat voor een dingen moet ik dan beveiligen, is het een kwestie van het afschermen van de database/backoffice en SQL injection van andere scripts voorkomen? Of zijn er nog dingen waar ik rekening mee moet houden?
    pi_65688914
    Ik ben ondertussen aan het googlen, maar misschien weet iemand zo snel iets uit zijn hoofd.

    Ik zoek een simpele text editor script die html files kan openen en bewerken, met simpele markup als bold, italic, linkjes en plaatjes. Hoeft niet geavanceerd te zijn.
    pi_65689044
    Zou je dan niet gewoon notepad++ pakken?
    pi_65689556
    quote:
    Op dinsdag 3 februari 2009 13:03 schreef veldmuis het volgende:
    Zou je dan niet gewoon notepad++ pakken?
    Ik bedoel een online editor. Eentje die ik upload en dan online kan gebruiken. Html tags moeten als weergave omgezet worden dus.
    pi_65690012
    Oow zo. FCKEditor?
    TinyMCE?

    Zijn allebei te strippen tot een heel kale editor.

    FCKEditor heeft als voordeel dat de uploadmogelijkheid er standaard in zit, bij TinyMCE is dat een betaalde optie.

    FCKEdit poept XHTML uit, TinyMCE kan HTML en XHTML. Is wat je wil.
    pi_65691263
    quote:
    Op dinsdag 3 februari 2009 13:33 schreef veldmuis het volgende:
    Oow zo. FCKEditor?
    TinyMCE?

    Zijn allebei te strippen tot een heel kale editor.

    FCKEditor heeft als voordeel dat de uploadmogelijkheid er standaard in zit, bij TinyMCE is dat een betaalde optie.

    FCKEdit poept XHTML uit, TinyMCE kan HTML en XHTML. Is wat je wil.
    Ik vind de organisatie van beide nogal lastig. Ik wil namelijk omdat er maar 4 standaard html files zijn die aan te passen zijn een dropdown menu erboven. Ik hoef dus niet te uploaden, maar iets wat al staat op de server.
    pi_65691319
    Dat kan toch? Zo gebruik ik de FCKeditor ook.
    pi_65692034
    Weet iemand (niet echt PHP maar goed) hoe je dit soort vragen noemt

    1
    2
    3
    4
    5
    6
    7
    8
             Goed - Redelijk - Slecht

    PHP       *         *         *
    MySQL     *         *         *
    Java      *         *         *
    ETC       *         *         *

    * = keuze in te vullen door gebruiker
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65692051
    quote:
    Op dinsdag 3 februari 2009 14:32 schreef Chandler het volgende:
    Weet iemand (niet echt PHP maar goed) hoe je dit soort vragen noemt
    [ code verwijderd ]
    Matrices?
    pi_65692096
    quote:
    Op dinsdag 3 februari 2009 14:13 schreef veldmuis het volgende:
    Dat kan toch? Zo gebruik ik de FCKeditor ook.
    Heb je toevallig een scriptje wat jij runt dan? Of is makkelijker voor mij om los te beginnen.
    pi_65692326
    quote:
    Op dinsdag 3 februari 2009 14:33 schreef Flaccid het volgende:
    Matrices?
    Ik noemde het zelf matrix vragen (waarom weet ik niet )
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65692390
    quote:
    Op dinsdag 3 februari 2009 14:32 schreef Chandler het volgende:
    Weet iemand (niet echt PHP maar goed) hoe je dit soort vragen noemt
    [ code verwijderd ]
    Een enquete?
    pi_65692446
    quote:
    Op dinsdag 3 februari 2009 14:34 schreef Flaccid het volgende:

    [..]

    Heb je toevallig een scriptje wat jij runt dan? Of is makkelijker voor mij om los te beginnen.
    Ik geef in de url een id mee, dat ID hang ik aan een query die netjes de inhoud uit de db die ik wil hebben in de FCKEditor stopt.
    In diezelfde pagina wordt de inhoud ook geupdated als er postdata wordt meegezonden, en die postdata komt, jawel, van de FCKEditor.

    Werkt bij mij perfect.
    pi_65693573
    quote:
    Op dinsdag 3 februari 2009 14:42 schreef veldmuis het volgende:
    Een enquete?
    Klopt maar in een enquete heb je meer vraag soorten.

    Open vragen, gesloten vragen, multiple choice vragen, multiple choice vragen met meerdere antwoord mogelijkheden etc...

    En wilde dus precies weten hoe deze vraagstelling genoemd wordt.
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65693878
    quote:
    Op dinsdag 3 februari 2009 14:43 schreef veldmuis het volgende:

    [..]

    Ik geef in de url een id mee, dat ID hang ik aan een query die netjes de inhoud uit de db die ik wil hebben in de FCKEditor stopt.
    In diezelfde pagina wordt de inhoud ook geupdated als er postdata wordt meegezonden, en die postdata komt, jawel, van de FCKEditor.

    Werkt bij mij perfect.
    Ik heb deze gevonden:
    http://themaninblue.com/writing/perspective/2005/01/27/

    En heb ik nu netjes kunnen modificeren tot precies wat ik wil. 1 ding alleen: Het eurotekentje. € komt er te staan.
    Hoe kan ik daaromheen komen?
      dinsdag 3 februari 2009 @ 15:42:40 #60
    75592 GlowMouse
    l'état, c'est moi
    pi_65694694
    Overal dezelfde content-type gebruiken (geen UTF-8 en ISO-8859 door elkaar gebruiken).
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      dinsdag 3 februari 2009 @ 15:52:37 #61
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_65695101
    quote:
    Op dinsdag 3 februari 2009 15:42 schreef GlowMouse het volgende:
    Overal dezelfde content-type gebruiken (geen UTF-8 en ISO-8859 door elkaar gebruiken).
    Als je UTF-8 gebruikt moet je dat bij bepaalde PHP functies ook meegeven. Bijv. bij htmlentities() en html_entity_decode(), anders probeert hij het default in ISO-8859-1 te veranderen, wat niet goed gaat.
    (Daar heb ik zelf ooit eens een paar uur mee lopen kloten voordat ik daar achter kwam.)
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
      dinsdag 3 februari 2009 @ 15:54:59 #62
    75592 GlowMouse
    l'état, c'est moi
    pi_65695216
    quote:
    Op dinsdag 3 februari 2009 15:52 schreef mstx het volgende:

    [..]

    Als je UTF-8 gebruikt moet je dat bij bepaalde PHP functies ook meegeven. Bijv. bij htmlentities() en html_entity_decode(), anders probeert hij het default in ISO-8859-1 te veranderen, wat niet goed gaat.
    (Daar heb ik zelf ooit eens een paar uur mee lopen kloten voordat ik daar achter kwam.)
    Bij veel string functies kan dat niet, dus tenzij het echt nodig is zou ik tot PHP6 uitkomt bij UTF-8 uit de buurt blijven.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      dinsdag 3 februari 2009 @ 16:02:25 #63
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_65695493
    quote:
    Op dinsdag 3 februari 2009 15:54 schreef GlowMouse het volgende:

    [..]

    Bij veel string functies kan dat niet, dus tenzij het echt nodig is zou ik tot PHP6 uitkomt bij UTF-8 uit de buurt blijven.
    Het hoeft gelukkig ook maar bij een beperkt aantal functies.
    WIj maken eigenlijk alle sites met UTF-8, zolang je het overal hetzelfde houdt heb je er nauwelijks problemen mee.
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
    pi_65697915
    1SELECT * FROM ad WHERE group_id IN (1,2,3)


    Dit levert alle ad records op die in groep 1 2 of 3 vallen. Prima, maar nu wil ik dat er per groep maximaal 2 records worden teruggegeven. Met een simpele LIMIT lukt dat niet, aangezien deze geen rekening houdt met de WHERE clause.

    Iemand een idee?
      dinsdag 3 februari 2009 @ 17:25:37 #65
    75592 GlowMouse
    l'état, c'est moi
    pi_65698519
    Dat is niet zo eenvoudig, zie http://www.artfulsoftware.com/infotree/queries.php?&bw=1280#104 (Within-group quotas (Top N per group)).
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65699194
    quote:
    Op dinsdag 3 februari 2009 15:42 schreef GlowMouse het volgende:
    Overal dezelfde content-type gebruiken (geen UTF-8 en ISO-8859 door elkaar gebruiken).
    de html files die ik hgebruik bevatten geen content type. Zou dat het kunnen zijn? Ik dacht dit is niet nodig omdat ze toch ge-include worden.
      dinsdag 3 februari 2009 @ 18:11:17 #67
    75592 GlowMouse
    l'état, c'est moi
    pi_65700262
    quote:
    Op dinsdag 3 februari 2009 17:44 schreef Flaccid het volgende:

    [..]

    de html files die ik hgebruik bevatten geen content type. Zou dat het kunnen zijn? Ik dacht dit is niet nodig omdat ze toch ge-include worden.
    Het gaat om de communicatie tussen server en client.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65701092
    Ik heb een vraagje en snap iets niet

    Onderstaande functie probeert eerst data uit een geposte form te h alen, als deze niet bestaat kijkt hij of een sessie is aangemaakt en zo ja gebruikt hij deze, als deze ook niet bestaat en een default value is ingevuld wordt deze gebruikt en anders wordt er niets terug gegeven.

    Op zich zou je zeggen dat er niets mis mee is! maar toch wel.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    function getSesPost($pst$ses$def '')
    {
        if (isSet(
    $_POST[$pst]))
        {
            return 
    $_POST[$pst];
        }
        elseif (isSet(
    $_SESSION['card']) && isSet($_SESSION['card'][$ses])) //zal deze wel zijn
        
    // lijn 11 <img class="rde_img_smiley" src="http://i.fok.nl/s/biggrin.gif" width="15" height="15" alt="" />
            
    return $_SESSION['card'][$ses];
        }
        elseif (
    $def != '')
        {
            return 
    $def;
        }
        
        return;
    }
    ?>


    Ik krijg namelijk de volgende error

    1<b>Fatal error</b>:  Cannot use object of type stdClass as array in <b>/home/testertje/domains/****/public_html/test.php</b> on line <b>11</b><br />


    nu zou je zeggen dat card een array is aangezien ik deze in de code aanmaak met $_SESSION['card'] = array() maar toch gaat er iets fout, wat zou hiervoor de oplossing kunnen zijn?

    [ Bericht 4% gewijzigd door Chandler op 03-02-2009 18:30:42 (extra info) ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 3 februari 2009 @ 18:37:26 #69
    75592 GlowMouse
    l'état, c'est moi
    pi_65701398
    var_dump($_SESSION)?

    En het is isset, niet isSet.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65701969
    quote:
    Op dinsdag 3 februari 2009 18:11 schreef GlowMouse het volgende:

    [..]

    Het gaat om de communicatie tussen server en client.
    Maar wat moet ikd us nu doen voor ?[/dom]
      dinsdag 3 februari 2009 @ 18:51:11 #71
    75592 GlowMouse
    l'état, c'est moi
    pi_65701988
    quote:
    Op dinsdag 3 februari 2009 18:50 schreef Flaccid het volgende:

    [..]

    Maar wat moet ikd us nu doen voor ?[/dom]
    Kijken waar dat fout gaat.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65702942
    quote:
    Op dinsdag 3 februari 2009 18:37 schreef GlowMouse het volgende:
    var_dump($_SESSION)?

    En het is isset, niet isSet.
    Hmm... maakt dat zoveel verschil dan?

    en ik zal $_SESSION eens dumpen :U

    print_r
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Array
    (
        [card] => stdClass Object
            (
                [id] => 71
                [cat_id] => 1
                [code] => f8b88367
                [filename] => f8b88367.jpg
                [filehash] => 1539814517
                [titel] => 
                [omschrijving] => 
                [views] => 0
                [send] => 0
                [validated] => 1
                [cat_titel] => algemeen
            )
    )


    weird of niet? maar het lijkt wel of iets $_SESSION['card'] over schrijft terwijl ik geen $_SESSION['card'] gebruik maar wel $card enzovoorts...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65703330
    Card is dus geen array, maar een Object van type stdClass. Die kun je blijkbaar niet als array benaderen, waardoor de [ ] operator niet werkt. Dat zou kunnen als je ergens mysql_fetch_object gebruikt, waardoor je iets moet doen als $_SESSION['card']->id;
    pi_65718819
    Geloof me, dat object komt niet op magische wijze in de sessie. Er zit écht ergens iets in je code wat daarvoor zorgt
    pi_65727741
    Ik zit weer te knoeien met een query .

    tabel1 heeft een rij id's (1 t/m 5), tabel2 heeft alleen id 2 en 3.

    Nou wil ik alles uit tabel1 weergeven, en visueel maken wanneer datzelfde id ook in tabel2 voorkomt.

    Redt ik dat met 1 query
    pi_65728010
    1SELECT * FROM tabel1 WHERE id IN (SELECT id FROM tabel2);
    pi_65728133
    Ik denk dat ik dat niet helemaal bedoel. Ik wil *alles* uit tabel1 weergeven. De output moet zoiets zijn:

    1
    2
    3
    4
    5
    1 blabla
    2 blabla *
    3 blabla *
    4 blabla
    5 blabla


    Waar die * dus betekent dat het id ook in tabel2 voorkomt.
      woensdag 4 februari 2009 @ 13:05:33 #78
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_65728627
    1SELECT *, (SELECT id FROM tabel2 WHERE tabel2.id=tabel1.id) AS tabel2_id FROM tabel1
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
    pi_65728790
    Nice! Voor nu even snel erin gezet, straks even goed ontleden!

    Bedankt!
    pi_65729837
    quote:
    Op dinsdag 3 februari 2009 14:32 schreef Chandler het volgende:
    Weet iemand (niet echt PHP maar goed) hoe je dit soort vragen noemt
    [ code verwijderd ]
    Competence Matrix?
    🕰️₿🕰️₿🕰️₿🕰️₿🕰️₿🕰️ TikTok next Block
    pi_65743531
    Kun je checken of een bestand geincluded is, en zo niet, dat je dan bijvoorbeeld een exit geeft?
      woensdag 4 februari 2009 @ 20:17:30 #82
    75592 GlowMouse
    l'état, c'est moi
    pi_65743718
    http://nl3.php.net/get_included_fails

    Maar als het zo belangrijk is om te includen, kun je toch require gebruiken?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      woensdag 4 februari 2009 @ 20:22:33 #83
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_65743954
    quote:
    Op woensdag 4 februari 2009 20:17 schreef GlowMouse het volgende:
    http://nl3.php.net/get_included_fails

    Maar als het zo belangrijk is om te includen, kun je toch require gebruiken?
    Waarschijnlijk bedoelt hij het bestand dat geinclude moet worden wat je dan niet op zichzelf in de browser moet kunnen openen.
    Ik zou dan gewoon een variabele in het "hoofdbestand" defineren en in het te includen bestand een exit geven als die variabele niet bestaat.

    Zelf zet ik die bestanden gewoon buiten de publieke map, veel makkelijker.
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
      woensdag 4 februari 2009 @ 20:43:57 #84
    75592 GlowMouse
    l'état, c'est moi
    pi_65744855
    Of buiten de www-root zetten, of je er niet druk om maken, of met .htaccess afschermen, of naar de REQUEST_URI kijken.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65748326
    Buiten de www-root zetten is wel een idee.

    Niet druk om maken, och, ben nog in de lerende fase dus doe het liever een beetje goed nu. Kan als ik het wat beter onder de knie heb altijd nog afwijken van dat soort dingen.

    Thanks!
      vrijdag 6 februari 2009 @ 00:33:31 #86
    62215 qu63
    ..de tijd drinkt..
    pi_65787471
    Ok, ik heb een stukje code wat op zoek gaat naar een bepaald topic in een subforum:
    1
    2
    3
    4
    5
    6
    7
    8
    $html = file_get_contents('http://forum.fok.nl/forum/9');
          if(preg_match_all('/([\[{]WFL\-[a-zA-Z0-9]{0,}[0-9 #]{0,6}[\]}]).*">\t<a href="topic\/([0-9]{6,})\"/', $html, $matches))
             {
                $topics = array();
                   foreach($matches[2] as $index => $id)
                $topics[] = array('id' => $id, 'title' => $matches[2][$index]);
                $wfl = 'Laatste WFL-LFC topic: <a href="http://forum.fok.nl/topic/'.$topics[0]['id'].'/1/50">'.$topics[0]['id'].'</a><br>';
             }

    Alleen zit er nu een 'tikfout' in de laatste TT, namelijk WFl ipv WFl... Wat moet ik nou veranderen aan mn preg_match_all om niet hoofdlettergevoelig te zijn?
    En kan deze code eventueel nog beter?
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_65788909
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $html 
    file_get_contents('http://forum.fok.nl/forum/9');
    if(
    preg_match_all('/([\[{]WFL\-.*#\d+[\]}]).*">\t<a href="topic\/(\d{6,})\"/Ui'$html$matches))  {
        
    $topics = array();
        foreach(
    $matches[2] as $index => $id) {
            
    $topics[] = array('id' => $id'title' => $matches[2][$index]);
        }
        
    $wfl 'Laatste WFL-LFC topic: <a href="http://forum.fok.nl/topic/'.$topics[0]['id'].'">'.$topics[0]['id'].'</a><br>';
    }
    ?>

    Iets korter gemaakt, en hoofdletterongevoelig. Dat laatste doe je met de i na de reguliere expressie. De U is om de expressie ungreedy te maken, dan pakt'ie met het stukje .*# alles tot en met het eerste #. En \d betekent een digit, is dus hetzelfde als [0-9].

    Zoals altijd geldt ook voor deze code dat'ie niet getest is :)
      vrijdag 6 februari 2009 @ 09:42:20 #88
    62215 qu63
    ..de tijd drinkt..
    pi_65791006
    quote:
    Op vrijdag 6 februari 2009 06:31 schreef Light het volgende:

    [ code verwijderd ]

    Iets korter gemaakt, en hoofdletterongevoelig. Dat laatste doe je met de i na de reguliere expressie. De U is om de expressie ungreedy te maken, dan pakt'ie met het stukje .*# alles tot en met het eerste #. En \d betekent een digit, is dus hetzelfde als [0-9].

    Zoals altijd geldt ook voor deze code dat'ie niet getest is
    Werkt!

    Zou je deze ook nog aan kunnen passen/na kunnen lopen?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $html 
    file_get_contents('http://forum.fok.nl/forum/3');
            if(
    preg_match_all('/([\[{]{0,1}SC[\]}].*[a-zA-Z0-9 #]{0,15})\">\t<a href="topic\/([0-9]{6,})\"/'$html$matches))
                {
                    
    $topics = array();
                        foreach(
    $matches[2] as $index => $id)
                    
    $topics[] = array('id' => $id'title' => $matches[2][$index]);
                    
    $gc 'Laatste GC-Slowchat topic: <a href="http://forum.fok.nl/topic/'.$topics[0]['id'].'/1/50">'.$topics[0]['id'].'</a><br>';
                }
    ?>
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_65796171
    Ik doe nog eens een vraag :+.

    Ik probeer een html mail te versturen, en dat gaat best prima, alleen is de ontvangende server van mening dat er nog een header bij moet:
    1X-Spam-Checker-Version: SpamAssassin...etc 


    Prima, maar die code komt bovenaan de mail te staan. In de source staan dan ook die regels, en daarna komt pas de <html>tag.

    Iemand een idee of dat op te lossen is? Dat moet toch kunnen? :o
    pi_65796292
    Hoe zet je hem in die mail dan? Gewoon als plaintext ofzo?
    De andere headers zie je toch ook niet in de mail staan... ?

    En waarom zou je uberhaupt in je mail zetten dat er iets met Spamassassin is?
    pi_65796613
    Je moet hem wel als header meesturen natuurlijk. Ik vind het overigens meer dan dubieus om een header mee te sturen die "liegt" dat SpamAssassin een spam-check gedaan heeft. SpamAssassin voegt die header zelf wel toe na het scannen.
    pi_65797797
    mensen, ik wil een klein website maken 'een visitekaartje' en ik wil graag weten welke programma's het beste zijn om met een paar muisklikjes een leuke website te ontwerpen.

    iemand?

    beetje in de stijl van wordpress. zonder een database.
    pi_65797932
    quote:
    Op vrijdag 6 februari 2009 12:48 schreef Roy_T het volgende:
    Je moet hem wel als header meesturen natuurlijk. Ik vind het overigens meer dan dubieus om een header mee te sturen die "liegt" dat SpamAssassin een spam-check gedaan heeft. SpamAssassin voegt die header zelf wel toe na het scannen.

    Nee, die header wordt door de ontvangende server toegevoegd, maar dus niet als header.
    Ik voeg die zeker niet toe, als ik die mail naar mn gmail account stuur is er dan ook niets aan de hand en heb ik die header niet. Via een ander account wordt die header er wel bij gezet, door de ontvangende server dus.
    Alleen wordt het niet echt als header toegevoegd, maar komt het bovenin de mail te staan. En dat wil ik dus niet, maar de vraag is of ik daar wat aan kan doen, omdat ik nogal weinig invloed heb op wat de ontvangende server met een mailtje doet natuurlijkl
    pi_65797969
    quote:
    Op vrijdag 6 februari 2009 13:26 schreef RoW_0 het volgende:
    mensen, ik wil een klein website maken 'een visitekaartje' en ik wil graag weten welke programma's het beste zijn om met een paar muisklikjes een leuke website te ontwerpen.

    iemand?

    beetje in de stijl van wordpress. zonder een database.
    Dan zit je hier niet helemaal goed denk ik. Je kunt bijvoorbeeld Dreamweaver proberen, maar met een paar klikken een leuke website bouwen is eigenlijk niet te doen imo.
    pi_65798109
    quote:
    Op vrijdag 6 februari 2009 12:34 schreef veldmuis het volgende:
    Ik doe nog eens een vraag .

    Ik probeer een html mail te versturen, en dat gaat best prima, alleen is de ontvangende server van mening dat er nog een header bij moet:
    [ code verwijderd ]

    Prima, maar die code komt bovenaan de mail te staan. In de source staan dan ook die regels, en daarna komt pas de <html>tag.

    Iemand een idee of dat op te lossen is? Dat moet toch kunnen?
    Termineer je de header van de mail wel goed? Wat is de mail zoals je hem weg stuurt?
    pi_65798811
    Zo:
    1
    2
    3
    4
    5
    6
    7
    8
    $subject = "xxx";
    $headers = "To: xxx <xxx@xxx.nl>\r\n";
    $headers .= "From: xxx <xxx@xxx.nl>\r\n";
    $headers .= "X-Mailer: xxx\n";
    $headers .= 'MIME-Version: 1.0' . "\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    mail($to, $subject, $message, $headers);

    $message bevat <html> t/m </html>
      vrijdag 6 februari 2009 @ 14:01:05 #97
    75592 GlowMouse
    l'état, c'est moi
    pi_65798999
    PHPMailer gebruiken, met HTML-mails gaat gewoon teveel mis. En als het dan nog niet werkt, kun je terecht SpamAssassin de schuld geven

    Groetjes,
    GlowMouse
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65799056
    quote:
    Op vrijdag 6 februari 2009 13:56 schreef veldmuis het volgende:
    Zo:
    [ code verwijderd ]

    $message bevat <html> t/m </html>
    Ik weet het niet precies, maar regel 4 en 5 moet je ook met "\r\n" afsluiten.
    quote:
    Op vrijdag 6 februari 2009 14:01 schreef GlowMouse het volgende:
    PHPMailer gebruiken, met HTML-mails gaat gewoon teveel mis. En als het dan nog niet werkt, kun je terecht SpamAssassin de schuld geven
    Dat is sowieso een goed idee.
    pi_65800005
    quote:
    Op vrijdag 6 februari 2009 14:02 schreef HuHu het volgende:

    [..]

    Ik weet het niet precies, maar regel 4 en 5 moet je ook met "\r\n" afsluiten.
    Dan komt de mail gewoon als plaintext binnen, en zie ik dus lekker de html zut. Ik ga eens kijken naar PHPMailer
    pi_65803716
    Okay nee goed ik heb dus een pagina gemaakt in dreamweaver. maar maakt hij geen 'Projectbestand' op? hij maakt alleen maar een paar html bestandjes aan. Maar als ik het afsluit en weer opstart, welke bestand moet ik op klikken dan/? als ik de frameset open krijg ik niet de balken om bijv de linker frame groter of kleiner te maken... en als ik 6 frames heb.., in welke zet ik dan de titel die in de taakbar verschijnt?
    pi_65803817
    Als je nu begint met het bouwen van een website, ga dan iets moderns lezen. Frames gebruik je gewoon niet meer. Dat is antiek.

    Blijf weg bij die handleidinghtml.nl enzo, dat soort sites hebben teksten die in de 90's bedacht zijn .
      vrijdag 6 februari 2009 @ 16:13:15 #102
    62215 qu63
    ..de tijd drinkt..
    pi_65803825
    quote:
    Op vrijdag 6 februari 2009 16:09 schreef RoW_0 het volgende:
    Okay nee goed ik heb dus een pagina gemaakt in dreamweaver. maar maakt hij geen 'Projectbestand' op? hij maakt alleen maar een paar html bestandjes aan. Maar als ik het afsluit en weer opstart, welke bestand moet ik op klikken dan/? als ik de frameset open krijg ik niet de balken om bijv de linker frame groter of kleiner te maken... en als ik 6 frames heb.., in welke zet ik dan de titel die in de taakbar verschijnt?
    http://www.w3schools.com/
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_65803909
    pi_65824870
    quote:
    Op vrijdag 6 februari 2009 16:13 schreef veldmuis het volgende:
    Als je nu begint met het bouwen van een website, ga dan iets moderns lezen. Frames gebruik je gewoon niet meer. Dat is antiek.

    Blijf weg bij die handleidinghtml.nl enzo, dat soort sites hebben teksten die in de 90's bedacht zijn .
    ik heb dat allemaal gebruikt op die site ,alleen frames niet met een uitzondering van een Iframe om 20 pagina's te linken en te lui was om het anders te doen.
    Redacted
    pi_65852581
    1
    2
    3
    4
    5
    <?php
                    $query  
    "UPDATE verkooporder              SET status = '".$status."' WHERE vo_nr = '".$vo_nr."';";
                    
    $query2 "UPDATE verkooporderregel         SET geleverd = geleverd + besteld, besteld = '0' WHERE vo_nr = '".$vo_nr."';";
                    
    $query3 "UPDATE artikel,verkooporderregel SET voorverkopen = voorverkopen - besteld where vo_nr = '".$vo_nr."' and artikel.art_nr = verkooporderregel.art_nr ;";
    ?>

    zou dit in minder querys kunnen ?
    Redacted
      zondag 8 februari 2009 @ 16:32:49 #107
    136730 PiRANiA
    All thinking men are atheists.
    pi_65852865
    quote:
    Op zondag 8 februari 2009 16:25 schreef cablegunmaster het volgende:

    [ code verwijderd ]

    zou dit in minder querys kunnen ?
    als je met cascading regels gaat werken misschien
    pi_65852966
    quote:
    Op zondag 8 februari 2009 16:25 schreef cablegunmaster het volgende:

    [ code verwijderd ]

    zou dit in minder querys kunnen ?
    Waarom zou je dat willen? Je doet drie updates, dus waarom zou dat in minder dan 3 update-queries moeten?
    pi_65853151
    quote:
    Op zondag 8 februari 2009 16:35 schreef HuHu het volgende:

    [..]

    Waarom zou je dat willen? Je doet drie updates, dus waarom zou dat in minder dan 3 update-queries moeten?
    ik dacht dat je dan alle tabellen lockte.

    oh ja resultaat hiervan is

    www.dgb.clanslayers.com
    user: verkoop
    pass: verkoop

    Redacted
    pi_65854011
    quote:
    Op zondag 8 februari 2009 16:39 schreef cablegunmaster het volgende:

    [..]

    ik dacht dat je dan alle tabellen lockte.
    Die microseconde dat een tabel gelocked is ga je echt niet merken. Waarschijnlijk is het uitvoeren van 3 losse queries ook nog eens sneller dan één ingewikkelde query die meerdere tabellen update en allemaal tegelijk locked.
    pi_65854037
    quote:
    Op zondag 8 februari 2009 17:05 schreef HuHu het volgende:

    [..]

    Die microseconde dat een tabel gelocked is ga je echt niet merken. Waarschijnlijk is het uitvoeren van 3 losse queries ook nog eens sneller dan één ingewikkelde query die meerdere tabellen update en allemaal tegelijk locked.
    ah ok
    Redacted
      zondag 8 februari 2009 @ 17:07:29 #112
    75592 GlowMouse
    l'état, c'est moi
    pi_65854068
    quote:
    Op zondag 8 februari 2009 16:39 schreef cablegunmaster het volgende:

    [..]

    ik dacht dat je dan alle tabellen lockte.
    Bij UPDATE tbl doe je niets met andere tabellen, dus andere tabellen worden niet gelockt.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65855250
    Als je bang bent voor locking (door relatief veel schrijfactiviteit) zou je InnoDB kunnen overwegen, met row locking ipv table locking.
    pi_65863165
    quote:
    Op zondag 8 februari 2009 17:44 schreef Roy_T het volgende:
    Als je bang bent voor locking (door relatief veel schrijfactiviteit) zou je InnoDB kunnen overwegen, met row locking ipv table locking.
    zo groot word het denk ik nog niet ik was aan het vooruit denken waarom hoe en wat.
    Redacted
    pi_65863724
    maar hoe krigj ik een timestamp + 2 weken eigenlijk ? bijvoorbeeld

    ik heb een veld in sql dat als ik hem verander zo aanpas. maar hoe krijg ik nou een uiterstbetaaldatum die +2 weken is
    Redacted
    pi_65863855
    1SELECT DATE_ADD(timestamp, INTERVAL 2 WEEK) FROM tabel;


    of gewoon

    1SELECT timestamp + INTERVAL 2 WEEK FROM tabel;
    pi_65938829
    Ik zit met een vraagstuk.

    Op dit moment gebruikt mijn statistieken script 2 tabellen voor het opslaan van referres (externe en interne)

    Nu maken deze tabellen mijn statistieken script nogal sloom. Een vriend van mij kwam met een oplossing door ipv 2 tabellen er 1 te maken die alle gegevens combineert. Echter krijg je dan veel duplicate data, daarvoor wil ik dus een oplossing zoeken.

    Opzet huidige tabellen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    CREATE TABLE IF NOT EXISTS `stats_referer` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `type_id` enum('i','e') NOT NULL default 'e',
      `link` varchar(128) NOT NULL,
      PRIMARY KEY  (`id`),
      UNIQUE KEY `type_id` (`type_id`,`link`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1;

    CREATE TABLE IF NOT EXISTS `stats_referer_link` (
      `stat_id` int(10) unsigned NOT NULL,
      `referer_id` int(10) unsigned NOT NULL,
      `date` date NOT NULL,
      `hits` mediumint(8) unsigned NOT NULL,
      `lastdate` time NOT NULL,
      UNIQUE KEY `stat_id` (`stat_id`,`referer_id`,`date`),
      KEY `referer_id` (`referer_id`,`lastdate`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;


    De huidige opzet van de indexes worden gebruikt voor het script dat de statistieken registreert en opslaat.

    Nieuwe opzet van vriend
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE TABLE IF NOT EXISTS `stats_referer` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `type_id` enum('i','e') NOT NULL default 'e',
      `link` varchar(128) NOT NULL,
      `stat_id` int(10) unsigned NOT NULL,
      `date` date NOT NULL,
      `hits` mediumint(8) unsigned NOT NULL,
      `lastdate` time NOT NULL,
      PRIMARY KEY  (`id`)
    ) ;


    Hoe kan ik deze data reduceren maar toch een snelle database opzet maken?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65938879
    Wanneer is 'ie precies sloom, bij welke bewerking? Dit is natuurlijk koffiedik kijken; die tabellen maken je script niet sloom, maar het gebruik ervan
    pi_65939026
    quote:
    Op zondag 8 februari 2009 22:08 schreef HuHu het volgende:

    [ code verwijderd ]

    of gewoon
    [ code verwijderd ]


    tof ik had hem nodig voor een scriptie waarmee hij een uiterst betaaldatum neerzette en had even geen idee hoe (mn gastenboek scriptje word overigens steeds toffer

    v1 input output
    v1.02 input output met pagina's! limit dinkie ^^;;
    v1.03 textarea whitespace css wrap.
    v1.04 scriptje wrap de comment met te lange woorden ( waarom heeft fok niet zo'n script?)
    Redacted
    pi_65941816
    Als ik een $_SESSION['ingelogd'] maak, en die na het inloggen op true, en bovenaan elke pagina een if(!$_SESSION['ingelogd']) {exit;}, is dat dan veilig?
    pi_65942359
    quote:
    Op woensdag 11 februari 2009 10:51 schreef veldmuis het volgende:
    Als ik een $_SESSION['ingelogd'] maak, en die na het inloggen op true, en bovenaan elke pagina een if(!$_SESSION['ingelogd']) {exit;}, is dat dan veilig?
    het is veilig alleen je kan het nog makkelijker doen door er een header aan toe te voegen die je eruit forceert

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    if(!$_SESSION['ingelogd'] == true 
    header('Location: http://www.example.com/index.php'); exit;
    }else{

    blablabla deze is voor ingelogde mensen

    }
    ?>




    ik basseer het inloggen liever op isset($_SESSION['user'] )

    [ Bericht 2% gewijzigd door cablegunmaster op 11-02-2009 11:18:47 ]
    Redacted
      woensdag 11 februari 2009 @ 11:18:27 #122
    12221 Tijn
    Powered by MS Paint
    pi_65942757
    quote:
    Op woensdag 11 februari 2009 10:51 schreef veldmuis het volgende:
    Als ik een $_SESSION['ingelogd'] maak, en die na het inloggen op true, en bovenaan elke pagina een if(!$_SESSION['ingelogd']) {exit;}, is dat dan veilig?
    Als je op shared hosting zit, is het vertandig om een eigen directory met sessie-gegevens te definiëren. Standaard worden in een shared hosting omgeving de sessiegegevens meestal in een algemene temp-directory gezet en daar kunnen alle gebruikers van de server bij. Het lijkt me niet dat je wil dat andere users van je webhost jouw sessiedata kunnen uitlezen of wijzigen.

    Daarnaast is het ook verstandig om een eigen sessie-dir te gebruiken als er gebruik wordt gemaakt van meerdere verschillende webservers voor één website, zoals je bv bij loadbalancing ziet. Elke server heeft dan vaak z'n eigen tmp-dir met daarin je sessiegegevens en als een gebruiker halverwege het surfen opeens naar een andere webserver wordt geschakeld, is z'n sessie kwijt en lijkt 'ie te worden uitgelogd. Dat wil je natuurlijk ook niet.

    De beste plek om je sessie-gegevens te bewaren is in je homedir, ergens boven de webroot. Mijn homedir is bijvoorbeeld /home/martijn en m'n webroot is /home/martijn/www. M'n mapje voor sessies noem ik /home/martijn/sessies en zorg dmv chmod dat de user waaronder PHP draait hier schrijfrechten heeft.

    Vervolgens vertel ik PHP dat 'ie deze map moet gebruiken met de functie session_save_path(). Dat moet je doen voordat je session_start() aanroept. Een script die sessies gebruikt ziet er dan bijvoorbeeld zo uit:

    1
    2
    3
    4
    <?php
    session_save_path
    ('/home/martijn/sessies');
    session_start();
    ?>


    Om te checken of PHP inderdaad de sessies op de goede plek wegschrijft, kun je session_save_path() zonder argumenten aan roepen. De functie returned dan de huidige locatie voor sessiegegevens.
    pi_65943640
    quote:
    Op woensdag 11 februari 2009 09:09 schreef Roy_T het volgende:
    Wanneer is 'ie precies sloom, bij welke bewerking? Dit is natuurlijk koffiedik kijken; die tabellen maken je script niet sloom, maar het gebruik ervan
    Dat is eingelijk vrij simpel, wanneer ik de tabellen JOIN om de gegevens uit te lezen.

    Ik wil namelijk referers uitlezen op bepaalde data

    Voorbeeld:

    1
    2
    3
    4
    5
    6
    7
    SELECT stats_referer.link, stats_referer_link.hits 
    FROM stats_referer 
    LEFT JOIN stats_referer_link ON stats_referer_link.referer_id = stats_referer.id 
    WHERE stats_referer_link.stat_id = '12' AND stats_referer.type_id = 'e' 
    AND stats_referer_link.`date` = '2009-02-11' 
    ORDER BY stats_referer_link.lastdate DESC 
    LIMIT 25


    Echter moet ik de huidige indexes gebruiken voor het script wat de statistieken opslaat, als ik deze verander wordt het opslaan van de statistieken slomer en dat is niet de bedoeling (statistieken opslaan kost 0.010 seconde)

    Deze query kost 20 seconden NA F5 1/20 daarvan!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65944241
    quote:
    Op woensdag 11 februari 2009 11:45 schreef Chandler het volgende:

    [..]

    Dat is eingelijk vrij simpel, wanneer ik de tabellen JOIN om de gegevens uit te lezen.

    Ik wil namelijk referers uitlezen op bepaalde data

    Voorbeeld:
    [ code verwijderd ]

    Echter moet ik de huidige indexes gebruiken voor het script wat de statistieken opslaat, als ik deze verander wordt het opslaan van de statistieken slomer en dat is niet de bedoeling (statistieken opslaan kost 0.010 seconde)

    Deze query kost 20 seconden NA F5 1/20 daarvan!
    En wat levert de EXPLAIN van die query op?
    pi_65944317
    quote:
    Op woensdag 11 februari 2009 11:18 schreef Tijn het volgende:

    [..]

    Als je op shared hosting zit, is het vertandig om een eigen directory met sessie-gegevens te definiëren. Standaard worden in een shared hosting omgeving de sessiegegevens meestal in een algemene temp-directory gezet en daar kunnen alle gebruikers van de server bij. Het lijkt me niet dat je wil dat andere users van je webhost jouw sessiedata kunnen uitlezen of wijzigen.

    Daarnaast is het ook verstandig om een eigen sessie-dir te gebruiken als er gebruik wordt gemaakt van meerdere verschillende webservers voor één website, zoals je bv bij loadbalancing ziet. Elke server heeft dan vaak z'n eigen tmp-dir met daarin je sessiegegevens en als een gebruiker halverwege het surfen opeens naar een andere webserver wordt geschakeld, is z'n sessie kwijt en lijkt 'ie te worden uitgelogd. Dat wil je natuurlijk ook niet.

    De beste plek om je sessie-gegevens te bewaren is in je homedir, ergens boven de webroot. Mijn homedir is bijvoorbeeld /home/martijn en m'n webroot is /home/martijn/www. M'n mapje voor sessies noem ik /home/martijn/sessies en zorg dmv chmod dat de user waaronder PHP draait hier schrijfrechten heeft.

    Vervolgens vertel ik PHP dat 'ie deze map moet gebruiken met de functie session_save_path(). Dat moet je doen voordat je session_start() aanroept. Een script die sessies gebruikt ziet er dan bijvoorbeeld zo uit:
    [ code verwijderd ]

    Om te checken of PHP inderdaad de sessies op de goede plek wegschrijft, kun je session_save_path() zonder argumenten aan roepen. De functie returned dan de huidige locatie voor sessiegegevens.
    Dat is een nette tip! Ik dank u hartelijk .
    pi_65944500
    quote:
    Op woensdag 11 februari 2009 11:18 schreef Tijn het volgende:

    Daarnaast is het ook verstandig om een eigen sessie-dir te gebruiken als er gebruik wordt gemaakt van meerdere verschillende webservers voor één website, zoals je bv bij loadbalancing ziet. Elke server heeft dan vaak z'n eigen tmp-dir met daarin je sessiegegevens en als een gebruiker halverwege het surfen opeens naar een andere webserver wordt geschakeld, is z'n sessie kwijt en lijkt 'ie te worden uitgelogd. Dat wil je natuurlijk ook niet.
    Dat kun je vaak oplossen door "sticky sessions" aan te zetten op de load balancer. Neemt niet weg dat je een valide punt maakt
    pi_65944757
    1
    2
    1 SIMPLE stats_referer ref PRIMARY,type_id type_id 1 const 138048 Using where; Using temporary; Using filesort 
    1 SIMPLE stats_referer_link eq_ref stat_id,referer_id stat_id 11 const,gfxstatcom_db1.stats_referer.id,const 1 Using where 


    Heeft idd weer te maken met die temporary filesort :(
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65945880
    ik wou een array krijgen van elk een artikel_nr , een artikel aantal alleen ik snap de foreach nog niet helemaal

    hoe krijg ik al mijn artikelen van deze array in een andere variabele ?
    ( net gelukt om een array te maken voor artikelen (nu nog boven de 0 )
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
             
    if(isset($_POST['artikelaantal'])){
                    foreach(
    $_POST['artikelaantal'] as $artikelaantal => $aantal 
                    {
                
    /*    $artikel  = $_POST['artikel_nr'];
                    $aantal   = $_POST['artikelaantal'];
                    $prijs    = $_POST['prijs'];*/
                    
    }
                    echo 
    $artikel." ".$aantal." "$prijs;
                 }
    ?>


    DONE!


    [ Bericht 5% gewijzigd door cablegunmaster op 11-02-2009 14:07:47 ]
    Redacted
      woensdag 11 februari 2009 @ 13:03:34 #129
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_65946032
    Ik heb icm met AJAX een aantal kolomen zoals in dit voorbeeld:



    De gebruiker kan al op een interactive manier de kolomen verplaatsen etc, maar nu zou het mooi zijn
    als het ook mogelijk is om de kolom breedte aan te kunnen passen, door te slepen.

    Heb het vaker gezien, dus het zou mogelijk moeten zijn. Iemand een idee hoe te doen??
      woensdag 11 februari 2009 @ 13:32:44 #130
    75592 GlowMouse
    l'état, c'est moi
    pi_65947019
    Chandler, ik snap je query niet goed. Waarom doe je een left_join op stats_referer_link? Ik zou zeggen dat wanneer voor een bepaalde stat_id een link niet voorkomt, je die link niet in je queryresultaat wilt hebben. Ik zou het eerder andersom doen: staat de link per ongeluk niet in stats_referer, dat je toch die regel wilt tonen.

    1
    2
    3
    4
    5
    6
    SELECT stats_referer.link, stats_referer_link.hits 
    FROM stats_referer_link l
    LEFT JOIN stats_referer r ON (l.referer_id = r.id)
    WHERE l.stat_id = '12' AND r.type_id = 'e' AND l.`date` = '2009-02-11' 
    ORDER BY l.lastdate DESC 
    LIMIT 25

    Indices:
    stats_referer_link: (stat_id,date,lastdate)
    stats_referer: (id, type_id)

    Deze query moet binnen 0.01s uit te voeren zijn.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      woensdag 11 februari 2009 @ 13:35:24 #131
    75592 GlowMouse
    l'état, c'est moi
    pi_65947105
    quote:
    Op woensdag 11 februari 2009 13:03 schreef Likkende_Lassie het volgende:
    Ik heb icm met AJAX een aantal kolomen zoals in dit voorbeeld:

    [ afbeelding ]

    De gebruiker kan al op een interactive manier de kolomen verplaatsen etc, maar nu zou het mooi zijn
    als het ook mogelijk is om de kolom breedte aan te kunnen passen, door te slepen.

    Heb het vaker gezien, dus het zou mogelijk moeten zijn. Iemand een idee hoe te doen??
    Dat is geen PHP; [Javascript] voor dummies (deel 8)
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65947180
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    function trim_value($value

        
    $new_string trim($value); 
        
    $end_string rtrim($new_string);
        return 
    $value;
    }
    ?>

    <input type=\"text\" name=\"artikelaantal[]\" size=\"7\" maxlength=\"5\" value=\"";
    1
    2
    3
    4
    5
    6
    <?php
                                               
    if(!empty($_POST))
                                               { 
    array_walk($_POST['artikelaantal'], 'trim_value');
                                                  echo 
    $_POST['artikelaantal'][$i]; $i++;}
                                               if(empty(
    $_POST)){ echo '0';} echo " \">
    ?>

    </td>
    ik krijg een irritante wit spatie achter alle artikelaantallen hoe haal ik dit weg? want ik krijg die trim functie niet goed werkend iemand een idee ?
    Redacted
      woensdag 11 februari 2009 @ 13:40:35 #133
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_65947264
    quote:
    Op woensdag 11 februari 2009 13:37 schreef cablegunmaster het volgende:

    [ code verwijderd ]

    <input type="text" name="artikelaantal[]" size="7" maxlength="5" value="";
    if(!empty($_POST))
    { array_walk($_POST['artikelaantal'], 'trim_value');
    echo $_POST['artikelaantal'][$i]; $i++;}
    if(empty($_POST)){ echo '0';} echo " "></td>
    [/php]

    ik krijg een irritante wit spatie achter alle artikelaantallen hoe haal ik dit weg? want ik krijg die trim functie niet goed werkend iemand een idee ?
    In die functie krijg je $value weer precies zo terug als dat hij erin is gegaan...
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
      woensdag 11 februari 2009 @ 13:40:36 #134
    75592 GlowMouse
    l'état, c'est moi
    pi_65947266
    Waarom je eigen trim-functie definieren als je net zo goed de ingebouwde kunt gebruiken (trim is een combinatie van ltrim en rtrim)? Je functie werkt ook niet goed omdat je $value teruggeeft maar niet verandert.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65947285
    Je trim_value geeft de ongewijzigde input terug hè.
    pi_65947489
    quote:
    Op woensdag 11 februari 2009 13:41 schreef HuHu het volgende:
    Je trim_value geeft de ongewijzigde input terug hè.
    klopt vergat $end_string; ipv $value
    ben nieuw met functies heb er vandaag al 2 gebruikt deze had ook direct gekund! maar om een of andere reden toch nog witspaties in mijn value= veld die zichzelf opstapelen ( elke keer dat je op submit drukt voegt hij een witspatie toe)

    maarja ze worden getrimt dus opzich niet zo heel erg


    yay de foreach uitgevogeld

    [ Bericht 19% gewijzigd door cablegunmaster op 11-02-2009 14:06:22 ]
    Redacted
      woensdag 11 februari 2009 @ 14:00:55 #137
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_65947883
    quote:
    Op woensdag 11 februari 2009 13:35 schreef GlowMouse het volgende:

    [..]

    Dat is geen PHP; [Javascript] voor dummies (deel 8)

    Klopt, maar was vergeten te melden dat ik de waarde wil opslaan in een database..
    pi_65948511
    quote:
    Op woensdag 11 februari 2009 13:32 schreef GlowMouse het volgende:
    Chandler, ik snap je query niet goed. Waarom doe je een left_join op stats_referer_link? Ik zou zeggen dat wanneer voor een bepaalde stat_id een link niet voorkomt, je die link niet in je queryresultaat wilt hebben. Ik zou het eerder andersom doen: staat de link per ongeluk niet in stats_referer, dat je toch die regel wilt tonen.
    [ code verwijderd ]

    Indices:
    stats_referer_link: (stat_id,date,lastdate)
    stats_referer: (id, type_id)

    Deze query moet binnen 0.01s uit te voeren zijn.
    Een vraagje voordat ik het ga uitvoeren, is het gebruiken van meerdere indexes handig? aangezien ik op de tabel van de referrs al een index heb voor type_id en link.
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      woensdag 11 februari 2009 @ 14:21:51 #139
    75592 GlowMouse
    l'état, c'est moi
    pi_65948634
    Indices zijn dodelijk voor inserts/updates. Maar als je ze vaak nodig hebt is het toch maar beter om ze wel te plaatsen.
    Als deze tabellen beschreven worden elke keer als een user je site bezoekt, zou ik eens kijken naar rowbased-locking ipv tablebased-locking.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_65951487
    Er wordt meer geupdated/geinserted dan gelezen, dat is gewoon een feit. Aangezien de backend 15-21 queries heeft voor het up to date houden van de statistieken.

    Laten we het zo even zeggen, voor 1 bezoeker die de statisteken bekijkt worden 10000 updates op tabellen gedaan (dus statistieken geteld).

    Dus werkt je versie imho averechts op het huidige model...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65951612
    Dan gebruik je al InnoDB neem ik aan, en geen MyISAM? Want met al die schrijfactiviteit wil je, zoals gezegd, row locking ipv table locking.
    pi_65951889
    Ik gebruik idd MyISAM (mysql) en geen innoDB, heb werkelijk ook geen idee wat het is maar ga eens researchen!

    -edit-

    Ik lees idd dat innoDB veel handiger is voor inserts/updates idd maar dan is het nog maar de vraag hoe het omgaat met de lees acties... want ook tussen al het inserten en updaten moet er af en toe wat gelezen worden

    [ Bericht 66% gewijzigd door Chandler op 11-02-2009 15:57:55 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65953047
    quote:
    Op woensdag 11 februari 2009 15:49 schreef Chandler het volgende:

    Ik lees idd dat innoDB veel handiger is voor inserts/updates idd maar dan is het nog maar de vraag hoe het omgaat met de lees acties... want ook tussen al het inserten en updaten moet er af en toe wat gelezen worden
    Dat gaat ook prima hoor

    Eigenlijk zou je voor ieder project per tabel moeten kijken of je er MyISAM of InnoDB voor wilt gebruiken.
    pi_65955198
    Ik heb even een test gedraaid.

    1
    2
    3
    4
    5
    6
    SELECT r.link, l.hits 
    FROM stats_referer_link l
    LEFT JOIN stats_referer r ON (l.referer_id = r.id)
    WHERE l.stat_id = '12' AND r.type_id = 'e' AND l.`date` = '2009-02-11' 
    ORDER BY l.lastdate DESC 
    LIMIT 25


    Lokaal krijg ik bij myISAM 0.9 seconden en innoDB 1.0 (meerdere keren getest)...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65956662
    quote:
    Op woensdag 11 februari 2009 17:13 schreef Chandler het volgende:
    Ik heb even een test gedraaid.
    [ code verwijderd ]

    Lokaal krijg ik bij myISAM 0.9 seconden en innoDB 1.0 (meerdere keren getest)...
    Je was tegelijkertijd ook 20 keer zoveel write queries aan het doen dan reads, zoals naar jouw zeggen in je real life situatie?
      woensdag 11 februari 2009 @ 18:21:26 #146
    187069 slacker_nl
    Sicko pur sang
    pi_65957277
    quote:
    Op woensdag 11 februari 2009 13:37 schreef cablegunmaster het volgende:

    [ code verwijderd ]

    <input type=\"text\" name=\"artikelaantal[]\" size=\"7\" maxlength=\"5\" value=\"";
    [ code verwijderd ]

    </td>
    ik krijg een irritante wit spatie achter alle artikelaantallen hoe haal ik dit weg? want ik krijg die trim functie niet goed werkend iemand een idee ?
    Vet tijdstip!

    Maar je trimfunctie moet zo volgens mij:

    1
    2
    3
    4
    5
    6
    <?php
    function trim_value(&$value

        
    $value trim($value); 
    }
    ?>


    Het geheim zit 'm in references.

    Er is ook een andere manier om precies hetzelfde te doen:
    [PHP/(My)SQL] voor dummies - Deel 63

    Allemachtig, het antwoord wordt zelfs gegeven in de trim documentatie:

    http://nl.php.net/trim

    [ Bericht 16% gewijzigd door slacker_nl op 11-02-2009 18:30:21 ]
    In theory there is no difference between theory and practice. In practice there is.
    pi_65957440
    nu heb ik 2 arrays hoe krijg ik ze mooi naast elkaar?


    artikelnummer
    0=1
    1=2
    2=3
    3=4
    4=5
    5=6
    aantal
    0=0
    1=5
    2=4
    3=10
    4=20
    5=30

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    print "artikelnr:<br/>";
                                foreach(
    $_POST['artikel_nr'] as $a => $art_nr)
                                print(
    $a ' = ' $art_nr'<br/>');
    print 
    "aantallen:<br/>";
                                foreach(
    $_POST['artikelaantal'] as $i => $aantal){
                                print(
    $i ' = ' $aantal'<br/>');
    ?>


    ik kreeg ze op deze manier onderelkaar , alleen hoe krijg ik ze naast elkaar

    kreeg ze wel onderelkaar !

    [ Bericht 32% gewijzigd door cablegunmaster op 11-02-2009 18:48:01 ]
    Redacted
      woensdag 11 februari 2009 @ 18:28:00 #148
    187069 slacker_nl
    Sicko pur sang
    pi_65957501
    Table?
    In theory there is no difference between theory and practice. In practice there is.
    pi_65957643
    Je ziet dat er een <br/> in je print staat?
    pi_65957807
    quote:
    Op woensdag 11 februari 2009 18:32 schreef veldmuis het volgende:
    Je ziet dat er een <br/> in je print staat?
    ja nee niet op die manier.. maar hoe krijg ik die 2 in 1 table.
    Redacted
    pi_65957830
    quote:
    Op woensdag 11 februari 2009 18:28 schreef slacker_nl het volgende:
    Table?
    maar hoe krijg ik dan dat er artikel _ nr en dan aantal volgende regel herhaal komt te staan ?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    while($i count($one)) {
       
        while(
    $a each($two)) {
            echo 
    $a[1]." - ".$one[$i].", ";
        }
        
    $i++;
       
    }
    ?>


    eens kijken of dit helpt

    [ Bericht 64% gewijzigd door cablegunmaster op 11-02-2009 19:24:09 ]
    Redacted
    pi_65959534
    quote:
    Op woensdag 11 februari 2009 18:38 schreef cablegunmaster het volgende:

    [..]

    :Y maar hoe krijg ik dan dat er artikel _ nr en dan aantal volgende regel herhaal komt te staan ? :P
    Da's niet zo moeilijk toch? Gewoon nadenken wat je wilt, namelijk artikelnummer en aantal op dezelfde regel (table row).
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    echo '<table>';
    for(
    $i 0$i count($art_no); $i++) {
      echo 
    '<tr>';
      echo 
    '<td>'.$i.'</td>';
      echo 
    '<td>'.$art_no[$i].'</td>';
      echo 
    '<td>'.$aantal[$i].'</td>';
      echo 
    '</tr>';
    }
    echo 
    '</table>';
    ?>
      woensdag 11 februari 2009 @ 19:43:09 #153
    187069 slacker_nl
    Sicko pur sang
    pi_65960121
    Die count even uit de loop halen mensen.
    In theory there is no difference between theory and practice. In practice there is.
    pi_65960135
    quote:
    Op woensdag 11 februari 2009 19:27 schreef Light het volgende:

    [..]

    Da's niet zo moeilijk toch? Gewoon nadenken wat je wilt, namelijk artikelnummer en aantal op dezelfde regel (table row).
    [ code verwijderd ]


    Held ! Dankje Hiermee haal ik het wel ^^. ik dacht een moeilijke while met elke while dit maar een for is beter
    Redacted
    pi_65960317
    quote:
    Op woensdag 11 februari 2009 19:43 schreef cablegunmaster het volgende:

    [..]

    Held ! Dankje Hiermee haal ik het wel ^^. ik dacht een moeilijke while met elke while dit maar een for is beter

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $k 
    count($art_no);
    echo 
    '<table>';
    for(
    $i 0$i $k $i++) {
      if(
    $aantal[$i] > ){
      echo 
    '<tr>';
      echo 
    '<td>'.$i.'</td>';
      echo 
    '<td>'.$art_no[$i].'</td>';
      echo 
    '<td>'.$aantal[$i].'</td>';
      echo 
    '</tr>';
      }
    }
    echo 
    '</table>';
    ?>


    zo heb ik hem dus als aantal groter is dan 0 toch ?
    Redacted
    pi_65961284
    quote:
    Op woensdag 11 februari 2009 19:43 schreef slacker_nl het volgende:
    Die count even uit de loop halen mensen.
    Kan, ik weet niet of dat een (duidelijke) snelheidswinst oplevert.
    pi_65961317
    quote:
    Op woensdag 11 februari 2009 19:47 schreef cablegunmaster het volgende:

    [..]
    [ code verwijderd ]

    zo heb ik hem dus als aantal groter is dan 0 toch ?
    Correct
    pi_65962224
    quote:
    Op woensdag 11 februari 2009 20:10 schreef Light het volgende:

    [..]

    Correct
    maar dan krijg ik 0 6 2 te zien ipv de waardes
    doe ik toch iets fouts
    * gaat napluizen
    laatste getal is laatste $aantal maar dan alleen het eerste cijfer
    $i is 0
    en mn $k echot 1 uit
    die 6 komt van art_nrs die wel goed doortellen
    1
    2
    3
    4
    5
    <?php
    echo $art_nr;
    $k count($art_nr);
    echo 
    $k."<br/>";
    ?>

    uitkomst:
    $art_nr = 6
    $k = 1
    doe ik toch iets fout ( count is voor arrays en ik nam aan dat er 6 waardes in zitten maar hij vind van niet )
    zelfs met apache testen kom ik hierop uit

    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
    <?php
                 
    If(!empty($_POST)){ echo "<br/>".Var_dump($_POST)."<br/>";
    print 
    "artikelnr:<br/>";
                                foreach(
    $_POST['artikel_nr'] as $i => $art_nr)
                                print(
    $i ' = ' $art_nr'<br/>');
    print 
    "aantallen:<br/>";
                                foreach(
    $_POST['artikelaantal'] as $i => $aantal){
                                print(
    $i ' = ' $aantal'<br/>');
    }

    $k count($art_nr[$i]);
    echo 
    $k."<br/>";
    echo 
    $art_nr;

    echo 
    '<table>';
    for(
    $i 0$i $k$i++) {
      echo 
    '<tr>';
      echo 
    '<td>'.$i.'</td>';
      echo 
    '<td>'.$art_nr[$i].'</td>';
      echo 
    '<td>'.$aantal[$i].'</td>';
      echo 
    '</tr>';
    }
    echo 
    '</table>';
    echo 
    $k;
                                    }
    ?>


    terwijl bij de foreach hij wel alles er mooi uitgooit

    [ Bericht 10% gewijzigd door cablegunmaster op 11-02-2009 21:16:14 ]
    Redacted
    pi_65963379
    quote:
    Op woensdag 11 februari 2009 18:00 schreef Roy_T het volgende:
    Je was tegelijkertijd ook 20 keer zoveel write queries aan het doen dan reads, zoals naar jouw zeggen in je real life situatie?
    Nee natuurlijk niet

    Maar ik heb getest op een database van myISAM en dezelfde database maar dan geconverteerd naar innoDB en het verschil wsa praktisch nihil
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      woensdag 11 februari 2009 @ 21:15:02 #160
    75592 GlowMouse
    l'état, c'est moi
    pi_65963753
    quote:
    Op woensdag 11 februari 2009 21:03 schreef Chandler het volgende:

    [..]

    Maar ik heb getest op een database van myISAM en dezelfde database maar dan geconverteerd naar innoDB en het verschil wsa praktisch nihil
    Gelukkig maar, bij jouw situatie hoor je geen grote verschillen te ontdekken. Die zie je pas bij grote belasting. Die indices zouden je query wel 100x sneller maken. Wellicht dat je nog andere queries hebt die er profijt van hebben, want ik zou toch neigen naar wel toevoegen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      woensdag 11 februari 2009 @ 21:16:13 #161
    187069 slacker_nl
    Sicko pur sang
    pi_65963798
    quote:
    Op woensdag 11 februari 2009 20:10 schreef Light het volgende:

    [..]

    Kan, ik weet niet of dat een (duidelijke) snelheidswinst oplevert.
    Met dit kleine voorbeeld niet, maar met grotere arrays wel.
    In theory there is no difference between theory and practice. In practice there is.
    pi_65964752
    quote:
    Op woensdag 11 februari 2009 20:31 schreef cablegunmaster het volgende:

    [..]

    maar dan krijg ik 0 6 2 te zien ipv de waardes
    doe ik toch iets fouts
    * gaat napluizen
    laatste getal is laatste $aantal maar dan alleen het eerste cijfer
    $i is 0
    en mn $k echot 1 uit
    die 6 komt van art_nrs die wel goed doortellen
    [ code verwijderd ]

    uitkomst:
    $art_nr = 6
    $k = 1
    doe ik toch iets fout ( count is voor arrays en ik nam aan dat er 6 waardes in zitten maar hij vind van niet )
    zelfs met apache testen kom ik hierop uit
    [ code verwijderd ]

    terwijl bij de foreach hij wel alles er mooi uitgooit
    Oh, dan moet je in mijn stukje code $art_nr en $aantal vervangen door $_POST['artikel_nr'] en $_POST['artikelaantal']. Maar dat kon je natuurlijk ook zelf bedenken.
    pi_65966956
    quote:
    Op woensdag 11 februari 2009 21:37 schreef Light het volgende:

    [..]

    Oh, dan moet je in mijn stukje code $art_nr en $aantal vervangen door $_POST['artikel_nr'] en $_POST['artikelaantal']. Maar dat kon je natuurlijk ook zelf bedenken.

    dank voor de tip het is me gelukt
    Resultaat komt binnenkort Bestellen pagina heb ik hier de hele tijd moeite mee
    maar het vordert nu heb ik al een winkelmandje zo te zeggen een primitieve maar het werkt
    Redacted
    pi_65970104
    quote:
    Op woensdag 11 februari 2009 21:03 schreef Chandler het volgende:

    Nee natuurlijk niet

    Maar ik heb getest op een database van myISAM en dezelfde database maar dan geconverteerd naar innoDB en het verschil wsa praktisch nihil
    Het hele row vs table locking voordeel gaat op bij veel writes, dus je testcase is waardeloos
    pi_65971842
    quote:
    Op woensdag 11 februari 2009 21:37 schreef Light het volgende:

    [..]

    Oh, dan moet je in mijn stukje code $art_nr en $aantal vervangen door $_POST['artikel_nr'] en $_POST['artikelaantal']. Maar dat kon je natuurlijk ook zelf bedenken.
    ja toen ik het eenmaal door had heb ik dit geschreven

    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
    <?php
    $p 
    count($_SESSION['artikelnr']);
            
    // k= aantal regels van het winkelmandje
    $k 1;
    $totaalprijs0;
    for(
    $i 0$i $p$i++)
        {
        if(
    $_SESSION['artikelaantal'][$i] > )
            {
                if(
    is_numeric($_SESSION['artikelaantal'][$i]))
                {
                    if(
    $_SESSION['artikelaantal'][$i] <= $_SESSION['voorraad'][$i])
                    {
                    echo 
    '<tr>';
                    echo 
    '<td>'.$k.'</td>';
                    echo 
    '<td>'.$_SESSION['artikelnr'][$i].'</td>';
                    echo 
    '<td>'.$_SESSION['omschrijving'][$i].'</td>';
                    echo 
    '<td>'.$_SESSION['artikelaantal'][$i].'</td>';
                    echo 
    '<td>'.$_SESSION['artikelprijs'][$i].'</td>';
                    echo 
    '</tr>';
                    
    $k $k+1;
                    
    $totaalprijs $totaalprijs +($_SESSION['artikelprijs'][$i] * $_SESSION['artikelaantal'][$i]);
                    }
                }
            }
        }
        echo 
    "<tr><td colspan =\"4\">Totaal prijs  ¤".$totaalprijs."</td></tr></table></form><br/>";
    }
    ?>


    en ja het werkt

    http://dgb.clanslayers.com/

    user: klant
    pass: klant

    [ Bericht 1% gewijzigd door cablegunmaster op 12-02-2009 00:28:01 ]
    Redacted
    pi_65972299
    Waarom gebruik je drie if's binnen elkaar, en niet gewoon:

    1if (is_numeric($_SESSION['artikelaantal'][$i]) && $_SESSION['artikelaantal'][$i] > 0 && $_SESSION['artikelaantal'][$i] <= $_SESSION['voorraad'][$i])


    (het lijkt me overigens logischer om eerst te kijken of iets numeriek is, voordat je gaat kijken of het groter is dan 0 )
    pi_65972385
    quote:
    Op donderdag 12 februari 2009 00:38 schreef Roy_T het volgende:
    Waarom gebruik je drie if's binnen elkaar, en niet gewoon:
    [ code verwijderd ]

    (het lijkt me overigens logischer om eerst te kijken of iets numeriek is, voordat je gaat kijken of het groter is dan 0 )
    * shrugs * kon zo ook ja maar ik vind het zo'n gedoe met && en || dan moet je weer met extra haakjes werken

    maar heb hem nu als 1 regel staan dankzij jou
    Redacted
    pi_65972454
    quote:
    Op donderdag 12 februari 2009 00:41 schreef cablegunmaster het volgende:

    * shrugs * kon zo ook ja maar ik vind het zo'n gedoe met && en || dan moet je weer met extra haakjes werken
    In dit geval geen extra haakjes nodig hoor

    Jouw manier werkt, maar is allesbehalve "marktconform" (en zou bij ieder bedrijf onacceptabel zijn ).
    pi_65972505
    quote:
    Op donderdag 12 februari 2009 00:43 schreef Roy_T het volgende:

    [..]

    In dit geval geen extra haakjes nodig hoor

    Jouw manier werkt, maar is allesbehalve "marktconform" (en zou bij ieder bedrijf onacceptabel zijn ).
    het is voor een school project waar niemand meehelpt en ik een hoog cijfer op ga halen
    ik push iedereen en als ze zo door blijven gaan betekent dat voor hun een onvoldoende en voor mij een 8

    en ik heb geen idee hoe het in het zakelijke leven hiermee gaat . 1e jaars ict studentje.
    Net begonnen aan php (10 weekjes )
    Redacted
    pi_65972773
    Het idee is iig om geen overbodige statements te gebruiken, dus als het in één if kan: stop het in één if (tenzij het echt onleesbaar wordt, maar dat is hier niet het geval).

    Wanneer "is_numeric($_SESSION['artikelaantal'][$i])" false is trouwens, dan voert 'ie de rest van de if niet uit, dus je zorgt niet voor extra overhead
    pi_65972843
    quote:
    Op donderdag 12 februari 2009 00:58 schreef Roy_T het volgende:
    Het idee is iig om geen overbodige statements te gebruiken, dus als het in één if kan: stop het in één if (tenzij het echt onleesbaar wordt, maar dat is hier niet het geval).

    Wanneer "is_numeric($_SESSION['artikelaantal'][$i])" false is trouwens, dan voert 'ie de rest van de if niet uit, dus je zorgt niet voor extra overhead
    extra overhead = rekenkracht ?
    Redacted
    pi_65974772
    quote:
    Op donderdag 12 februari 2009 00:58 schreef Roy_T het volgende:
    Het idee is iig om geen overbodige statements te gebruiken, dus als het in één if kan: stop het in één if (tenzij het echt onleesbaar wordt, maar dat is hier niet het geval).
    tenzij je foutmeldingen of iets anders wilt triggeren, afhankelijk van wat er fout gaat, dan kom je er niet uit met 1 statement.... maar in dit geval (zonder else statements) is 1 statement wel een stuk netter ja.

    Feitelijk voer je ook maar 1 controle uit, met 1 resultaat (goed of fout) -> 1 regel.
    pi_65975426
    quote:
    Op donderdag 12 februari 2009 08:28 schreef Xcalibur het volgende:

    tenzij je foutmeldingen of iets anders wilt triggeren, afhankelijk van wat er fout gaat, dan kom je er niet uit met 1 statement.... maar in dit geval (zonder else statements) is 1 statement wel een stuk netter ja.
    Dat leek mij voor zich te spreken
    pi_65979514
    Weet iemand toevallig een scriptje/programma die een database structuur graphisch kan weergeven?
    pi_65979725
    quote:
    Op donderdag 12 februari 2009 11:30 schreef Keiichi het volgende:
    Weet iemand toevallig een scriptje/programma die een database structuur graphisch kan weergeven?
    ik weet dat het met visio kan implementeren maar dat was ook ver van volledig maar je kon wel verbinding maken met de database en alles binnen halen. hoe en wat geen idee

    Maar een ex-projectgenoot kreeg het voor elkaar.
    Redacted
    pi_65979774
    quote:
    Op donderdag 12 februari 2009 11:30 schreef Keiichi het volgende:
    Weet iemand toevallig een scriptje/programma die een database structuur graphisch kan weergeven?
    DBDesigner 4 kan dat wel volgens mij, als je een Windows app zoekt. Freeware volgens mij.
    pi_65982153
    quote:
    Op woensdag 11 februari 2009 21:15 schreef GlowMouse het volgende:

    [..]

    Gelukkig maar, bij jouw situatie hoor je geen grote verschillen te ontdekken. Die zie je pas bij grote belasting. Die indices zouden je query wel 100x sneller maken. Wellicht dat je nog andere queries hebt die er profijt van hebben, want ik zou toch neigen naar wel toevoegen.
    Ws zet ik het wel om, maar goed. Toch vind ik het vervelend dat het uitlezen van zo weinig data zoveel tijd moet kosten
    quote:
    Op woensdag 11 februari 2009 23:32 schreef Roy_T het volgende:
    Het hele row vs table locking voordeel gaat op bij veel writes, dus je testcase is waardeloos
    Klopt, daarin heb je gelijk. Maar testen op de huidige server is gewoon niet te doen

    Er is blijkbaar geen andere / betere opzet qua structuur, dat is wel balen
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_65982211
    quote:
    Op donderdag 12 februari 2009 12:42 schreef Chandler het volgende:

    Klopt, daarin heb je gelijk. Maar testen op de huidige server is gewoon niet te doen
    How about lokaal?
    pi_65982710
    Ik heb werkelijk geen idee hoe ik dit zou moeten simuleren?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66008420
    Hoi, ik ben een PHP noob en heb een contactformuliertje online gevonden. Het werkt perfect behalve 1 ding: Ik krijg de woonplaats van de persoon die het invult niet door, de naam, email, en bericht lukt perfect. Hoe komt dit? Hieronder vind je de broncodes van de twee relevante bestanden:

    Index.html

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">

    <head>
    <title>A Nice & Simple Contact Form</title>

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    <link rel="stylesheet" type="text/css" href="style.css" />
    </head>

    <body>

    <div id="page-wrap">

    <img src="images/title.gif" alt="A Nice & Simple Contact Form" /><br /><br />




    <div id="contact-area">

    <form method="post" action="contactengine.php">
    <label for="Name" id="Name">Naam:</label>
    <input type="text" name="Name" />

    <label for="City" id="City">Woonplaats:</label>
    <input type="text" name="City" />

    <label for="Email" id="Email">Email:</label>
    <input type="text" name="Email" />

    <label for="Message" id="Message">Bericht:</label><br />
    <textarea name="Message" rows="20" cols="20"></textarea>

    <input type="submit" name="submit" value="Verzend" class="submit-button" />
    </form>

    <div style="clear: both;"></div>

    </div>

    </div>

    <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
    </script>
    <script type="text/javascript">
    _uacct = "UA-68528-29";
    urchinTracker();
    </script>

    </body>

    </html>


    contactengine.php

    <?php

    $EmailFrom = "archytas@telenet.be";
    $EmailTo = "archytas@telenet.be";
    $Subject = "Contactname Buonissimo - Kok aan huis";
    $Name = Trim(stripslashes($_POST['Name']));
    $Tel = Trim(stripslashes($_POST['City']));
    $Email = Trim(stripslashes($_POST['Email']));
    $Message = Trim(stripslashes($_POST['Message']));

    // validation
    $validationOK=true;
    if (!$validationOK) {
    print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
    exit;
    }

    // prepare email body text
    $Body = "";
    $Body .= "Name: ";
    $Body .= $Name;
    $Body .= "\n";
    $Body .= "City: ";
    $Body .= $City;
    $Body .= "\n";
    $Body .= "Email: ";
    $Body .= $Email;
    $Body .= "\n";
    $Body .= "Message: ";
    $Body .= $Message;
    $Body .= "\n";


    $success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");


    if ($success){
    print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php\">";
    }
    else{
    print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
    }
    ?>

      vrijdag 13 februari 2009 @ 01:32:40 #181
    187069 slacker_nl
    Sicko pur sang
    pi_66008598
    quote:
    Op vrijdag 13 februari 2009 01:16 schreef Buonissimo het volgende:
    Hoi, ik ben een PHP noob en heb een contactformuliertje online gevonden. Het werkt perfect behalve 1 ding: Ik krijg de woonplaats van de persoon die het invult niet door, de naam, email, en bericht lukt perfect. Hoe komt dit? Hieronder vind je de broncodes van de twee relevante bestanden:
    Zet alles eens in code blocks (of beter, gebruik een pastebin voor zulke grote lappen code).
    In theory there is no difference between theory and practice. In practice there is.
    pi_66010129
    Zo te zien wordt city in het Tel veld gezet:
    1$Tel = Trim(stripslashes($_POST['City'])); 


    Dat moeten dus 2 regels worden:

    1
    2
    $Tel = Trim(stripslashes($_POST['Tel'])); 
    $City = Trim(stripslashes($_POST['City'])); 


    :)
      vrijdag 13 februari 2009 @ 08:30:14 #183
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_66010169
    quote:
    Op vrijdag 13 februari 2009 01:16 schreef Buonissimo het volgende:
    Hoi, ik ben een PHP noob en heb een contactformuliertje online gevonden. Het werkt perfect behalve 1 ding: Ik krijg de woonplaats van de persoon die het invult niet door, de naam, email, en bericht lukt perfect. Hoe komt dit? Hieronder vind je de broncodes van de twee relevante bestanden:

    Index.html

    if ($success){
    print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php\">";
    }
    else{
    print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
    }
    ?>


    En gebruik header("Location: /error.html"); om door te sturen!
    pi_66010782
    En gebruik aub minder hoofdletters Functies worden in PHP nooit met een hoofdletter geschreven, dus geen Trim() maar trim(). Namen van variabelen kunnen met hoodletters, maar ik heb het nog nooit ergens gezien (dus gewoon $city ipv $City).
      vrijdag 13 februari 2009 @ 10:15:47 #185
    187069 slacker_nl
    Sicko pur sang
    pi_66012404
    Dat is gewoon een coding stijl (@hoofdletters voor variablen). Er zijn zat mensen die met Hoofdletters coden. OF CamelCase...

    Als we het over coding standards gaan hebben: http://www.dagbladet.no/development/phpcodingstandard/

    Misschien een goeie link voor in de OP.
    In theory there is no difference between theory and practice. In practice there is.
    pi_66012535
    Ik ga voor camelCase. CamelCase staat slordig. Vind ik .
      vrijdag 13 februari 2009 @ 10:23:58 #187
    187069 slacker_nl
    Sicko pur sang
    pi_66012680
    quote:
    Op vrijdag 13 februari 2009 10:19 schreef veldmuis het volgende:
    Ik ga voor camelCase. CamelCase staat slordig. Vind ik .
    Vind ik ook...
    In theory there is no difference between theory and practice. In practice there is.
    pi_66013855
    quote:
    Op vrijdag 13 februari 2009 10:15 schreef slacker_nl het volgende:
    Dat is gewoon een coding stijl (@hoofdletters voor variablen). Er zijn zat mensen die met Hoofdletters coden. OF CamelCase...
    Ik heb héél veel code van anderen gezien. Daarin inderdaad wel $camelCase (wat mij betreft prima), maar nooit $CamelCase.
    pi_66014808
    ik doe ook camelCase zelfs met php functies.

    vind isSet mooier dan isset

    ps. weet iemand hoe ik simpel en snel alle values uit een array in een string kan zetten? dus 0=>'a', 1=>'b' naar $str = 'ab';
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 13 februari 2009 @ 11:30:46 #190
    46383 Tiemie
    sowieso wel!
    pi_66014888
    quote:
    Op vrijdag 13 februari 2009 11:28 schreef Chandler het volgende:
    ik doe ook camelCase zelfs met php functies.

    vind isSet mooier dan isset :P

    ps. weet iemand hoe ik simpel en snel alle values uit een array in een string kan zetten? dus 0=>'a', 1=>'b' naar $str = 'ab';
    1
    2
    3
    4
    <?php
    $a 
    = array(=> 'a'=> 'b');
    print 
    join(''$a);
    ?>
      vrijdag 13 februari 2009 @ 11:31:16 #191
    75592 GlowMouse
    l'état, c'est moi
    pi_66014906
    quote:
    Op vrijdag 13 februari 2009 08:30 schreef Likkende_Lassie het volgende:

    [..]

    En gebruik header("Location: /error.html"); om door te sturen!
    In een Location-header moet de volledige URL, inclusief http://

    En was PHP zelf maar eens consequent met functienamen en argumenten. Waarom heeft html_ entity_ decode wel en htmlentities geen underscore? Waarom komt bij in_array eerst de needle en dan de haystack, en is het bij strstr precies andersom?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66015160
    quote:
    Op vrijdag 13 februari 2009 11:28 schreef Chandler het volgende:
    ik doe ook camelCase zelfs met php functies.

    vind isSet mooier dan isset
    En helaas is PHP zo ranzig dat het nog werkt ook.

    En GlowMouse: rete-irritant inderdaad
    pi_66015193
    quote:
    Op vrijdag 13 februari 2009 11:30 schreef Tiemie het volgende:
    Ik wist dat het gemakkelijk was idd stom dat ik hier niet aan gedacht had! tnx!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66015239
    quote:
    Op vrijdag 13 februari 2009 11:39 schreef Roy_T het volgende:
    En helaas is PHP zo ranzig dat het nog werkt ook.

    En GlowMouse: rete-irritant inderdaad
    Ach laten we dan maar niet beginnen over zoveel andere functies van PHP

    De ene wil eerst de input weten en daarna de opties en de ander weer net andersom!? dus wat dat betreft, prettig taaltje
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66015258
    quote:
    Op donderdag 12 februari 2009 12:56 schreef Chandler het volgende:
    Ik heb werkelijk geen idee hoe ik dit zou moeten simuleren?
    Anyone?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 13 februari 2009 @ 11:44:42 #196
    46383 Tiemie
    sowieso wel!
    pi_66015361
    quote:
    Op vrijdag 13 februari 2009 11:41 schreef Chandler het volgende:

    [..]

    Anyone?
    gewoon heel veel inserts doen en tegelijkertijd selects doen op die tabel lijkt me.
      vrijdag 13 februari 2009 @ 11:47:40 #197
    75592 GlowMouse
    l'état, c'est moi
    pi_66015468
    quote:
    Op vrijdag 13 februari 2009 11:44 schreef Tiemie het volgende:

    [..]

    gewoon heel veel inserts doen en tegelijkertijd selects doen op die tabel lijkt me.
    Ik zou naar een kant en klare app zoeken, tenzij je zelf multithreaded applicaties kunt schrijven. Anders vind je nooit de grenzen van een databaseserver.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66017873
    quote:
    Op vrijdag 13 februari 2009 11:47 schreef GlowMouse het volgende:
    Ik zou naar een kant en klare app zoeken, tenzij je zelf multithreaded applicaties kunt schrijven. Anders vind je nooit de grenzen van een databaseserver.
    Dat gaat mij iig niet lukken, ik ga eens zoeken!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 13 februari 2009 @ 13:15:27 #199
    12221 Tijn
    Powered by MS Paint
    pi_66018255
    quote:
    Op vrijdag 13 februari 2009 10:59 schreef Roy_T het volgende:

    [..]

    Ik heb héél veel code van anderen gezien. Daarin inderdaad wel $camelCase (wat mij betreft prima), maar nooit $CamelCase.
    Toch apart dat PHP zo gefocused is op lowerCamelCase, want in veel programmeertalen (o.a. Pascal, Python, Java en .NET) kom je wel veel UpperCamelCase tegen.
      vrijdag 13 februari 2009 @ 13:29:02 #200
    46383 Tiemie
    sowieso wel!
    pi_66018693
    quote:
    Op vrijdag 13 februari 2009 13:15 schreef Tijn het volgende:

    [..]

    Toch apart dat PHP zo gefocused is op lowerCamelCase, want in veel programmeertalen (o.a. Pascal, Python, Java en .NET) kom je wel veel UpperCamelCase tegen.
    lowerCamelCase voor variabelen en UpperCamelCase voor classes.
    pi_66041524
    Ik wil graag comments op mijn kleine stukje image bouwen.

    Ik wil namelijk fonts op de juiste manier op de juiste plek laten zien.





    gemaakt door de volgende code

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    <?php
    function calculateTextBox($text$fontFile$fontSize$fontAngle)
    {
        
    $rect imagettfbbox($fontSize,
                             
    $fontAngle,
                             
    $fontFile,
                             
    $text);

        
    $minX min(array($rect[0],
                          
    $rect[2],
                          
    $rect[4],
                          
    $rect[6]));
        
    $maxX max(array($rect[0],
                          
    $rect[2],
                          
    $rect[4],
                          
    $rect[6]));
        
    $minY min(array($rect[1],
                          
    $rect[3],
                          
    $rect[5],
                          
    $rect[7]));
        
    $maxY max(array($rect[1],
                          
    $rect[3],
                          
    $rect[5],
                          
    $rect[7]));

        return array(
    "left"   => abs($minX),
                     
    "top"    => abs($minY),
                     
    "width"  => $maxX $minX,
                     
    "height" => $maxY $minY,
                     
    "box"    => $rect);
    }

    putenv('GDFONTPATH=' realpath('.'));
    $im imagecreatetruecolor(721,
                               
    241);

    $color imageColorAllocate($im000);
    $back  imagecolorallocate($im255255255);

    imagefill($im00$back);

    // lines
    for ($x 0$x 4$x++)
    {
        
    imageline($im0$x 80721, ($x 80), $color);
    }

    for (
    $x 0$x 11$x++)
    {
        
    imageline($im$x 801$x 80241$color);
    }

    $fontsize 40;
    $font  'test2.ttf';
    $x 0;
    $y 0;
    foreach (
    range("a""z") AS $id => $key)
    {
        
    $bbox calculateTextBox($key$font$fontsize0);

        
    imagettftext ($im,
                      
    12,
                      
    0,
                      
    $x 3,
                      
    $y 14,
                      
    $color,
                      
    "standard.ttf",
                      
    $key);

        
    imagettftext ($im,
                      
    $fontsize,
                      
    0,
                      
    $x + (80/$bbox['width']/2),
                      
    $y + (80 - ($bbox['height']/2)),
                      
    $color,
                      
    $font,
                      
    $key);
        
    $x $x 80;
        
        if (
    $x 700)
        {
            
    $x 0;
            
    $y $y 80;
        }
        

    }

    header('Content-Type: image/png');
    imagePNG($im);
    ?>


    Alleen vind ik het op een of andere manier net zo dat de letters net niet goed staan ofzoiets... comments?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 13 februari 2009 @ 23:49:34 #202
    75592 GlowMouse
    l'état, c'est moi
    pi_66042741
    1
    2
    3
    4
    5
    6
    <?php
    $im 
    imagecreatetruecolor(721241);
    for (
    $x 0$x 11$x++) {
        
    imageline($im$x 801$x 80241$color);
    }
    ?>

    Wat gebeurt er als $x=10?

    1
    2
    3
    4
    <?php
                      $x 
    + (80/$bbox['width']/2),
                      
    $y + (80 - ($bbox['height']/2)),
    ?>

    Dat moet je niet doen. Zoals je kunt lezen: "the coordinates given by x and y will define the basepoint of the first character". Wil je ze netjes naast elkaar hebben, moet je dit dus niet van het karakter afhankelijk maken.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66048246
    quote:
    Op vrijdag 13 februari 2009 23:49 schreef GlowMouse het volgende:
    Wat gebeurt er als $x=10?
    Dan valt de lijn buiten de afbeelding (was eerst op basis van 800px)
    quote:
    Dat moet je niet doen. Zoals je kunt lezen: "the coordinates given by x and y will define the basepoint of the first character". Wil je ze netjes naast elkaar hebben, moet je dit dus niet van het karakter afhankelijk maken.
    En dat snap ik niet helemaal, hoe kan ik de letters dan wel netjes naast elkaar krijgen? of is dit in jou opinie mooi genoeg?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zaterdag 14 februari 2009 @ 11:02:03 #204
    12221 Tijn
    Powered by MS Paint
    pi_66049062
    quote:
    Op zaterdag 14 februari 2009 09:55 schreef Chandler het volgende:

    [..]

    hoe kan ik de letters dan wel netjes naast elkaar krijgen?
    Door ze allemaal op dezelfde baseline te zetten. Dan staan ze netjes recht. Als je ze allemaal een ander basepoint geeft (zoals je nu doet), staan ze allemaal op een andere hoogte.
    pi_66049970
    Tja, op zich ziet het er wel leuk uit (zoals ik nu heb gedaan) maar op een lijn zetten... dan moet ik eerst gaan berekenen wat de grootste letter is en daar alles op aanpassen
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zaterdag 14 februari 2009 @ 11:55:23 #206
    75592 GlowMouse
    l'état, c'est moi
    pi_66050011
    Je code zal wel anders in elkaar zitten dan dit, want geeft niet plotseling een veld minder weer.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66094690
    hoe kan ik een insert query maken met een array ?

    ik heb namelijk 3 arrays.
    $_POST['artikel_nr']
    $_POST['prijs']
    $_POST['bestelt']

    alleen geen flauw idee hoe ik de 1e van alle 3 erin kan zetten en dan de 2e etc!
    Redacted
      zondag 15 februari 2009 @ 19:59:25 #208
    75592 GlowMouse
    l'état, c'est moi
    pi_66094801
    Als ze allemaal even groot zijn, $i van 0 t/m grootte-1 laten lopen, en dan $_POST['var'][$i] gebruiken.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66094876
    quote:
    Op zondag 15 februari 2009 19:59 schreef GlowMouse het volgende:
    Als ze allemaal even groot zijn, $i van 0 t/m grootte-1 laten lopen, en dan $_POST['var'][$i] gebruiken.
    ah ja * gaat verder * ff puzzelen
    Redacted
      zondag 15 februari 2009 @ 20:15:08 #210
    75592 GlowMouse
    l'état, c'est moi
    pi_66095334
    De juiste spelling is waarschijnlijk ook 'besteld'.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66095401
    edit;

    [ Bericht 57% gewijzigd door cablegunmaster op 15-02-2009 20:56:32 ]
    Redacted
    pi_66095412
    quote:
    Op zondag 15 februari 2009 20:15 schreef GlowMouse het volgende:
    De juiste spelling is waarschijnlijk ook 'besteld'.
    heb ik op de vorige pagina ook fout gedaan
    ( das een goedwerkende fout );
    heb hem ook even ter leesbaarheid verbetert


    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
    <?php
    {
                    
    //verbinden met de server
                    
    include("content/connect.php");  
                    
    // tijd nu noteren
                    
    $tijd date("Y-m-d H:i:s");
                            
    // post dumpen en sessie om te kijken of ik nog iets mis.(over het hoofd zie)
                            
    echo var_dump($_SESSION)."<br/><br/<br/>";
                            echo 
    var_dump($_POST)."<br/><br/><br/>";
                           
    //werkt <img class="rde_img_smiley" src="http://i.fok.nl/s/smile.gif" width="15" height="15" alt="" />
                
    $sql1 ="INSERT INTO verkooporder (klant_nr,besteldatum) VALUES ('".$_SESSION['klant_nr']."','".$tijd."')";
                    
    mysql_query($sql1) or( die());
                
    //laatste vo_nr ophalen werkt het ophalen maar uitlezen niet.
                
    $sql3 ="SELECT vo_nr FROM verkooporder ORDER BY vo_nr DESC limit 1";
                    
    $test mysql_query($sql3) or( die());
                echo 
    "<br/>Test:".$test['vo_nr'];
                echo 
    var_dump($test);
                
    $test2 mysql_fetch_assoc($test);
                echo 
    $test2['vo_nr'];
                
    $p count($_POST['artikel_nr']);
                for(
    $i 0$i $p$i++)
                    {
                    
    $sql2 ="INSERT INTO verkooporderregel(vo_nr,art_nr,besteld,geleverd,vraagprijs) 
                    VALUES ('"
    .$test2."','".$_POST['artikel_nr'][$i]."','".$_POST['besteld'][$i]."','0','".$_POST['prijs'][$i]."')";
                    
    mysql_query($sql2) or(die());
                    
    $sql4 "UPDATE artikel SET voorverkopen = voorverkopen + ".$_POST['besteld'][$i].", tech_voorraad = tech_voorraad - ".$_POST['besteld'][$i]." WHERE art_nr = '".$_POST['artikel_nr'][$i]."'";
                    
    mysql_query($sql4) or(die());
                    }
                }
    ?>


    dit is dus wat ik heb
    een verkooporder word aangemaakt Dit doet hij netjes.
    dan neem ik aan dat je op 1 van die manieren de verkooporder kan echo'en? alleen het veld verkoop order maar dat lukt me niet zo. ik heb geen idee hoe ik die dan in SQL2 kan krijgen

    dit is een van mijn laatste probleempjes

    [ Bericht 17% gewijzigd door cablegunmaster op 15-02-2009 21:30:44 ]
    Redacted
      zondag 15 februari 2009 @ 21:33:19 #213
    75592 GlowMouse
    l'état, c'est moi
    pi_66098495
    *wordt aangemaakt

    mysql_query geeft geen array terug, kijk eens op http://www.php.net/mysql
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66098813
    quote:
    Op zondag 15 februari 2009 21:33 schreef GlowMouse het volgende:
    *wordt aangemaakt

    mysql_query geeft geen array terug, kijk eens op http://www.php.net/mysql
    ik kwam eruit mysql assoc
    en dan $test['vo_nr'];

    + limit foutje 0,1


    opgelost


    Ik ben klaar met mijn project je kan nu bestellen,
    Alleen dan kan jeje bestelling nog niet zien (gebeurt wel allerlei dingen achter de schermen )
    Iemand anders hoort het te laten zien ^^. ( moet in teamverband)

    http://dgb.clanslayers.com/
    user: klant
    pass: klant

    of je maakt gewoon je eigen login aan met registreren
    het winkelmandje werkt.

    [ Bericht 12% gewijzigd door cablegunmaster op 15-02-2009 21:53:53 ]
    Redacted
    pi_66130004
    Weet iemand toevallig of het mogelijk is een index te hergebruiken voor een tijdelijke tabel?

    De situatie:
    De DB bevat ongeveer een miljoen records, elk record bevat een veld waar het weeknummer en jaar instaat, dmv een join kan ik dan bepaalde weken in een tijdelijke tabel stoppen. Nu heb ik al indexen gecreëerd op de tabellen in de DB, echter vraag ik mij af of ik die indexen kan hergebruiken voor mijn tijdelijke tabel.

    Een index toevoegen nadat de tijdelijke tabel gevuld is, is geen optie, dat heb ik al getest en maakt de boel alleen maar trager. Als ik USE index_naam in de query gebruik die de data uit de tijdelijke tabel haalt dan krijg ik geen resultaten terug.
      maandag 16 februari 2009 @ 19:41:20 #216
    75592 GlowMouse
    l'état, c'est moi
    pi_66131302
    Heb je zoveel records per week dat een index nodig is? Kun je niet gewoon de hoofdtabel gebruiken met die jaar/week in je WHERE? Zolang je index met die twee velden begint, zou dat de snelste oplossing zijn mits je queries herschreven kunnen worden zodat ze niet van de temporary table gebruik hoeven maken.
    quote:
    Als ik USE index_naam in de query gebruik die de data uit de tijdelijke tabel haalt dan krijg ik geen resultaten terug.
    syntax is FROM table USE INDEX (indexnaam) of FORCE INDEX (indexnaam), maar dan moet die index wel bestaan. Meestal heb je USE INDEX niet nodig omdat MySQLs query optimizer het al goed doet.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66132974
    quote:
    Op maandag 16 februari 2009 19:41 schreef GlowMouse het volgende:
    Heb je zoveel records per week dat een index nodig is? Kun je niet gewoon de hoofdtabel gebruiken met die jaar/week in je WHERE? Zolang je index met die twee velden begint, zou dat de snelste oplossing zijn mits je queries herschreven kunnen worden zodat ze niet van de temporary table gebruik hoeven maken.
    Ik gebruik de tijdelijke tabel voor een query die later in het script uitgevoerd wordt, ik hoef dan niet de hele DB van een paar gig te doorzoeken, alleen de data in de tijdelijke tabel. Per week komen er ongeveer 100.000 records bij, en ik ben bang dat ik op lange termijn performance problemen krijg als ik geen gebruik maak van de tijdelijke tabel. Gezien de tijdelijke tabel alleen de data van 2 week bevat +/- 200.000 records zou dat imo sneller moeten zijn.
    quote:
    [..]

    syntax is FROM table USE INDEX (indexnaam) of FORCE INDEX (indexnaam), maar dan moet die index wel bestaan. Meestal heb je USE INDEX niet nodig omdat MySQLs query optimizer het al goed doet.
    Klopt, ik heb het hier niet helemaal goed vermeld, de query klopt wel. Ik heb USE INDEX toegepast om er zeker van te zijn dat de index ook gebruikt wordt, maar blijkbaar kan een tijdelijke tabel geen gebruik maken van indexen die al aangemaakt zijn, alleen indexen die aangemaakt zijn bij het vullen van de tijdelijke tabel.
      maandag 16 februari 2009 @ 20:33:22 #218
    75592 GlowMouse
    l'état, c'est moi
    pi_66133719
    quote:
    Op maandag 16 februari 2009 20:19 schreef The_Terminator het volgende:

    [..]

    Ik gebruik de tijdelijke tabel voor een query die later in het script uitgevoerd wordt, ik hoef dan niet de hele DB van een paar gig te doorzoeken, alleen de data in de tijdelijke tabel. Per week komen er ongeveer 100.000 records bij, en ik ben bang dat ik op lange termijn performance problemen krijg als ik geen gebruik maak van de tijdelijke tabel. Gezien de tijdelijke tabel alleen de data van 2 week bevat +/- 200.000 records zou dat imo sneller moeten zijn.
    Voor zover queries van indices gebruik kunnen maken, hoef je je over grote tabellen geen zorgen te maken zolang de index in het geheugen past (en key_buffer_size voldoende groot is).
    Maar gaat het nu om een tijdelijke tabel (die weggaat zodra je MySQLsessie voorbij is) of een tabel met tijdelijke data?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66135200
    quote:
    Op maandag 16 februari 2009 20:33 schreef GlowMouse het volgende:
    Maar gaat het nu om een tijdelijke tabel (die weggaat zodra je MySQLsessie voorbij is) of een tabel met tijdelijke data?
    'CREATE TEMPORARY TABLE' gaat het om
      maandag 16 februari 2009 @ 21:08:19 #220
    180193 Biefstuk
    Medium gebakken
    pi_66135639
    Is dat PHP en MySQL voor dummies boek iets?
    Ben van plan om php te leren of in ieder geval weten toe te passen.
    Most people only expose themselves to information that matches their own worldview.
    pi_66138939
    @GlowMouse: ik heb de query herschreven en maak nu geen gebruik meer van de temp table. De performance is nu stukken beter, maar ik hoop dat het ook zo blijft...
    pi_66143750
    quote:
    Op vrijdag 13 februari 2009 23:22 schreef Chandler het volgende:
    Ik wil graag comments op mijn kleine stukje image bouwen.

    Ik wil namelijk fonts op de juiste manier op de juiste plek laten zien.

    [ link | afbeelding ]

    [ link | afbeelding ]

    gemaakt door de volgende code
    [ code verwijderd ]

    Alleen vind ik het op een of andere manier net zo dat de letters net niet goed staan ofzoiets... comments?
    Ik zou even wachten op wanneer CSS3 wordt ondersteunt door de meeste browsers dan kun je gewoon die font neurpleuren op je server en wordt die gedownload door de browser ofzo iets dergelijks... iig externe fonts worde ondersteunt in de toekomst.
    pi_66144652
    quote:
    Op maandag 16 februari 2009 23:34 schreef iBolt het volgende:

    Ik zou even wachten op wanneer CSS3 wordt ondersteunt door de meeste browsers dan kun je gewoon die font neurpleuren op je server en wordt die gedownload door de browser ofzo iets dergelijks... iig externe fonts worde ondersteunt in de toekomst.
    "Even" wachten?

    Als het puur om tekst in een ander font tonen (op een HTML pagina) gaat, dan zou ik eens naar typeface.js kijken. Maar daar heeft Chandler het niet voor nodig gok ik
    pi_66145120
    quote:
    Op maandag 16 februari 2009 21:08 schreef Biefstuk het volgende:
    Is dat PHP en MySQL voor dummies boek iets?
    Ben van plan om php te leren of in ieder geval weten toe te passen.
    ik vond het een waardeloos boek
    Snapte de opdrachten van mn leraar beter

    al heb ik het boek wel op mn pc

    [ Bericht 10% gewijzigd door cablegunmaster op 17-02-2009 12:04:36 ]
    Redacted
    pi_66154149
    Argh, FOK doet weer stom met posten!

    Ik zit weer met een regex probleem, want ik wil namelijk gegevens uit een lap HTML filteren maar op een of andere manier werkt dat niet.

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
                      <h2 class="Kop2">Bedrijfstitel</h2>
                      
                      <table cellpadding="0" cellspacing="0" border="0" width="100%" style="margin-top:10px;">
                         <tr>
                            <td width="50%" align="left" valign="top">
                               <!-- -->
                      
                               <table cellpadding="0" cellspacing="0" border="0" class="addressItem">
                                  <tr>
                                     <th>Adres</th>
                                     <td>Hoofdstraat 1</td>
                                  </tr>
                                  <tr>
                                     <th>Postcode</th>
                                     <td>0000 AA</td>
                                  </tr>
                                  <tr>
                                     <th>Plaats</th>
                                     <td>Woonplaats</td>
                                  </tr>
                                  <tr>
                                     <th>Provincie</th>
                                     <td>Provincie</td>
                                  </tr>
                                  <tr>
                                     <th>Land</th>
                                     <td>Land</td>
                                  </tr>
                               </table>
                      
                               <!-- -->
                            </td>
                            <td width="50%" align="right" valign="top">
                               <!-- -->
                               
                               <table cellpadding="0" cellspacing="0" border="0" class="addressItem">
                                  <tr>
                                     <th>Contactpersoon</th>
                                     <td>Persoon</td>
                                  </tr>
                                  <tr>
                                     <th>Telefoon</th>
                                     <td>0000-000000</td>
                                  </tr>
                                  <tr>
                                     <th>Fax</th>
                                     <td></td>
                                  </tr>
                                  <tr>
                                     <th>E-mail</th>
                                     <td><a href="mailto:email@email.com">email@email.com</a> </td>
                                  </tr>
                                  <tr>
                                     <th>Website</th>
                                     <td><a href="http://www.url.com" target="_blank">www.url.com</a></td>
                                  </tr>
                               </table>
                               
                               <!-- -->
                            </td>
                         </tr>
                      </table>


    Dit wil ik uitlezen met de volgende regex

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <?php
    $match 
    '!<h2 class="Kop2">([^/].*)<\/h2>

                            <table cellpadding="0" cellspacing="0" border="0" width="100%" style="margin-top:10px;">
                                <tr>
                                    <td width="50%" align="left" valign="top">
                                        <\!-- -->

                                        <table cellpadding="0" cellspacing="0" border="0" class="addressItem">
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                        <\/table>

                                        <\!-- -->
                                    <\/td>
                                    <td width="50%" align="right" valign="top">
                                        <\!-- -->

                                        <table cellpadding="0" cellspacing="0" border="0" class="addressItem">
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td>([^/].*)<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td><a href="mailto:">([^/].*)<\/a>&nbsp;<\/td>
                                            <\/tr>
                                            <tr>
                                                <th>([^/].*)<\/th>
                                                <td><a href="" target="_blank">([^/].*)<\/a><\/td>
                                            <\/tr>
                                        <\/table>

                                        <\!-- -->
                                    <\/td>
                                <\/tr>
                            <\/table>!im'
    ;
    ?>


    echter krijg ik niets te zien :( een lege array maar geen fouten... wat doe ik fout? waar ga ik de fout in?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66159757
    Jezus, met een regex Zou je niet liever gewoon de DOM parsen?
      dinsdag 17 februari 2009 @ 14:41:43 #227
    187069 slacker_nl
    Sicko pur sang
    pi_66159898
    Gebruik een dom-parser.
    In theory there is no difference between theory and practice. In practice there is.
    pi_66159977
    Dit lijkt me inderdaad niet de bedoeling van een regex
    pi_66159982
    quote:
    Op dinsdag 17 februari 2009 14:38 schreef Roy_T het volgende:
    Jezus, met een regex Zou je niet liever gewoon de DOM parsen?
    Gewoon de explode functie eroverheen trekken, dat zou ik in iedergeval doen gezien er toch met vaste gegevens gewerkt wordt.
    pi_66161474
    Waar wil je op exploden dan?

    Zelfs als dat werkt is het ranzig imo. Je wilt de DOM parsen. Waarom zou je dan niet een set functies gebruiken die speciaal daarvoor gemaakt is
    pi_66161969
    quote:
    Op dinsdag 17 februari 2009 15:23 schreef Roy_T het volgende:
    Waar wil je op exploden dan?
    <th> en <td>

    Vervolgens de 2 array's combineren en voila.
    pi_66162672
    Juist. Ranzig dus
    pi_66189757
    Ik ben bezig met een reactiescriptje, en krijg de welbekende fout: Warning: Cannot modify header information - headers already sent by (output started at config.php:23) in includes\download.php on line 130.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
       <?php
        if(isset($_POST['reactie'])) {
          $naam = htmlspecialchars($_POST['naam']);
          $bericht = htmlspecialchars($_POST['bericht']);
          $error = '';
          if(strlen($naam) < 2) {
            $error .= 'De naam moet minimaal 2 letters bevatten.<br>';
          }
          if(strlen($bericht) < 5) {
            $error .= 'Het bericht moet minimaal 5 tekens bevatten.<br>';
          }
          if(!empty($error)) {
            echo $error;
            echo '<br>';
          }
          else {
            $time = time();
            $iSql = "INSERT INTO downloads_reacties (downloadid,door,tijd,bericht) VALUES ('".$sGet."','".$naam."','".$time."','".nl2br($_POST['bericht'])."')";
            mysql_query($iSql) or die(mysql_error());
            header("Location: ".$_SERVER['REQUEST_URI']);
          }
        }
        ?>
    pi_66190102
    als die tab voor je <?php tag zit is dat iig output

    En kijk eens in je config.php op regel 23 zou ik zeggen...
    pi_66190352
    quote:
    Op woensdag 18 februari 2009 10:33 schreef Nashje het volgende:
    Ik ben bezig met een reactiescriptje, en krijg de welbekende fout: Warning: Cannot modify header information - headers already sent by (output started at config.php:23) in includes\download.php on line 130.
    [ code verwijderd ]
    Kennelijk levert je config.php al output, dan gaat het is mis als je daarna iets met header() probeert. Oplossing: geen output leveren in config.php.
    pi_66190507
    Dit is de config.php. Op line 23 is niets fout toch?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <?php
    session_start();

    // Pagina voor database connectie en andere instellingen

    // Database gegevens:
    $db['host'] = "localhost";
    $db['user'] = "root";
    $db['pass'] = "password";
    $db['db']   = "database";

    // Database connectie
    mysql_connect($db['host'],$db['user'],$db['pass']);
    mysql_select_db($db['db']);

    // Admin gegevens
    $admin_username = "admin";
    $admin_password = "admin";

    // Html instellingenn
    echo '
    <title>Downloadsysteem</title>
    ';
    ?>
    pi_66190949
    quote:
    Op woensdag 18 februari 2009 10:52 schreef Nashje het volgende:
    Dit is de config.php. Op line 23 is niets fout toch?
    [ code verwijderd ]
    Die echo veroorzaakt het.
    pi_66191312
    quote:
    Op woensdag 18 februari 2009 11:05 schreef The_Terminator het volgende:

    [..]

    Die echo veroorzaakt het.
    Ehh nee.
    pi_66191360
    quote:
    Op woensdag 18 februari 2009 11:14 schreef Nashje het volgende:

    [..]

    Ehh nee.
    al geprobeerd 21 -23 eruit te halen en opnieuw te proberen ? want het blijft een output.
    Redacted
    pi_66192404
    quote:
    Op woensdag 18 februari 2009 11:16 schreef cablegunmaster het volgende:

    [..]

    al geprobeerd 21 -23 eruit te halen en opnieuw te proberen ? want het blijft een output.
    Ja, vandaar ook mijn reactie 'ehh nee' .
      woensdag 18 februari 2009 @ 11:57:14 #241
    46383 Tiemie
    sowieso wel!
    pi_66192881
    quote:
    Op woensdag 18 februari 2009 11:14 schreef Nashje het volgende:

    [..]

    Ehh nee.
    Ehh ja. Echo == Output .

    Waarschijnlijk staat er na de sluit-tag ook nog whitespace.
    pi_66193048
    quote:
    Op woensdag 18 februari 2009 11:57 schreef Tiemie het volgende:

    [..]

    Ehh ja. Echo == Output .

    Waarschijnlijk staat er na de sluit-tag ook nog whitespace.
    Nee, geen whitespace.

    Heb dit in ieder geval helemaal weggehaald:
    // Html instellingenn
    echo '
    <title>Downloadsysteem</title>
    ';

    Error die ik dan krijg:
    Warning: Cannot modify header information - headers already sent by (output started at index.php:8) in includes\download.php on line 130
      woensdag 18 februari 2009 @ 12:14:48 #243
    62215 qu63
    ..de tijd drinkt..
    pi_66193378
    Zit er dan niet een fout in download.php op regel 130
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_66193392
    Toch heb je écht ergens output Geen spatie voor je <?php tag, of na je ?>
    pi_66193434
    quote:
    Op woensdag 18 februari 2009 12:02 schreef Nashje het volgende:

    [..]

    Nee, geen whitespace.

    Heb dit in ieder geval helemaal weggehaald:
    // Html instellingenn
    echo '
    <title>Downloadsysteem</title>
    ';

    Error die ik dan krijg:
    Warning: Cannot modify header information - headers already sent by (output started at index.php:8) in includes\download.php on line 130
    Dan heb je dus op meerdere plekken output zitten. Ook in index.php op (of bij) regel 8. Veel duidelijker zijn die foutmeldingen echt niet te krijgen.
      woensdag 18 februari 2009 @ 12:18:24 #246
    56176 Catch22-
    Ben je Blind?!
    pi_66193509
    quote:
    Op vrijdag 13 februari 2009 10:59 schreef Roy_T het volgende:

    [..]

    Ik heb héél veel code van anderen gezien. Daarin inderdaad wel $camelCase (wat mij betreft prima), maar nooit $CamelCase.
    variabelen camelCase, methoden/attributen PascalCase
    quote:
    Op woensdag 18 februari 2009 12:02 schreef Nashje het volgende:

    [..]

    Nee, geen whitespace.

    Heb dit in ieder geval helemaal weggehaald:
    // Html instellingenn
    echo '
    <title>Downloadsysteem</title>
    ';

    Error die ik dan krijg:
    Warning: Cannot modify header information - headers already sent by (output started at index.php:8) in includes\download.php on line 130
    je moet dat commentaar weghalen. Je mag geen output e.d. voor je sessies enzo hebben (zoals de error zegt. wat staat er op line 130 ?
    Heel veel groetjes, Catch22
    En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
    Met GHB nooit meer nee
    Storneren een optie?
    pi_66193661
    Sinds wanneer zorgen comments voor output
    pi_66194176
    Line 130:
    1header("Location: ".$_SERVER['REQUEST_URI']);


    index.php eerste regels:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    ini_set("display_errors", 1);
    error_reporting(E_ALL);
    include('config.php');
    ?>
    <b>Menu</b><br>
    <a href="index.php">Overzicht</a> - <a href="index.php?mode=toevoegen">Voeg download toe</a> - <a href="index.php?mode=admin">Admin</a>
    <?php
    if(isset($_SESSION['admin'])) { 
      echo " - <a href=\"index.php?mode=admin_overzicht&act=nieuwcat\">Voeg categorie toe</a> - <a href=\"index.php?mode=logout\">Loguit</a>";
    }
    echo "<br><br>";
      woensdag 18 februari 2009 @ 13:02:20 #249
    56176 Catch22-
    Ben je Blind?!
    pi_66194742
    je kan geen output sturen voor een header. dan moet je met ob_start() gaan werken.
    Heel veel groetjes, Catch22
    En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
    Met GHB nooit meer nee
    Storneren een optie?
    pi_66194770
    die index.php staat toch helemaal vol met output
    daar zit je probleem dus!
    pi_66195396
    http://nl.php.net/header


    oh ja zelf een vraag hoe kan ik een agenda maken en dat hij alles dan de huidige datum er niet in stopt?
    kan dat in een sql query?

    select * from kalender where datum < curdate?
    Redacted
      woensdag 18 februari 2009 @ 13:24:35 #252
    75592 GlowMouse
    l'état, c'est moi
    pi_66195494
    quote:
    Op woensdag 18 februari 2009 13:21 schreef cablegunmaster het volgende:
    oh ja zelf een vraag hoe kan ik een agenda maken en dat hij alles dan de huidige datum er niet in stopt?
    kan dat in een sql query?

    select * from kalender where datum < curdate?
    Dan mis je dingen uit de toekomst en toon je wel dingen van een uur geleden die dus mogelijk wel op dezelfde datum zijn.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66195520
    quote:
    Op woensdag 18 februari 2009 13:24 schreef GlowMouse het volgende:

    [..]

    Dan mis je dingen uit de toekomst en toon je wel dingen van een uur geleden die dus mogelijk wel op dezelfde datum zijn.
    hoe kan je dat doen op de datum zelf?
    ik heb geen idee hoe en wat
    Redacted
      woensdag 18 februari 2009 @ 13:26:46 #254
    75592 GlowMouse
    l'état, c'est moi
    pi_66195551
    Met mktime en date moet het lukken.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66195857
    quote:
    Op woensdag 18 februari 2009 13:26 schreef GlowMouse het volgende:
    Met mktime en date moet het lukken.
    Maar ik heb al een date veld in mijn sql.
    Al hoe moet ik het uit de sql halen

    dat alle velden die groter zijn dan de huidige datum?
    want ik snap niet hoe ik de datum van nu in een voorwaarde kan zetten.
    Redacted
      woensdag 18 februari 2009 @ 13:35:22 #256
    91039 mstx
    2x1/2 = 1/2 x 1/2
    pi_66195934
    quote:
    Op woensdag 18 februari 2009 13:33 schreef cablegunmaster het volgende:

    [..]

    Maar ik heb al een date veld in mijn sql.
    Al hoe moet ik het uit de sql halen

    dat alle velden die groter zijn dan de huidige datum?
    want ik snap niet hoe ik de datum van nu in een voorwaarde kan zetten.
    WHERE datum <> NOW()
    ?
    Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
    als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
    👾
    pi_66195957
    quote:
    Op woensdag 18 februari 2009 13:35 schreef mstx het volgende:

    [..]

    WHERE datum <> NOW()
    ?
    ik ga het eens testen
    Redacted
      woensdag 18 februari 2009 @ 13:37:47 #258
    75592 GlowMouse
    l'état, c'est moi
    pi_66196041
    quote:
    Op woensdag 18 februari 2009 13:35 schreef mstx het volgende:

    [..]

    WHERE datum <> NOW()
    ?
    SELECT SELECT NOW()=DATE(NOW())
    Geeft 0 terug
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66196091
    quote:
    Op woensdag 18 februari 2009 12:23 schreef Roy_T het volgende:
    Sinds wanneer zorgen comments voor output
    Niet. Waar doen ze dat dan volgens jou?
      woensdag 18 februari 2009 @ 13:39:47 #260
    75592 GlowMouse
    l'état, c'est moi
    pi_66196127
    Light, dat was een reactie op
    quote:
    Op woensdag 18 februari 2009 12:18 schreef Catch22- het volgende:

    [..]

    je moet dat commentaar weghalen. Je mag geen output e.d. voor je sessies enzo hebben (zoals de error zegt. wat staat er op line 130 ?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66196140
    quote:
    Op woensdag 18 februari 2009 13:37 schreef GlowMouse het volgende:

    [..]

    SELECT SELECT NOW()=DATE(NOW())
    Geeft 0 terug
    nee select date > now()


    en op een andere tabel < now()
    dat is wat ik zocht
    Redacted
      woensdag 18 februari 2009 @ 13:41:08 #262
    75592 GlowMouse
    l'état, c'est moi
    pi_66196190
    quote:
    Op woensdag 18 februari 2009 13:40 schreef cablegunmaster het volgende:

    [..]

    nee select date > now()


    en op een andere tabel < now()
    dat is wat ik zocht
    Ik denk niet dat je het begrijpt.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66196231
    quote:
    Op woensdag 18 februari 2009 13:38 schreef Light het volgende:

    [..]

    Niet. Waar doen ze dat dan volgens jou?
    Wat GlowMouse zei
    pi_66196490
    quote:
    Op woensdag 18 februari 2009 13:41 schreef GlowMouse het volgende:

    [..]

    Ik denk niet dat je het begrijpt.
    hoeft ook niet maar het werkt wel
    ik denk niet dat jij begrijpt wat ik wil.

    maarja het werkt en daar gaat het om
    1e en 2e tabel.
    http://trinitati.nl/agenda.php
    Redacted
      woensdag 18 februari 2009 @ 13:50:08 #265
    75592 GlowMouse
    l'état, c'est moi
    pi_66196527
    quote:
    Op woensdag 18 februari 2009 13:48 schreef cablegunmaster het volgende:

    [..]

    hoeft ook niet maar het werkt wel
    ik denk niet dat jij begrijpt wat ik wil.
    Jij wilde geen dingen van vandaag en die krijg je zo wel.
    Het kan trouwens prima in één query ook.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_66196586
    quote:
    Op woensdag 18 februari 2009 13:50 schreef GlowMouse het volgende:

    [..]

    Jij wilde geen dingen van vandaag en die krijg je zo wel.
    Het kan trouwens prima in één query ook.
    kan best ik wilde alles voor vandaag en alles na vandaag. alleen in 2 aparte tabellen
    miscommunicatie van beide kanten
    Redacted
    pi_66197477
    quote:
    Op dinsdag 17 februari 2009 14:41 schreef slacker_nl het volgende:
    Gebruik een dom-parser.
    Ik heb http://simplehtmldom.sourceforge.net/ geprobeerd maar het lukt me gewoon domweg niet om alle gegevens uit te lezen, mijn IE crasht namelijk direct..

    Heeft iemand een gemakkelijk scriptje?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66197684
    quote:
    Op woensdag 18 februari 2009 14:13 schreef Chandler het volgende:

    Ik heb http://simplehtmldom.sourceforge.net/ geprobeerd maar het lukt me gewoon domweg niet om alle gegevens uit te lezen, mijn IE crasht namelijk direct..

    Heeft iemand een gemakkelijk scriptje?
    Dat is een prima script, ik parse er zo'n 40 sites mee zonder problemen (ook met brakke HTML).

    Vervelend dat je IE crasht (gebruik je die vrijwillig?), maar dat komt natuurlijk niet door het script. Iets met server en client side enzo
    pi_66200856
    quote:
    Op woensdag 18 februari 2009 14:18 schreef Roy_T het volgende:

    [..]

    Dat is een prima script, ik parse er zo'n 40 sites mee zonder problemen (ook met brakke HTML).

    Vervelend dat je IE crasht (gebruik je die vrijwillig?), maar dat komt natuurlijk niet door het script. Iets met server en client side enzo
    Kun je me dan eens helpen?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66201026
    quote:
    Op woensdag 18 februari 2009 15:33 schreef Chandler het volgende:

    Kun je me dan eens helpen?
    Begin eens met uit te leggen wanneer je browser crasht, en waarom dat komt door een (server side) PHP-script

    Maar de docs van die library zijn toch vrij helder? Je kunt XPath/CSS-achtige selectors gebruiken, bijvoorbeeld om alle <td>'s te vinden of whatever. Of alle <tr>'s, waarbinnen je dan weer <td>'s zoekt, etc etc etc.
    pi_66226005
    Ik ben een nieuwe site aan het maken en daarbij gaat het om profielen met een hoop instellingen en profiel informatie.

    Is het dan verstandiger om 2 tabellen te maken (members_instellingen en members_profiel) of kan ik het het beste in 1 tabel gieten (members)?

    Maakt het dus uit voor de snelheid van de database om een tabel met zeg 1000-10.000 records te hebben met elk 50 kolommen of is het sneller om 2 tabellen te hebben met evenveel records maar dan met 25 kolommen?
    pi_66226580
    quote:
    Op woensdag 18 februari 2009 15:37 schreef Roy_T het volgende:

    [..]

    Begin eens met uit te leggen wanneer je browser crasht, en waarom dat komt door een (server side) PHP-script

    Maar de docs van die library zijn toch vrij helder? Je kunt XPath/CSS-achtige selectors gebruiken, bijvoorbeeld om alle <td>'s te vinden of whatever. Of alle <tr>'s, waarbinnen je dan weer <td>'s zoekt, etc etc etc.
    Goed, het volgende stukje laat mijn browser crashen.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    include_once('simplehtmldom/simple_html_dom.php');

    // Create DOM from URL
    $html file_get_html('test.txt');

    // Find all article blocks
    foreach($html->find('div.item') as $article)
    {
        
    print_r($article)->plaintext;
        exit();
    }
    ?>


    Maar ik denk dat ik gewoon de documentatie maar eens moet doornemen, heb ik al gedaan maar doe het dan nog maar een keer!

    -edit-

    Ik heb het werkend, zo moeilijk is het idd niet

    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
    <?php
    include_once('simplehtmldom/simple_html_dom.php');

    // Create DOM from URL
    $html file_get_html('test.txt');

    // Find all article blocks
    foreach($html->find('#addressList') AS $article)
    {
        foreach (
    $article->find('.item') AS $item)
        {
            foreach (
    $item->find('.Kop2') AS $kop)
            {
                echo 
    "<h2>" $kop->plaintext "</h2>";
            }

            foreach (
    $item->find(".addressItem") AS $addr)
            {
                foreach (
    $addr->find('tr') AS $tr)
                {
                    foreach (
    $tr->find('th') AS $th)
                    {
                        echo 
    $th->plaintext " ";
                    }
                    foreach (
    $tr->find('td') AS $td)
                    {
                        echo 
    $td->plaintext;
                    }
                    echo 
    '<br />';
                }
                echo 
    '<hr>';
            }
        }
    }
    ?>


    [ Bericht 54% gewijzigd door Chandler op 19-02-2009 10:14:58 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66226710
    Die 50 kolommen in één tabel zal sneller zijn, maar of je dat met 10.000 records merkt is de vraag Als het om unieke zaken gaat ("profile_background_color", "avatar_url", etc), dan zou ik het lekker in één tabel houden.

    Wanneer het om variabele data gaat, dan is het een ander verhaal (blogposts bijv, dan wil je geen "blogpost_1" en "blogpost_2" gebruiken, maar een tabel "blogposts" hebben).
    pi_66226771
    quote:
    Op donderdag 19 februari 2009 09:46 schreef Chandler het volgende:

    [..]

    Goed, het volgende stukje laat mijn browser crashen.
    [ code verwijderd ]

    Maar ik denk dat ik gewoon de documentatie maar eens moet doornemen, heb ik al gedaan maar doe het dan nog maar een keer!
    Het zou je browser niet mogen crashen, maar je gebruikt dan ook geen browser maar IE. Ontwikkelaars op IE... jij bent de enige die ik ken

    Maar: print_r($article)->plaintext;, dat werkt natuurlijk niet (omdat dat geen PHP code is)

    Probeer eens echo($article->plaintext);

    Zojuist deze library nog gebruikt trouwens, om te kijken of een site een RSS-feed heeft: $link = $html->find('link[type="application/rss+xml"]');
    pi_66227354
    Der zit wel een kleine bug in die parser, al is het een PHP bug, maar hij heeft er last van..

    Je moet voordat je een nieuw dom object aanmaakt even clear aanroepen op je oude object, ter overbodigheid:

    1
    2
    3
    4
    5
    <?php
    $this
    ->dom str_get_dom(curl_exec($curl));
    $this->dom->clear();
    $this->dom str_get_dom(curl_exec($curl));
    ?>
    In theory there is no difference between theory and practice. In practice there is.
    pi_66227546
    zie mijn edit
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66227810
    quote:
    Op donderdag 19 februari 2009 10:15 schreef Chandler het volgende:
    zie mijn edit
    Zie je wel

    Één overbodige foreach: van de eerste zou je dit kunnen maken:

    foreach($html->find('#addressList .item') AS $article)

    En de tweede laten vervallen

    Als je maar één kop hebt per .item, dan heb je daarvoor ook geen foreach nodig.
    pi_66228698
    Ok, wist niet dat je dat zo kon combineren maar goed, zal het aanpassen! iig TNX!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_66229700
    Uit een rss feed haal ik deze informatie: code (0123456789)
    Het nummer wil ik in mijn database stoppen... kan ff niet meer vinden hoe ik alleen het nummer hieruit haal om wat mee te doen :S Kan iemand me even helpen?
    Gezocht: KAMER in UTRECHT
    pi_66231273
    Even uit mijn hoofd:

    $string = preg_replace("/[^0-9]/", '', $string);
      donderdag 19 februari 2009 @ 12:01:07 #281
    93214 DeTolk
    Elk puntje telt.
    pi_66231596
    Yes, eindelijk een dummy topic *O*

    Voor onze site willen we een contact formulier maken met daarin een dropdown box waaruit bezoekers een vestiging van ons kunnen selecteren. Aan de hand van de keuze van de vestiging kunnen de klanten dan op een knop "verstuur" drukken zodat de mail ook bij de gekozen vestiging aankomt.

    Nu vraag ik mij af hoe dit te realiseren is.

    Onze site is gemaakt met ExpressionWeb (MS) en dus in PHP.

    Nu ben ik een beginnende PHP-er....helaas..


    Hieronder de code van de contactpagina met dropdown box erin.

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    <?php
    $title="Contact";
    $email = ($mailto=="pz") ? "pz@bedrijfsnaambv.nl" : "info@bedrijfsnaambv.nl";
    ?>
    <html>
    <head>
    <title>Bedrijfsnaambv.nl - <?php echo $title; ?></title>
    <?php include("inc/metadata.php"); ?>
    <link href="css/stylesheet.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <table width="940" height="100%" border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>
        <td width="20" rowspan="5" background="gfx/bgleft.gif"> </td>
        <td height="140" valign="bottom" background="gfx/header.gif" bgcolor="#E3ECFD"><table width="450" height="50" border="0" align="right" cellpadding="0" cellspacing="0">
          <tr>
            <td><?php include("inc/zoeken.php"); ?></td>
          </tr>
        </table></td>
        <td width="20" rowspan="5" background="gfx/bgright.gif"> </td>
      </tr>
      <tr>
        <td height="25" background="gfx/bg-tabs.jpg"><?php include("inc/hoofdmenu.php"); ?></td>
      </tr>
      <tr>
        <td valign="top" class="bgcontent">
          <br />
    <!-- contentblok1 -->
    <table width="844" border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>
        <td width="202" valign="top"><table width="202" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td height="30" background="gfx/bg-hdr.gif" class="title"><strong>   <span class="largetitleblue"><?php echo $title; ?></span></strong></td>
          </tr>
          <tr>
            <td height="60" background="gfx/bg-content.gif"><img src="gfx/img-vestigingen.jpg" width="202" height="60" /></td>
          </tr>
          <tr>
            <td valign="top" background="gfx/bg-content.gif" class="tablespace"><table width="202" border="0" cellspacing="3" cellpadding="3">
              <tr>
                <td><?php include("inc/vestigingen.php"); ?></td>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td height="7"><img src="gfx/bg-table.png" width="202" height="7" /></td>
          </tr>
        </table></td>
        <td width="12" valign="top"> </td>
        <td width="630" valign="top" class="title"><table width="630" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td height="30" background="gfx/bg-hdr-breed.gif" class="title">   <span class="largetitle">Contact formulier 
          Digitale vestiging</span></td>
          </tr>
          <tr>
            <td valign="top" background="gfx/bg-content-breed.gif"><br />
    <?  if (!$submit) { 
    ?>
    <script Language="JavaScript">
    <!--
    function Validatie(theForm)
    {

       if (theForm.naam.value == "")
      {
        alert("Uw naam invullen a.u.b.");
       theForm.naam.focus();
        return (false);
      }

       if (theForm.from.value == "")
      {
        alert("Uw email adres invullen a.u.b.");
       theForm.from.focus();
        return (false);
      }

       if (theForm.telefoon.value == "")
      {
        alert("Uw telefoon nummer invullen a.u.b.");
       theForm.telefoon.focus();
        return (false);
      }
      
       if (theForm.onderwerp.value == "")
      {
        alert("Een onderwerp invullen a.u.b.");
       theForm.onderwerp.focus();
        return (false);
      }
      
      return (true);
    }
    // -->
    </script>
    <form method="post" action="/cgi-bin/mail-a-form" onSubmit="return Validatie(this)">
    <INPUT TYPE="hidden" NAME="to" VALUE="<?php echo $email; ?>">
    <INPUT TYPE="hidden" NAME="subject" VALUE="Formulier verstuurd vanaf bedrijfsnaambv.nl">
    <INPUT TYPE="hidden" NAME="nextpage" VALUE="http://www.bedrijfsnaambv.nl/contact.php?submit=ok">
    <blockquote>Voor meer informatie of opmerkingen, vul dan hieronder de gegevens volledig in.<br /><em>Velden met een * zijn verplicht.</em></blockquote><br />
            <table width="450" border="0" align="center" cellpadding="3" cellspacing="3">
              <tr>
                <td width="200" valign="top" bgcolor="#F5F8FF"><div align="right">Bedrijfsnaam:</div></td>
                <td valign="top"><input name="bedrijfsnaam" type="text" maxlength="50"></td>
              </tr>
              <tr>
                <td width="200" valign="top" bgcolor="#F5F8FF"><div align="right">Contact persoon:</div></td>
                <td valign="top"><input name="naam" type="text" maxlength="50"> 
                *</td>
              </tr>
              <tr>
                <td width="200" valign="top" bgcolor="#F5F8FF"><div align="right">E-mailadres:</div></td>
                <td valign="top"><input name="from" type="text" maxlength="100"> 
                *</td>
              </tr>
              <tr>
                <td valign="top" bgcolor="#F5F8FF"><div align="right">Telefoon nummer:</div></td>
                <td valign="top"><input name="telefoon" type="text" maxlength="15"> 
                *</td>
              </tr>
              <tr>
                <td valign="top" bgcolor="#F5F8FF"><div align="right">Uw vestiging:</div></td>
                <td valign="top"><select name="VST" style="width: 168px">
             <option></option>
             <option value="PPS">Almere</option>
             <option value="SAT">Baarn</option>
             <option value="BSM">Bussum</option>
             <option value="DFT">Delft</option>
             <option value="KVK">Den Haag</option>
             <option value="LEI">Leiden</option>
             <option value="VOL">Purmerend</option>
             <option value="IJM">Velserbroek</option>
             <option value="WBW">Wenckebachweg, A'dam</option>
             <option value="WDZ">W.de Zwijgerlaan, A'dam</option>
             <option value="ZS">Zaandam</option>
             <option value="ZP">Zeeburgerpad, A'dam</option>
             <option value="COR">Zwaag</option>
             </select> 
                *</td>
              </tr>
              <tr>
                <td width="200" valign="top" bgcolor="#F5F8FF"><div align="right">Onderwerp:</div></td>
                <td valign="top">
             <input name="onderwerp" type="text" maxlength="50" value="Digitale Vestiging"> </td>
              </tr>
              <tr>
                <td width="200" valign="top" bgcolor="#F5F8FF"><div align="right">Reactie:</div></td>
                <td valign="top"><textarea name="reactie" cols="30" rows="5"></textarea></td>
              </tr>
              <tr>
                <td width="200"> </td>
                <td><input type="submit" name="submit" value="verstuur"></td>
              </tr>
            </table>
    </form><br />
    <? } else {
    ?>
    <blockquote>Hartelijk dank voor uw reactie.<br />Uw email zal zo spoedig mogelijk in behandeling worden genomen.</blockquote>
    <br /><br />
    <?
    }
    ?>
            </td>
          </tr>
          <tr>
            <td height="7"><img src="gfx/bg-table-breed.png" width="630" height="7" /></td>
          </tr>
        </table></td>
      </tr>
    </table>
    <!-- contentblok1 -->
          <br />
    <!-- contentblok2 -->
    <?php include("inc/content2.php"); ?>
    <!-- contentblok2 -->
          <br />
        </td>
      </tr>
      <tr>
        <td height="5" background="gfx/line.gif"><img src="gfx/transparant.gif" width="1" height="1" /></td>
      </tr>
      <tr>
        <td height="50" bgcolor="#72C2FF"><?php include("inc/footer.php"); ?></td>
      </tr>
    </table>
    </body>
    </html>
    pi_66234682
    quote:
    Op donderdag 19 februari 2009 12:01 schreef DeTolk het volgende:

    Nu vraag ik mij af hoe dit te realiseren is.
    Los van echte code, wat is volgens jou de logische flow waarop dat zou moeten werken? User verstuurt formulier, en dan?

    We kunnen hier wel meteen code neerplempen, maar je leert er denk ik meer van door eerst zelf te bedenken (desnoods in pseudo code) hoe de flow in elkaar zit.
      donderdag 19 februari 2009 @ 13:31:41 #283
    93214 DeTolk
    Elk puntje telt.
    pi_66235056
    quote:
    Op donderdag 19 februari 2009 13:22 schreef Roy_T het volgende:

    [..]

    Los van echte code, wat is volgens jou de logische flow waarop dat zou moeten werken? User verstuurt formulier, en dan?

    We kunnen hier wel meteen code neerplempen, maar je leert er denk ik meer van door eerst zelf te bedenken (desnoods in pseudo code) hoe de flow in elkaar zit.

    User vult contactformulier in
    - Hierin selecteert User de locatie
    Bij het klikken op "verstuur" wordt de locatie uitgelezen en daar wordt een mailadres aan gekoppeld.

    Verstuur (knop)

    mail(
    if locatie(value)=BSM
    mail=Bussum@xxxx.nl
    )

    zoiets?
    pi_66237916
    Klinkt goed Bij deze is je code voor 75% klaar. Nu alleen het kloppen nog

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
    $to 
    null;

    switch (
    $_POST['VST'])
    {
       case 
    'BSM':
          
    $to 'bussum@xxxx.nl';
          break;
       case 
    'DFT':
          
    $to 'delft@xxxx.nl';
          break;
    }

    if (
    $to)
    {
       
    mail($toetc etc etc);
    }
    ?>


    Kun je hier iets mee?
    pi_66238467
    quote:
    Op donderdag 19 februari 2009 11:14 schreef tankertuig het volgende:
    Uit een rss feed haal ik deze informatie: code (0123456789)
    Het nummer wil ik in mijn database stoppen... kan ff niet meer vinden hoe ik alleen het nummer hieruit haal om wat mee te doen :S Kan iemand me even helpen?

    1
    2
    3
    4
    5
    <?php
    if (preg_match("/(\d+)/"$string$matches)) {
       print 
    $matches[1]; # dit is het nummer wat je wilt.. 
    }
    ?>
    In theory there is no difference between theory and practice. In practice there is.
    pi_66238669
    quote:
    Op donderdag 19 februari 2009 14:35 schreef Roy_T het volgende:
    Klinkt goed :) Bij deze is je code voor 75% klaar. Nu alleen het kloppen nog :)
    [ code verwijderd ]

    Kun je hier iets mee?
    Of je maakt een hash aan:

    1
    2
    3
    4
    5
    <?php
    $locatie2mail 
    = array("locatie1" => 'email@locatie1.domain.nl'"locatie2" => 'email@locatie2.domain.nl');

    $to_mail $locatie2mail[$_POST[vestiging]];
    ?>


    Eventueel zet je de locatie1=emailadres logica in een config file, hoef je geen php code aan te passen als je een locatie toevoegt of verwijderd.
    In theory there is no difference between theory and practice. In practice there is.
    pi_66239204
    Dat kan ook Wel zou ik dan even met isset() checken of een key ook echt bestaat.
    pi_66248110
    nee, array_key_exists oid moet je daarvoor gebruiken.

    Deze dus
    http://nl3.php.net/manual/en/function.array-key-exists.php
    In theory there is no difference between theory and practice. In practice there is.
    pi_66249390
    quote:
    Op donderdag 19 februari 2009 19:04 schreef slacker_nl het volgende:
    nee, array_key_exists oid moet je daarvoor gebruiken.

    Deze dus
    http://nl3.php.net/manual/en/function.array-key-exists.php
    array_key_exists() geeft ook true als de key bestaat en de bijbehorende value null is. Kan handig zijn, lijkt me hier niet het geval. null is namelijk geen geldig mailadres Overigens zou ik !empty() adviseren. Dan worden dingen als lege strings ook niet meer geaccepteerd. Of er snelheidsverschil is, weet ik niet.
      donderdag 19 februari 2009 @ 20:24:59 #290
    56176 Catch22-
    Ben je Blind?!
    pi_66251236
    1
    2
    3
    4
    if(preg_match($to, '^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}$@')
    {
    // mail verzenden
    }

    doe het dan gelijk zo ;)
    Heel veel groetjes, Catch22
    En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
    Met GHB nooit meer nee
    Storneren een optie?
      donderdag 19 februari 2009 @ 21:01:25 #291
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_66252676
    Kan iemand mij misschien duidelijk vertellen wanneer een view query nu daadwerkelijk handiger is dan een gewone select query.
    Heb wel een en ander gezocht, maar tis me nog niet geheel duidelijk geworden wanneer ik van een view profijt kan hebben..
    pi_66252846
    Ik gebruik een VIEW om adressen te importeren in TNT Parcelware en UPS Worldship. De view bevat een subset van de laatste x orders en ook alleen de relevante adres-informatie. Op die manier hoef ik niet vele adressen te importeren die toch te oud zijn, omdat zowel Parcelware als Worldship geen limiet op de import hebben zitten.

    Dus zoiets:

    1
    2
    3
    4
    5
    CREATE VIEW zendingen_data AS
    SELECT o.id, o.naam, o.adres, ..., o.land
    FROM orders as o
    ORDER BY o.id DESC
    LIMIT x


    Parcelware en Worldship importeren vervolgens de gehele VIEW zendingen_data en halen daarmee alleen de nieuwste orders binnen. Dat is handig omdat ze (vooral Parcelware) anders over hun nek gaan vanwege de grote hoeveelheid data.
    pi_66252994
    Een VIEW is dus handig op momenten dat je niet alle data in een tabel aan een ander ter beschikking wilt stellen, zonder dat de ander daar moeite voor moet doen. Je kunt natuurlijk met GRANT gaan kloten en alleen rechten geven op bepaalde kolommen in een tabel, maar een VIEW is veel eenvoudiger en duidelijker. Daarnaast kun je geen LIMIT toepassing op een GRANT, wat in mijn geval wel nodig is .
    pi_66253431
    quote:
    Op donderdag 19 februari 2009 19:04 schreef slacker_nl het volgende:
    nee, array_key_exists oid moet je daarvoor gebruiken.

    Deze dus
    http://nl3.php.net/manual/en/function.array-key-exists.php
    Je moet niets

    Veel te lang om te typen, terwijl isset() ook werkt en gewoon zo gebruikt mag worden volgens de docs
    pi_66253917
    quote:
    Op donderdag 19 februari 2009 19:38 schreef Light het volgende:

    [..]

    array_key_exists() geeft ook true als de key bestaat en de bijbehorende value null is. Kan handig zijn, lijkt me hier niet het geval. null is namelijk geen geldig mailadres Overigens zou ik !empty() adviseren. Dan worden dingen als lege strings ook niet meer geaccepteerd. Of er snelheidsverschil is, weet ik niet.
    Het lijkt me dat je in dit geval een hash hebt die overeenkomt met de values die je in je selectiebox hebt zitten voor de locatie. En dus, als je een locatie toevoegt dat je hash ook gevuld is met die locatie.. Maar goed, je zou array_key_exists icm met isset of isempty kunnen gebruiken als je wilt.

    Je zou zelfs die selectie via een DB kunnen doen en dan heb je die hash niet nodig.

    En overigens, als je echt een mailadres wilt valideren heb je meer nodig dan alleen een isemtpy() of isset() op een value, maar dan gaan we uit van userinput die in dit geval alleen een locatie kan opgeven en de app de logica locatie - e-mail adres implementeerd.
    In theory there is no difference between theory and practice. In practice there is.
    pi_66254267
    quote:
    Op donderdag 19 februari 2009 21:21 schreef Roy_T het volgende:

    [..]

    Je moet niets

    Veel te lang om te typen, terwijl isset() ook werkt en gewoon zo gebruikt mag worden volgens de docs
    Ik gebruik array_key_exists liever om te checken of een key bestaat , isset zegt daar vrij weinig over.
    In theory there is no difference between theory and practice. In practice there is.
    pi_66254725
    quote:
    Op donderdag 19 februari 2009 21:40 schreef slacker_nl het volgende:

    [..]

    Ik gebruik array_key_exists liever om te checken of een key bestaat , isset zegt daar vrij weinig over.
    Hoe bedoel je? Als je een $array = array('key1' => 'value1') hebt, dan zal isset($array['key1']) true geven, en isset($array['key2']) false. Lijkt me toch een duidelijke check om te zien of een key bestaat?
    pi_66254810
    quote:
    Op donderdag 19 februari 2009 21:53 schreef Roy_T het volgende:

    [..]

    Hoe bedoel je? Als je een $array = array('key1' => 'value1') hebt, dan zal isset($array['key1']) true geven, en isset($array['key2']) false. Lijkt me toch een duidelijke check om te zien of een key bestaat?
    Uit de documentatie:
    quote:
    isset() does not return TRUE for array keys that correspond to a NULL value, while array_key_exists() does.
    In diezelfde documentatie staat in de opmerkingen van gebruikers echter dat isset zo'n 5 keer sneller is op Windows (1,5 maal op Linux en Mac OS) in vergelijking met array_key_exists. Als NULL dus voor kan komen als value moet je array_key_exists gebruiken, anders is isset een snellere optie. Maar voor de netheid is array_key_exists de beste keuze.
    pi_66255136
    quote:
    Op donderdag 19 februari 2009 21:53 schreef Roy_T het volgende:

    [..]

    Hoe bedoel je? Als je een $array = array('key1' => 'value1') hebt, dan zal isset($array['key1']) true geven, en isset($array['key2']) false. Lijkt me toch een duidelijke check om te zien of een key bestaat?
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $array 
    = array("hello" => "world""how" => "are""you" => null);

    $k 'test';
    print 
    "value :" $array[$k] . "\n";
    print 
    "isset :" . isset($array[$k]) . "\n";
    print 
    "array_key :" array_key_exists($k$array) . "\n";
    ?>


    Speel eens met de value van $k, dan zie je waarom array_key_exists van belang is.. (of wat huhu zei).
    In theory there is no difference between theory and practice. In practice there is.
    pi_66259399
    Ah ja, ik liet de NULL waarde idd buiten beschouwing Ging er vanuit dat in dit specifieke geval er nooit een NULL zou zijn als e-mail adres.
      vrijdag 20 februari 2009 @ 08:02:23 #301
    113667 Keiichi
    Konnichiwa!
    pi_66264966
    Vol
      vrijdag 20 februari 2009 @ 14:15:00 #302
    74548 Jo0Lz
    Lick the box!
    pi_66276614
    Yes we can! | I didn't fail, it's just postponed success.
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')