FOK!forum / Digital Corner / [PHP/(My)SQL] voor dummies - Deel 79
Intrepiditydinsdag 12 januari 2010 @ 22:50

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, 70, 71, 72, 73, 74,75, 76, 77, 78

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
  • Crutchdinsdag 12 januari 2010 @ 22:52
    <? echo $_POST["TVP"]; ?>
    Intrepiditydinsdag 12 januari 2010 @ 22:52
    quote:
    Op dinsdag 12 januari 2010 22:52 schreef Crutch het volgende:
    <? echo $_POST["TVP"]; ?>
    He viespeuk, niet zomaar direct tainted data outputten!
    Crutchdinsdag 12 januari 2010 @ 22:53
    GlowMousedinsdag 12 januari 2010 @ 22:56
    short tags!
    en ja ik las te snel
    Crutchdinsdag 12 januari 2010 @ 22:59
    <php>

    // hier weer een inhoudsloze reactie

    </php>
    Intrepiditydinsdag 12 januari 2010 @ 23:00
    quote:
    Op dinsdag 12 januari 2010 22:59 schreef Crutch het volgende:
    <php>

    // hier weer een inhoudsloze reactie

    </php>
    Eerst <? gebruiken, vervolgens <php>.. What's next, <script language="php">?
    Ohja, ik ben serieus een keer ASP-style tags tegengekomen in een PHP script dat een van onze developers gebakken had. Ik zie er nog steeds een psychiater over
    Crutchdinsdag 12 januari 2010 @ 23:04
    quote:
    Op dinsdag 12 januari 2010 23:00 schreef Intrepidity het volgende:

    [..]

    Eerst <? gebruiken, vervolgens <php>.. What's next, <script language="php">?
    Ohja, ik ben serieus een keer ASP-style tags tegengekomen in een PHP script dat een van onze developers gebakken had. Ik zie er nog steeds een psychiater over
    "SELECT antwoord FROM antwoorden WHERE onderwerp = kut"

    Crutchdinsdag 12 januari 2010 @ 23:05
    Okay genoeg flauwekul nu.
    hamkaastostidinsdag 12 januari 2010 @ 23:07
    include hamkaastosti.php;
    Crutchdinsdag 12 januari 2010 @ 23:27
    if (isset($_GET['degelijk_onderwerp'])) {
    $reactie = ;
    }
    else {
    $reactie = ;
    }
    echo $reactie;
    PiRANiAwoensdag 13 januari 2010 @ 01:07
    $posts=count(*) FROM fok_posts;
    wordt 76749052.

    DELETE FROM posts WHERE posttype=EenHoopOnzin;

    Wat levert de count(*) nu op?
    Tiemiewoensdag 13 januari 2010 @ 01:12
    0, maar dan zou een DROP of TRUNCATE sneller zijn .
    urselwoensdag 13 januari 2010 @ 08:13
    Ik doe gewoon een tvp hoor..
    JortKwoensdag 13 januari 2010 @ 08:40
    quote:
    Op woensdag 13 januari 2010 01:12 schreef Tiemie het volgende:
    0, maar dan zou een DROP of TRUNCATE sneller zijn .
    Behalve dat DROP en TRUNCATE niet hetzelfde doen
    Chandlerwoensdag 13 januari 2010 @ 08:44
    1
    2
    3
    <?php
    require_once 'chandler';
    ?>


    Ik ga eens kijken naar array_reverse, helaas dat werkt dus niet.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
        $cnt 
    count($argument);
        if (
    $cnt 0)
        {
            
    $nArray = array();
            for (
    $x 0$x < ($cnt); $x++)
            {
                
    $nArray[$x] = $argument[($cnt-1) - $x];
            }
        }

        
    print_r($argument);
        
    print_r($nArray);
    ?>



    uitkomsten
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Array
    (
        [1] => categorie
        [0] => Vebsite
    )
    Array
    (
        [0] => categorie
        [1] => Vebsite
    )


    2e is wat ik zoek, maar raar dat dat niet met een functie kan.

    [ Bericht 75% gewijzigd door Chandler op 13-01-2010 08:52:33 ]
    Intrepiditywoensdag 13 januari 2010 @ 09:59
    Wellicht omdat het niet bepaald een operatie is die vaak gedaan wordt. Eerlijkgezegd zou ik ook niet weten waarom..
    Tiemiewoensdag 13 januari 2010 @ 10:15
    quote:
    Op woensdag 13 januari 2010 08:40 schreef JortK het volgende:

    [..]

    Behalve dat DROP en TRUNCATE niet hetzelfde doen
    Duh.
    Darkomenwoensdag 13 januari 2010 @ 10:28
    quote:
    Op woensdag 13 januari 2010 08:13 schreef ursel het volgende:
    Ik doe gewoon een tvp hoor..
    Sitethiefwoensdag 13 januari 2010 @ 11:08
    Waarom zou je een array willen omdraaien, daar ben ik dan nieuwsgierig naar .
    Intrepiditywoensdag 13 januari 2010 @ 11:21
    quote:
    Op woensdag 13 januari 2010 11:08 schreef Sitethief het volgende:
    Waarom zou je een array willen omdraaien, daar ben ik dan nieuwsgierig naar .
    Een array omdraaien is zo gek nog niet, daar bestaat dan ook gewoon array_reverse voor, maar het omdraaien van keys met het instand houden van de volgorde van waardes vind ik dan weer totaal onlogisch.
    Hoe dan ook, als ik het goed heb doet deze code wat je wilt:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
            $arr 
    = array(=> 'a'=> 'b');
            
    $new_arr = array();
            foreach(
    $arr as $k => $v)
            {
                
    $k2 sizeof($arr) - $k 1;
                
    $new_arr[$k] = $arr[$k2];
            }

            
    $arr array_reverse($new_arrtrue);
    ?>


    [ Bericht 31% gewijzigd door Intrepidity op 13-01-2010 11:41:35 ]
    GlowMousewoensdag 13 januari 2010 @ 11:40
    quote:
    Op woensdag 13 januari 2010 11:21 schreef Intrepidity het volgende:

    [..]

    Een array omdraaien is zo gek nog niet, daar bestaat dan ook gewoon array_reverse voor, maar het omdraaien van keys met het instand houden van de volgorde van waardes vind ik dan weer totaal onlogisch.
    Hoe dan ook, als ik het goed heb doet deze code wat je wilt:
    [ code verwijderd ]
    lees de manual eens nauwkeuriger, en dan met name wat de tweede parameter doet codevoorbeeld is lekker verwarrend daar
    Intrepiditywoensdag 13 januari 2010 @ 11:42
    Het wordt me inderdaad niet echt duidelijk wat de default-waarde van $preserve_keys is. False blijkbaar?
    Code hierboven aangepast
    GlowMousewoensdag 13 januari 2010 @ 11:46
    je kunt jouw code vervangen door $arr = array_reverse($new_arr);
    Intrepiditywoensdag 13 januari 2010 @ 11:48
    quote:
    Op woensdag 13 januari 2010 11:46 schreef GlowMouse het volgende:
    je kunt jouw code vervangen door $arr = array_reverse($new_arr);
    Niet echt, want Chandler wil de volgorde van de waarden gelijk houden en alleen de keys omdraaien. Met array reverse draai je zowel keys als waarden om, waarbij je ze eventueel hernummert, maar dan blijven de orginele keys weer niet bewaard..
    Maar afgezien daarvan zou ik geen situatie weten waarin je alleen de keys wilt omdraaien.
    Wat ik hierboven doe is element n aan arraygrootte-n toewijzen en hierna de hele array omdraaien. Dan heb je infeite alleen de keys omgedraaid.
    GlowMousewoensdag 13 januari 2010 @ 11:50
    oh nu zie ik het;
    $arr = array_flip($argument);
    $arr = array_reverse($arr, true);
    $arr = array_flip(arr);

    Intrepiditywoensdag 13 januari 2010 @ 11:52
    quote:
    Op woensdag 13 januari 2010 11:50 schreef GlowMouse het volgende:
    oh nu zie ik het;
    $arr = array_flip($argument);
    $arr = array_reverse($arr, true);
    $arr = array_flip(arr);

    Dan heb je ook je waarden omgekeerd
    Flippen, reversen en weer flippen is exact hetzelfde als alleen reversen Flip is als het ware een horizontale spiegeling van je array en reverse een verticale.

    1
    2
    3
    4
    5
    6
    <?php
      $arr 
    = array(=> 'a'=> 'b'=> 'c');

      
    print_r(array_reverse($arrtrue));
      
    print_r(array_flip(array_reverse(array_flip($arr), true)));
    ?>


    Dat geeft:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Array
    (
        [2] => c
        [1] => b
        [0] => a
    )
    Array
    (
        [2] => c
        [1] => b
        [0] => a
    )

    Dan heb je dus niet alleen je keys maar ook waarden omgedraaid.

    De code die ik hierboven heb neergezet doet:
    1
    2
    3
    4
    5
    6
    Array
    (
       [2] => a
       [1] => b
       [0] => c
    )

    Wat dus exact is wat Chandler wilde

    [ Bericht 18% gewijzigd door Intrepidity op 13-01-2010 12:01:31 ]
    GlowMousewoensdag 13 januari 2010 @ 12:04
    Volgens de documentatie zou het moeten werken
    1
    2
    3
    4
    5
    6
    <?php
    $a 
    = array('eerste''tweede');
    foreach(
    $a as $k => $v) echo $k ' - ' $v "\r\n";
    $a array_reverse($afalse);
    foreach(
    $a as $k => $v) echo $k ' - ' $v "\r\n";
    ?>

    de tweede parameter van array_reverse doet niks, wijzig hem maar in true.
    boem-dikkiewoensdag 13 januari 2010 @ 12:05
    Meeleespost.
    Intrepiditywoensdag 13 januari 2010 @ 12:11
    quote:
    Op woensdag 13 januari 2010 12:04 schreef GlowMouse het volgende:
    Volgens de documentatie zou het moeten werken :?
    [ code verwijderd ]

    de tweede parameter van array_reverse doet niks, wijzig hem maar in true.
    Lol, door jouw code kwam ik erachter dat dit ook doet wat Chandler wil:
    1
    2
    3
    <?php
      $arr 
    array_reverse(array_reverse($arrfalse), true);
    ?>

    Een keer reversen met en een keer zonder keybehoud doet de truuc ook :) Al hoewel gaten in de keyreeks dan wel wegvallen..
    GlowMousewoensdag 13 januari 2010 @ 12:15
    quote:
    Op woensdag 13 januari 2010 12:11 schreef Intrepidity het volgende:

    [..]

    Lol, door jouw code kwam ik erachter dat dit ook doet wat Chandler wil:
    [ code verwijderd ]

    Een keer reversen met en een keer zonder keybehoud doet de truuc ook Al hoewel gaten in de keyreeks dan wel wegvallen..
    gek dat hier de tweede parameter wel goed werkt.
    PiRANiAwoensdag 13 januari 2010 @ 22:46
    Welke van de volgende memcached clients is beter?
    pecl/memcache of pecl/memcached
    Chandlerwoensdag 13 januari 2010 @ 22:48
    Lol, we gaan eens spelen met jullie codes want die van mij lijkt nu zo belachelijk lang
    GlowMousewoensdag 13 januari 2010 @ 22:49
    pecl/memcache; zo te zien is dat ook de enige die compressie ondersteunt.
    PiRANiAwoensdag 13 januari 2010 @ 23:00
    quote:
    Op woensdag 13 januari 2010 22:49 schreef GlowMouse het volgende:
    pecl/memcache; zo te zien is dat ook de enige die compressie ondersteunt.
    Gebruik je dit op FOK! ook? Dus memcache::add(iets) in plaats van memcached::add?
    GlowMousewoensdag 13 januari 2010 @ 23:04
    quote:
    Op woensdag 13 januari 2010 23:00 schreef PiRANiA het volgende:

    [..]

    Gebruik je dit op FOK! ook? Dus memcache::add(iets) in plaats van memcached::add?
    FOK! gebruikt een wrapper-class voor pecl/memcache
    PiRANiAwoensdag 13 januari 2010 @ 23:05
    quote:
    Op woensdag 13 januari 2010 23:04 schreef GlowMouse het volgende:

    [..]

    FOK! gebruikt een wrapper-class voor pecl/memcache
    Okay. Wat doet die wrapper class in jullie geval? Wat voegt het toe? Ik ben er niet echt bekend mee .
    GlowMousewoensdag 13 januari 2010 @ 23:07
    quote:
    Op woensdag 13 januari 2010 23:05 schreef PiRANiA het volgende:

    [..]

    Okay. Wat doet die wrapper class in jullie geval? Wat voegt het toe? Ik ben er niet echt bekend mee .
    Niet zoveel, maar het is wel handig voor als we ooit willen switchen van memcache naar een andere cache-oplossing (memcached of wat dan ook).
    Intrepiditydonderdag 14 januari 2010 @ 00:11
    quote:
    Op woensdag 13 januari 2010 23:07 schreef GlowMouse het volgende:

    [..]

    Niet zoveel, maar het is wel handig voor als we ooit willen switchen van memcache naar een andere cache-oplossing (memcached of wat dan ook).
    Voor het switchen van memcache naar memcached is dat in principe niet nodig omdat ze van buitenaf gezien dezelfde interface hebben Maargoed, een wrapper is wel zo netjes inderdaad Waarom eigenlijk de keuze van memcache boven memcached? Memcached heeft afaik een stuk betere performance omdat hij direct bovenop libmemcache gebouwd is, in plaats van pure php zoals memcache..

    Overigens een interessante collectie slides over distributed systems in php, waaronder door middel van memcached: http://www.slideshare.net/andreizm/all-the-little-pieces-1573862
    GlowMousedonderdag 14 januari 2010 @ 00:33
    De historie ken ik niet. Ik zie nu dat memcached idd veel meer opties heeft. Heb je toevallig benchmarks van de performance? Switchen is overigens voor een grote site, ondanks wrapper class, nog steeds niet heel makkelijk.
    Crutchdonderdag 14 januari 2010 @ 00:34
    Zeg Gloeimuis? Jij kan 't een en ander aanpassen hier op fok! toch?
    GlowMousedonderdag 14 januari 2010 @ 00:35
    quote:
    Op donderdag 14 januari 2010 00:34 schreef Crutch het volgende:
    Zeg Gloeimuis? Jij kan 't een en ander aanpassen hier op fok! toch?
    Crutchdonderdag 14 januari 2010 @ 00:38
    Nou, op de profielpagina staat onderaan => Hobbies/interesses:



    Ik neem aan dat het al(lang) bekend is, maar dat moet toch echt hobby's zijn.

    GlowMousedonderdag 14 januari 2010 @ 00:41
    dat dit kan in Nederland
    Crutchdonderdag 14 januari 2010 @ 00:42
    Ich bin ein Taalnazi jah
    Crutchdonderdag 14 januari 2010 @ 00:48
    HELD!

    Weltrusten.
    Intrepiditydonderdag 14 januari 2010 @ 09:39
    quote:
    Op donderdag 14 januari 2010 00:33 schreef GlowMouse het volgende:
    De historie ken ik niet. Ik zie nu dat memcached idd veel meer opties heeft. Heb je toevallig benchmarks van de performance? Switchen is overigens voor een grote site, ondanks wrapper class, nog steeds niet heel makkelijk.
    Toevallig niet nee, ik heb zelf geen ervaring met memcache of memcached, heb er alleen iets teveel sprekers over gehoord
    * Intrepidity is een regelmatig conferentiebezoeker
    Sitethiefdonderdag 14 januari 2010 @ 10:13
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $arrayData 
    = array('0' => 'appel''1' => 'banaan''2' => 'annanas');
        
    $counter 3;
        foreach(
    $arrayData as $ntpl=>$ftpl) {
            
    $arrayData[$counter]['FruitName'] = $ftpl;
            
    $arrayData[$counter]['FruitLink'] = 'http://images.google.nl/images?q='.$ftpl;        
            
    $counter++;
        }
    ?>


    Als $counter op 0 staat krijg ik dit:

    1
    2
    3
    4
    5
    6
    Array
    (
        [0] => hppel
        [1] => hanaan
        [2] => hnnanas
    )


    En als hij op 3 staat dit:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Array
    (
        [0] => appel
        [1] => banaan
        [2] => annanas
        [3] => Array
            (
                [FruitName] => appel
                [FruitLink] => http://images.google.nl/images?q=appel
            )

        [4] => Array
            (
                [FruitName] => banaan
                [FruitLink] => http://images.google.nl/images?q=banaan
            )

        [5] => Array
            (
                [FruitName] => annanas
                [FruitLink] => http://images.google.nl/images?q=annanas
            )

    )


    Waarom vervangt hij niet gewoon de values in de array? Wat doe ik fout?
    Intrepiditydonderdag 14 januari 2010 @ 10:21
    Het grappige is dat je een string ook kunt benaderen als $string[0] = bladiebla. Je vervangt daarmee dus karakter 0 door iets anders. Strings zijn in feite dus ook gewoon arrays, van karakters welteverstaan Doe eens het volgende:
    $arrayData[$counter] = array();
    en vervolgens kun je gewoon $arrayData[$counter]['index'] = "Ananas" doen.
    Sitethiefdonderdag 14 januari 2010 @ 10:32
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
        $arrayData 
    = array('0' => 'appel''1' => 'banaan''2' => 'annanas');
        
    $array = array();
        
    $counter 0;
        foreach(
    $arrayData as $ntpl=>$ftpl) {
            
    $array[$counter]['FruitName'] = $ftpl;
            
    $array[$counter]['FruitLink'] = 'http://images.google.nl/images?q='.$ftpl;        
            
    $counter++;
        }
        
        
    // Parse body template
        
    $output .= $tplObject->outputRepeater('Loop'$array);
    ?>


    Of zo. Probleem was vooral dat het origi neel er zo uitzag:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
        $arrayData 
    = array();
        
    $counter 0;
        foreach(
    $tplObject->listThemes('themes/'false) as $ntpl=>$ftpl) {
            
    $arrayData[$counter]['ThemeName'] = $ftpl;
            
    $arrayData[$counter]['ThemeLink'] = 'example_file.php?theme='.$ftpl;
            
    $counter++;
        }
        
    $output .= $tplObject->outputRepeater('Loop'$arrayData);
    ?>


    Maar ik die function helemaal niet wil aanroepen.
    Intrepiditydonderdag 14 januari 2010 @ 10:35
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $arrayData 
    = array('0' => 'appel''1' => 'banaan''2' => 'annanas');
        
    $counter 0;
        foreach(
    $arrayData as $ntpl=>$ftpl) {
            
    $arrayData[$counter] = array();
            
    $arrayData[$counter]['FruitName'] = $ftpl;
            
    $arrayData[$counter]['FruitLink'] = 'http://images.google.nl/images?q='.$ftpl;        
            
    $counter++;
        }
    ?>

    That'll do it :)
    Sitethiefdonderdag 14 januari 2010 @ 10:39
    Stom dat ik daar dan weer niet op kwam hé. Zal wel gebrek aan ervaring zijn .

    Dank je Intrepidity!
    Intrepiditydonderdag 14 januari 2010 @ 10:45
    Oh ja, en ananas schrijf je met 1 n
    Overigens is hier in feite $ntpl je counter al, die $counter variabele is niet nodig.

    [ Bericht 25% gewijzigd door Intrepidity op 14-01-2010 10:50:15 ]
    Intrepiditydonderdag 14 januari 2010 @ 12:38
    Ik heb een abstracte klasse met een static property. Deze wil ik uitlezen in de overerfende klassen. Het probleem is: de inhoud van die property staat niet vast, maar is afhankelijk van o.a. wat configuratieinstellingen. Normaal zou ik die mooi in de constructor kunnen vullen, maar dat gaat natuurlijk niet op in een statische context. Dus ik dacht; dat los ik met __get() op. Alleen nu blijkt dat __get niet op statische oproepen reageert, en het gevolg is dat ik een error krijg dat mijn statische property niet bestaat.
    quote:
    Fatal error: Access to undeclared static property: Weide\Framework\Core\ModelBase::$tableName in C:\Program Files\xampp\htdocs\MailBasis\Gras\User\Models\User.php on line 153

    Is hier een oplossing voor? of heb ik niet veel andere keus als een statische methode aanmaken die dit voor me doet?
    Crutchdonderdag 14 januari 2010 @ 12:48
    Ik zoek een goede manier om een xls-bestand (MS Excel) te importeren in een database (mySQL).
    Hierbij wil ik een vooraf opgemaakte sheet hanteren waarbij alleen maar waarden hoeven worden toegevoegd.

    Ik kan er helemaal niets over vinden....
    Intrepiditydonderdag 14 januari 2010 @ 12:55
    Het is geen optie dat mensen in Excel het bestand als CSV gaan opslaan? Want dan is het heel makkelijk op te lossen met de volgende query:
    quote:
    LOAD DATA INFILE 'path/file.txt' INTO TABLE your_table;
    Crutchdonderdag 14 januari 2010 @ 13:02
    Dan zou ik liever een scriptje hebben dat xls-bestanden omzet naar csv zodat ik (via upload) meteen een excel kan verwerken in de database.
    GlowMousedonderdag 14 januari 2010 @ 13:05
    quote:
    Op donderdag 14 januari 2010 12:38 schreef Intrepidity het volgende:
    Ik heb een abstracte klasse met een static property. Deze wil ik uitlezen in de overerfende klassen. Het probleem is: de inhoud van die property staat niet vast, maar is afhankelijk van o.a. wat configuratieinstellingen. Normaal zou ik die mooi in de constructor kunnen vullen, maar dat gaat natuurlijk niet op in een statische context. Dus ik dacht; dat los ik met __get() op. Alleen nu blijkt dat __get niet op statische oproepen reageert, en het gevolg is dat ik een error krijg dat mijn statische property niet bestaat.
    [..]


    Is hier een oplossing voor? of heb ik niet veel andere keus als een statische methode aanmaken die dit voor me doet?
    ik denk dat laatste
    http://nl.php.net/manual/en/language.oop5.overloading.php
    quote:
    Op donderdag 14 januari 2010 13:02 schreef Crutch het volgende:
    Dan zou ik liever een scriptje hebben dat xls-bestanden omzet naar csv zodat ik (via upload) meteen een excel kan verwerken in de database.
    dat kan, er zijn genoeg xls-classes voor PHP. Dan hoef je de tussenstap met CSV ook niet te maken.
    Crutchdonderdag 14 januari 2010 @ 13:11
    Thanks, ik heb weer wat info om mijn zoektocht ter hervatten.
    Intrepiditydonderdag 14 januari 2010 @ 13:23
    Eigenlijk vreemd dat er in Pear alleen een Excel writer en geen Excel reader zit, die mis ik nog..
    SharQueDodonderdag 14 januari 2010 @ 13:28
    Chandlerdonderdag 14 januari 2010 @ 18:23
    Iets simpels; maar ik vind maar niet hoe; dus graag een zet in de goede richting.

    MYSQL: alle data's van vandaag en later laten zien, maar niet data's van gisteren en ouder.

    Hoe? heb unix_timestamp en cur_date geprobeerd maar geen succes
    Intrepiditydonderdag 14 januari 2010 @ 18:52
    SELECT * FROM table WHERE date >= CURRENT_DATE() zou moeten werken
    Zo niet, wat is het datatype van de kolom waar je je data in hebt staan?
    cablegunmasterdonderdag 14 januari 2010 @ 19:45
    ik heb een ander dilemma ik was bezig met een datum query en nu vroeg ik me af
    kan ik een sql query maken waarin eerst op jaar word gekeken. en daarna op maand? en dan pas op dag

    zoiets als vb.

    2010
    januarie
    2009
    december
    november
    oktober
    GlowMousedonderdag 14 januari 2010 @ 19:48
    geef eens een tabel met data en daarna de output die je verwacht
    cablegunmasterdonderdag 14 januari 2010 @ 20:15
    probleem:
    het veld dat ik gebruik is een datetime veld. genaamd date uit de tabel prefix_news.
    hierin word uiteindelijk de url opgevangen. De bedoeling was dat je een soort van overzicht krijgt met wat elke maand is gepost. een soort van per jaar per maan is dit er gepost. aan nieuwsberichten / blog berichten.

    mijn eerste inval was;
    1
    2
    3
    SELECT date,title
    FROM cable_news
    ORDER BY YEAR( date ) DESC , MONTH( date ) DESC , DAY( date ) DESC


    Result die hij nu geeft:
    date
    2010-01-05 02:24:47 blablabla
    2010-01-01 03:15:05 blablablab
    2009-12-28 17:38:08 blablablbal

    Resultaat die ik probeer te krijgen. ( ter test de datum er nog bij :p )

    2010
    januarie
    2010-01-05 02:24:47 blablabla
    2010-01-01 03:15:05 blablablbal
    2009
    december
    2009-12-28 17:38:08 titel van het bericht.

    Zo krijg ik hem wel op order, alleen hoe krijg ik het nog dat hij per jaar de gegevens neerzet ?en per maand? :p
    ik weet al hoe ik hem moet uitsplitsen en de datum kan omzetten in een maand tekst maar, dan zit ik nog met het probleem hoe ik bvb 3 datums kan Linken aan een maand.
    GlowMousedonderdag 14 januari 2010 @ 20:18
    Dat doe je in je code, dat kan een database niet. Maak er dus gewoon ORDER BY date DESC van.
    cablegunmasterdonderdag 14 januari 2010 @ 20:20
    quote:
    Op donderdag 14 januari 2010 20:18 schreef GlowMouse het volgende:
    Dat doe je in je code, dat kan een database niet. Maak er dus gewoon ORDER BY date DESC van.
    ja ik zat al te twijfelen of in de sql of in de php.

    zit te bedenken in de while statement

    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
    <?php
    //Deze had ik nog :p kan best makkelijker denk ik? :p ging erom dat je een datum instopte ^^ een maand en //deze weer terug geeft in een naam <img class="rde_img_smiley" src="http://i.fok.nl/s/smile.gif" width="15" height="15" alt="" />.
    function GetMonthString($n)
    {
            
    $timestamp mktime(000$n12005);
            return 
    date("M"$timestamp);
    }

    $sql "SELECT date, title
                FROM cable_news
                ORDER BY YEAR( date ) DESC , 
                MONTH( date ) DESC , 
                DAY( date ) DESC"
    ;
            
    $result $db->query($sql);
            while(
    $row mysql_fetch_array($result))
    {
                    
    $datum explode("-"$row['date']);
                    
    $jaar $datum[0];
                    
    $maand GetMonthString($datum[1]); 
                    
    $tijd explode(":"$row['tijd']);
                    
    //echo " ".$tijd[0].":".$tijd[1];
                    //echo $datum[0].'-'.$datum[1].'-'.$datum[2].'|';
            
    if(empty($year))
            {
                
    $year $jaar;
                echo 
    $year."<br/>";
            }
            if(
    $year == $jaar)
            {
                if(empty(
    $month))
                {
                    
    $month $maand;
                    echo 
    $month."<br/>";
                }
                if(
    $month == $maand)
                {
                    echo 
    $row['title'];
                }else{
                    
    $month $maand;
                    echo 
    $month;
                    echo 
    $row['title'];
                }
            }else{
            
    $year $jaar;
            
    $month $maand;
            echo 
    $year;
            echo 
    $month;
            echo 
    $row['title'];
            }
    }
    ?>


    Nog even zonder de Opmaak tags etc

    Klopt dit ongeveer ?

    Dit klopt nu nog de Tags aan brengen


    nog 1 lastige vraag als ik nu wil weten hoeveel entry's er per maand zijn ? hoe moet ik dit dan mixen?

    [ Bericht 36% gewijzigd door cablegunmaster op 14-01-2010 22:06:10 ]
    Chandlerdonderdag 14 januari 2010 @ 20:36
    quote:
    Op donderdag 14 januari 2010 18:52 schreef Intrepidity het volgende:
    SELECT * FROM table WHERE date >= CURRENT_DATE() zou moeten werken
    Zo niet, wat is het datatype van de kolom waar je je data in hebt staan?
    OMG! ik dacht weer eens te moeilijk!!! maar bedankt voor je inzicht!
    Lightvrijdag 15 januari 2010 @ 00:18
    quote:
    Op donderdag 14 januari 2010 20:20 schreef cablegunmaster het volgende:

    [..]

    ja ik zat al te twijfelen of in de sql of in de php.

    zit te bedenken in de while statement
    [ code verwijderd ]

    Nog even zonder de Opmaak tags etc :D

    Klopt dit ongeveer :)?

    Dit klopt nu nog de Tags aan brengen :P


    nog 1 lastige vraag als ik nu wil weten hoeveel entry's er per maand zijn :D ? hoe moet ik dit dan mixen? :o
    Tip: eerst de data verzamelen, daarna pas denken aan het tonen ervan.

    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
    <?php
    $newsItems 
    = array();
    $sql "SELECT date, title
                FROM cable_news
                ORDER BY YEAR( date ) DESC , 
                MONTH( date ) DESC , 
                DAY( date ) DESC"
    ;
    $result $db->query($sql);
    while(
    $row mysql_fetch_array($result))
    {
        
    $datum explode("-"$row['date']);
        
    $jaar $datum[0];
        
    $maand $datum[1];
        
    $newsItems[$jaar][$maand] = $row;
    }

    $currentYear 0;
    $currentMonth 0;
    foreach(
    $newsItems as $year => $yearItems) {
        if(
    $year != $currentYear) {
            
    $currentYear $year;
            echo 
    $year.'<br/>';
            
    $currentMonth 0;
        }
        foreach(
    $yearItems as $month => $item) {
            if(
    $currentMonth != $month) {
                
    $currentMonth $month;
                echo 
    GetMonthString($month);
            }
            echo 
    $item['title'];
        }
    }
    ?>


    Zoiets. Zoals meestal is ook deze code niet getest.
    cablegunmastervrijdag 15 januari 2010 @ 00:52
    quote:
    Op vrijdag 15 januari 2010 00:18 schreef Light het volgende:

    [..]

    Tip: eerst de data verzamelen, daarna pas denken aan het tonen ervan.
    [ code verwijderd ]

    Zoiets. Zoals meestal is ook deze code niet getest.
    Slim aangepakt . ben zelf niet zo fan van foreach .
    Misschien ook omdat ik te klunzig ben om hem te gebruiken . Maarja, oefning baart kunst .

    Hartelijk bedankt voor de hulp btw,
    Dit gaat me goed helpen .
    Trollface.vrijdag 15 januari 2010 @ 14:29
    TVP
    Intrepidityvrijdag 15 januari 2010 @ 14:42
    Gloeiende gloeiende Net een halfuur een AJAX-functie zitten debuggen om er later achter te komen dat ik 'return json_encode()' ipv 'echo json_encode()' had gedaan
    * Intrepidity voelt zich weer even een beginneling.
    DaFanvrijdag 15 januari 2010 @ 16:57
    Ik ben een beetje een noob hoor, maar here goes:
    We hebben veel maatwerk van een consultant gekregen, maar ik probeer nu wat eigen code te maken / aan te passen. Dit gaat prima maar ik loop nu hier tegen aan:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    REATE TABLE #TempVerzoekenMedewerker(
       EmpId         int,
       datum         varchar(12),
       id            varchar(100),
       omschrijving   varchar(200),
       type         varchar(50),
       actie         varchar(50),
       omgeving      varchar(40),
       db            varchar(5)
    )

    Dit werkt prima (niet door mij gemaakt)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    CREATE TABLE #TempVerzoekenMedewerker(
       EmpId         int,
       datum         varchar(12),
       id            varchar(100),
       omschrijving   varchar(200),
       type         varchar(50),
       actie         varchar(50),
       omgeving      varchar(40),
       db            varchar(5),
       credit         varchar(50)
    )

    Dit werkt niet, want:
    quote:
    Msg 213, Level 16, State 7, Line 1
    Column name or number of supplied values does not match table definition.
    Waarom niet, ik probeer gewoon een extra kolom in een niet-bestaande tabel aan te maken bij het CREATEn toch?


    Edit; wacht de fout zit ergens in de rest van de code, waarschijnlijk omdat hij nog niets met die kolom doet.
    Het CREATE TABLE gedeelte kan ik wel gewoon runnen.

    [ Bericht 2% gewijzigd door DaFan op 15-01-2010 17:03:31 ]
    urselvrijdag 15 januari 2010 @ 17:07
    temp klinkt alsof het een temporary table is. wss wordt deze later naar een gelijkwaardige table gekopierd middels INSERT INTO SELECT * from TempVerzoekenMedewerker

    Die andere table moet in dat geval exact matchen.
    RJ3001vrijdag 15 januari 2010 @ 17:12
    Hopelijk kan iemand mij als totale sql-analfabeet helpen. Ik zit met het volgende:

    ik wil graag een SQL query wat resulteert in alle tabel-, en kolomnamen incl. foreignkeys.

    Het is gelukt om een lijst te krijgen met alle columns zonder foreignkeys doormiddel van de volgende query:

    1
    2
    3
    SELECT TABLE_NAME,COLUMN_NAME,ORDINAL_POSITION
    FROM INFORMATION_SCHEMA.COLUMNS
    ORDER BY TABLE_NAME, ORDINAL_POSITION ASC


    Ook is het gelukt om alle foreignkeys te verzamelen met de volgende query
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    SELECT
    tblALL.table_name AS PrimaryTableName,
    tblAll.column_name AS PrimaryTableColumn,
    tblFK.table_name AS ForeignKeyTable,
    tblFK.column_name AS ForeignKeyColumn
    FROM INFORMATION_SCHEMA.constraint_column_usage tblall
     
    INNER JOIN information_schema.referential_constraints tblAllFK ON
    tblAllFK.unique_constraint_name = tblAll.constraint_name
     
    INNER JOIN information_schema.constraint_column_usage tblFK ON
    tblAllFK.constraint_name=tblFK.constraint_name


    Graag zou ik deze twee willen combineren, waardoor ik met één query een overzicht heb met alle tabel- en kolomnamen, incl foreignkeys

    voorbeeld:
    1
    2
    3
    4
    5
    tabelnaam:    kolomnaam:   primarykey_table:   primarykey_column:
    Adres      ID
    Adres      STRAAT
    Person      ID
    Person      adres_id   adres         ID


    Combineren doormiddel van UNION heb ik al geprobeerd, maar dat werkt alleen als beide query hetzelfde aantal resultaten heeft. En dat is niet het geval omdat niet alle kolommen een foreignkey hebben.

    Kan iemand me verder helpen? alvast bedankt!
    ParvusMvrijdag 15 januari 2010 @ 17:41
    Ik hoop dat dit werkt voor je:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    SELECT 
    tblInfo.TABLE_NAME AS Info1, 
    tblInfo.COLUMN_NAME AS Info2, 
    tblInfo.ORDINAL_POSITION AS Info3, 
    tblALL.table_name AS PrimaryTableName,
    tblAll.column_name AS PrimaryTableColumn,
    tblFK.table_name AS ForeignKeyTable,
    tblFK.column_name AS ForeignKeyColumn
    FROM  
    INFORMATION_SCHEMA.COLUMNS tblInfo, 
    INFORMATION_SCHEMA.constraint_column_usage tblall
     
    INNER JOIN information_schema.referential_constraints tblAllFK ON
    tblAllFK.unique_constraint_name = tblAll.constraint_name
     
    INNER JOIN information_schema.constraint_column_usage tblFK ON
    tblAllFK.constraint_name=tblFK.constraint_name

    ORDER BY TABLE_NAME, ORDINAL_POSITION ASC


    *De 2 queries die je had aan elkaar gekoppeld, hoop dat het werkt*
    RJ3001vrijdag 15 januari 2010 @ 17:52
    quote:
    Op vrijdag 15 januari 2010 17:41 schreef ParvusM het volgende:
    Ik hoop dat dit werkt voor je:
    [ code verwijderd ]

    e 2 queries die je had aan elkaar gekoppeld, hoop dat het werkt*
    Bedankt voor je hulp. Helaas niet het gewenste resultaat.

    Nu krijg ik te veel terug. Aantal records is nu aantal columns x aantal foreignkeys. Terwijl ik alle columns 1 x wil, met evt. een foreignkey erachter.

    toch bedankt!
    GlowMousevrijdag 15 januari 2010 @ 18:09
    quote:
    Op vrijdag 15 januari 2010 14:42 schreef Intrepidity het volgende:
    Gloeiende gloeiende Net een halfuur een AJAX-functie zitten debuggen om er later achter te komen dat ik 'return json_encode()' ipv 'echo json_encode()' had gedaan
    * Intrepidity voelt zich weer even een beginneling.
    daar zijn sniffers voor
    DaFanvrijdag 15 januari 2010 @ 18:26
    quote:
    Op vrijdag 15 januari 2010 17:07 schreef ursel het volgende:
    temp klinkt alsof het een temporary table is. wss wordt deze later naar een gelijkwaardige table gekopierd middels INSERT INTO SELECT * from TempVerzoekenMedewerker

    Die andere table moet in dat geval exact matchen.
    Die zit weer in een andere stored procedure...anyway, ga wel vissen
    Bedankt.
    Intrepidityvrijdag 15 januari 2010 @ 18:38
    quote:
    Op vrijdag 15 januari 2010 18:09 schreef GlowMouse het volgende:

    [..]

    daar zijn sniffers voor
    Meestal weet ik dit soort domme fouten te voorkomen door een flinke dosis koffie Maar een sniffer kan ook ja
    Sitethiefvrijdag 15 januari 2010 @ 23:02
    Weet iemand of php het aan kan dat ik een csv met +/- 25.000 lines wil parsen en in een db gooien? Ik ben nog redelijk nieuw in php dus ik vraag me af of variabelen van zulke grote wel gaan werken?
    PiRANiAvrijdag 15 januari 2010 @ 23:09
    quote:
    Op vrijdag 15 januari 2010 23:02 schreef Sitethief het volgende:
    Weet iemand of php het aan kan dat ik een csv met +/- 25.000 lines wil parsen en in een db gooien? Ik ben nog redelijk nieuw in php dus ik vraag me af of variabelen van zulke grote wel gaan werken?
    Moet kunnen, mogelijk moet je je memory limiet wat hoger zetten:
    quote:
    Edit the memory_limit parameter in the php.ini file (usually in a section called Resource Limits)
    memory_limit = 32M ; Maximum amount of memory a script may consume (32MB)
    Intrepidityvrijdag 15 januari 2010 @ 23:12
    quote:
    Op vrijdag 15 januari 2010 23:09 schreef PiRANiA het volgende:

    [..]

    Moet kunnen, mogelijk moet je je memory limiet wat hoger zetten:
    [..]
    Met goed programmeren hoeft dat toch niet nodig te wezen? Je hoeft niet de hele inhoud in 1 keer in je geheugen te stampen. Als je dat gewoon regel voor regel doet en je rotzooi (variabelen) opruimt e.d. is er niks aan de hand.
    PiRANiAvrijdag 15 januari 2010 @ 23:13
    quote:
    Op vrijdag 15 januari 2010 23:12 schreef Intrepidity het volgende:

    [..]

    Met goed programmeren hoeft dat toch niet nodig te wezen? Je hoeft niet de hele inhoud in 1 keer in je geheugen te stampen. Als je dat gewoon regel voor regel doet en je rotzooi (variabelen) opruimt e.d. is er niks aan de hand.
    quote:
    Op vrijdag 15 januari 2010 23:02 schreef Sitethief het volgende:
    Weet iemand of php het aan kan dat ik een csv met +/- 25.000 lines wil parsen en in een db gooien? Ik ben nog redelijk nieuw in php dus ik vraag me af of variabelen van zulke grote wel gaan werken?
    Intrepidityvrijdag 15 januari 2010 @ 23:15
    Je hoeft het ook niet in 1 keer goed te doen Kwestie van trial-and-error en veel bloed, zweet en tranen. Anders leer je 't nooit
    Sitethiefvrijdag 15 januari 2010 @ 23:46
    Nou ja tis maar 3-4 mb, dus of php daar over struikelt betwijfel ik . En inderdaad, goeie oefening om te leren netjes te programmeren in php.
    urselzaterdag 16 januari 2010 @ 11:14
    Tot 40k regeles met op iedere regel +/- 50 "velden" lukt prima.
    De volledige file van 160k regels vond die tot nog toe niet goed.
    hamkaastostizaterdag 16 januari 2010 @ 12:02
    harghl.. in ben al 2 dagen aan het klooien met jquery en een autocomplete veld.
    De bedoeling is dat je in een input veld tekst typt waarna er een mysql query gedaan wordt met LIKE en een id uit een select field uit hetzelfde form. Nadat er een keuze uit de gemaakte json lijst is gemaakt wil ik de titel in het input veld weergeven en het id behorende bij het veld in een hidden field opslaan..

    maar het werkt gewoon allemaal voor geen kont. ik snap niets van dat hele jquery gebeuren laat staan de wilgroei van autocomplete plugins die er is

    snirfl
    PiRANiAzaterdag 16 januari 2010 @ 12:09
    quote:
    Op zaterdag 16 januari 2010 12:02 schreef hamkaastosti het volgende:
    harghl.. in ben al 2 dagen aan het klooien met jquery en een autocomplete veld.
    De bedoeling is dat je in een input veld tekst typt waarna er een mysql query gedaan wordt met LIKE en een id uit een select field uit hetzelfde form. Nadat er een keuze uit de gemaakte json lijst is gemaakt wil ik de titel in het input veld weergeven en het id behorende bij het veld in een hidden field opslaan..

    maar het werkt gewoon allemaal voor geen kont. ik snap niets van dat hele jquery gebeuren laat staan de wilgroei van autocomplete plugins die er is

    snirfl
    http://docs.jquery.com/Plugins/Autocomplete#Example
    heb je daar iets aan? Het ziet er vij duidelijk uit volgens mij?
    hamkaastostizaterdag 16 januari 2010 @ 12:15
    ik ben nu bezig met een meest simpele testcase om eea stap voor stap uit te werken. Is toch te dol dat ik hier niet uit kom

    http://morecowbell.net.au(...)lete-with-json-data/
    dat gaat me wel helpen denk ik.

    edit:
    ik ben maar van het json afgestapt voorlopig. de standaard plugin werkt ook prima voor wat ik wil. Er is alleen nog 1 ding wat ik nog niet werkend krijg.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <script type="text/javascript">
                $("#title").autocomplete('search.php?test=3',{
                    minChars: 3,
                    width: 200
                ;

                $("#title").result(function(event, data, formatted){
                    if (data)
                    $(this).parent().next().find("input").val(data[1]);
                ;
    </script>

    dit stukje haalt dus de data op van search.php en vult de eerstvolgende input met de bijbehorende id van de title. maar hoe krijg het nou voor elkaar dat ?test=3 veranderd naar de gekozen value van de select?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
            <form action="search.php" method="post" class="form">
                <fieldset>
                    <ol>
                        <li>
                            <label for="console">Optie</label>
                            <select name="option" size="1">
                                <option value="1">optie 1</option>
                                <option value="2">Optie 2</option>
                                <option value="3">Optie 3</option>
                            </select>
                        </li>
                        <li>
                            <label for="title">Titel</label>
                            <input type="text" id="title" name="title">
                        </li>
                        <li>
                            <label for="id">id</label>
                            <input name="id">
                        </li>
                    </ol>
                    <input type="submit" name="submit" class="submit" value="Verzenden">
                </fieldset>
            </form>


    [ Bericht 59% gewijzigd door hamkaastosti op 16-01-2010 13:38:06 ]
    Chandlerzondag 17 januari 2010 @ 13:43
    Misschien door een simpele onchange in je select te hangen met een functie of een lapje code oa

    1
    2
    3
    4
    $("#title").autocomplete('search.php?test=' + $('jepulldownID').[$('jepulldownID').selectedIndex].value,{
                    minChars: 3,
                    width: 200
                ;


    oid?
    Sitethiefmaandag 18 januari 2010 @ 11:38
    Geniaal, ontwikkelomgeving is php 5, live omgeving is 4 .......
    Heel handig als je met classes werkt
    Crutchmaandag 18 januari 2010 @ 11:41
    Kan ik hier ook javascript vraagstukken neerplempen trouwens?
    Trollface.maandag 18 januari 2010 @ 11:45
    quote:
    Op maandag 18 januari 2010 11:41 schreef Crutch het volgende:
    Kan ik hier ook javascript vraagstukken neerplempen trouwens?
    [Javascript] voor dummies (deel 9)
    Intrepiditymaandag 18 januari 2010 @ 12:03
    quote:
    Op maandag 18 januari 2010 11:38 schreef Sitethief het volgende:
    Geniaal, ontwikkelomgeving is php 5, live omgeving is 4 .......
    Heel handig als je met classes werkt
    Welke baggerhoster is dat nou weer, die alleen nog 4.x aanbiedt? Dat kan echt niet meer anno 2010
    Sitethiefmaandag 18 januari 2010 @ 12:54
    quote:
    Op maandag 18 januari 2010 12:03 schreef Intrepidity het volgende:

    [..]

    Welke baggerhoster is dat nou weer, die alleen nog 4.x aanbiedt? Dat kan echt niet meer anno 2010
    het bedrijf waar ik zelf werk
    Intrepiditymaandag 18 januari 2010 @ 13:05
    Ik moet onze hoster nodig eens op de flikker gaan geven dat ze nog geen 5.3 draaien, ze draaien nog op 5.2.6.. Ik wil namespaces, closures en late static binding
    Crutchmaandag 18 januari 2010 @ 13:15
    dank
    quote:
    Op maandag 18 januari 2010 11:45 schreef Trollface. het volgende:

    [..]

    [Javascript] voor dummies (deel 9)
    cablegunmasterdinsdag 19 januari 2010 @ 00:17
    quote:
    Op vrijdag 15 januari 2010 00:18 schreef Light het volgende:

    [..]

    Tip: eerst de data verzamelen, daarna pas denken aan het tonen ervan.
    [ code verwijderd ]

    Zoiets. Zoals meestal is ook deze code niet getest.
    hij was bijna goed ^^. hij pakte alles behalve tot dat hij maar 1 titel per maand pakte
    even nog een extra array met de titels erbij gestopt + nog een foreach en het opgelost.
    Relaxte manier om Arrays te gebruiken . Weer iets geleerd .
    Klein probleempje om het news id er nog uit te halen .

    ik snap nu dat je met elke foreach de array 1 opschuift :p.

    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
    <?php
            $newsItems 
    = array();
            
    $sql "SELECT date, title,news_id
                    FROM cable_news
                    ORDER BY YEAR( date ) DESC , 
                    MONTH( date ) DESC , 
                    DAY( date ) DESC"
    ;
        
    $result $db->query($sql);
        while(
    $row mysql_fetch_array($result))
        {
            
    $datum explode("-"$row['date']);
            
    $jaar $datum[0];
            
    $maand $datum[1];
            
    $news $row['news_id']."-".$row['title'];
            
    $newsItems[$jaar][$maand][$news] = $row;
        }
        
    $currentYear 0;
        
    $currentMonth 0;
        foreach(
    $newsItems as $year => $yearItems) {
            if(
    $year != $currentYear) {
                
    $currentYear $year;
                echo 
    $year.'<br/>';
                
    $currentMonth 0;
            }
            foreach(
    $yearItems as $month => $message) {
                if(
    $currentMonth != $month) {
                    
    $currentMonth $month;
                    echo 
    GetMonthString($month)."<br/>";
                }
                foreach(
    $message as $title){
                    
    $lijn explode("-"$title);
                    echo 
    "<a href='index.php?blog=".$lijn[0]."'>".$lijn[1]."</a><br/>";
                }
            }
        }
    ?>


    ik denk dat ik hem zo wel goed heb weet niet of ik de laatste foreach nog beter kan doen .
    Dacht nog een array erachter maar als je nog een betere oplossing hebt .
    Vraag me af hoe je dit technisch op de beste manier doet ^^.

    [ Bericht 26% gewijzigd door cablegunmaster op 19-01-2010 00:54:23 ]
    Keiichiwoensdag 20 januari 2010 @ 07:25
    Ik ben in MySQL lekker aan het stoeien met subquery's. Maar bij het eerste de beste wat ik maak duurt het 15 minuten voordat ik resultaat heb

    Mijn query:
    1SELECT `w` FROM `w` WHERE `w`.`w` IN (SELECT `werknummer` FROM `w` WHERE  GROUP BY w HAVING COUNT(*) > 1);


    Een EXPLAIN levert dit op:
    1
    2
    3
    4
    5
    6
    +----+--------------------+-------+-------+---------------+------+---------+------+-------+--------------------------+
    | id | select_type        | table | type  | possible_keys | key  | key_len | ref  | rows  | Extra                    |
    +----+--------------------+-------+-------+---------------+------+---------+------+-------+--------------------------+
    |  1 | PRIMARY            | w     | index | NULL          | w    | 4       | NULL | 23023 | Using where; Using index |
    |  2 | DEPENDENT SUBQUERY | w     | range | w             | w    | 4       | NULL | 17678 | Using where              |
    +----+--------------------+-------+-------+---------------+------+---------+------+-------+--------------------------+


    Is MySQL niet zo geweldig met subqueries of doe ik ergens iets heel raars?

    De echte tabelnamen en veldnamen heb ik even afgekort, maar hoeft niets voor de query uit te maken.
    Lightwoensdag 20 januari 2010 @ 09:44
    Het lijkt er op dat er een index ontbreekt in de tabel.
    GlowMousewoensdag 20 januari 2010 @ 10:33
    waarom is WHERE in je subquery leeg?
    Keiichiwoensdag 20 januari 2010 @ 10:42
    quote:
    Op woensdag 20 januari 2010 10:33 schreef GlowMouse het volgende:
    waarom is WHERE in je subquery leeg?
    Oh foutje. Daar stond een kleine verfijning van: "WHERE `w` != 1" . Vergeten ook de WHERE weg te halen
    GlowMousewoensdag 20 januari 2010 @ 10:44
    Geef je hele tabel is, want ik zie niet waarom w en werknummer aan elkaar gelijk moeten zijn
    GlowMousewoensdag 20 januari 2010 @ 10:47
    Zoals je hem post, lijkt het ook geen dependent subquery.
    Sitethiefwoensdag 20 januari 2010 @ 11:48
    Wat is een simpele manier om een object dat uit simplexml_load_file komt in een array te zetten.
    Ik gebruik nu get_object_vars maar dat komt er dan zo uit te zien:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Array
    (
        [book] => Array
            (
                [0] => SimpleXMLElement Object
                    (
                        [@attributes] => Array
                            (
                                [id] =>1
                            )
                        [author] => Gambardella, Matthew
                        [title] => XML Developer's Guide
                        [genre] => Computer
                        [price] => 44.95
                        [publish_date] => 2000-10-01
                        [description] => An in-depth look at creating applications with XML.
                    )

    Terwijl ik eigenlijk een array wil hebben die begint met id 1,2,3 etc. Dit is een beetje omslachtig om iedere keer output te geven.

    Dit is de XML:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?xml version="1.0"?>
    <catalog>
       <book id="bk101">
          <author>Gambardella, Matthew</author>
          <title>XML Developer's Guide</title>
          <genre>Computer</genre>
          <price>44.95</price>
          <publish_date>2000-10-01</publish_date>
          <description>An in-depth look at creating applications with XML.</description>
       </book>
    </catalog>
    F4T4L_3RR0Rvrijdag 22 januari 2010 @ 19:43
    Ik heb een PHP scriptje welke een SMS API included.

    De berichten staan in $sms met een substr met 160 karakters limiet.

    Nu wil ik de berichten ook "Tweeten" op mijn Twitter account. Heb al een substr genaamd $twitter met een 140 karakters limiet.

    Alleen, hoe post ik dit op mijn Twitter account? De API's die ik op internet heb gevonden zijn veel te uitgebreid en vaak ook bedoeld om "Tweets" van anderen op te halen en weer te geven op een website.

    Voor mijn doel hoeft er helemaal niets opgehaald of ge-echo'd te worden.
    GlowMousevrijdag 22 januari 2010 @ 19:45
    http://www.justinrains.co(...)ate-twitter-php.html

    een functie is snel gemaakt;
    F4T4L_3RR0Rvrijdag 22 januari 2010 @ 20:05
    Dus in mijn geval dus:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
    // Set username and password
    $username 'username';
    $password 'password';

    // The twitter API address
    $url 'http://twitter.com/statuses/update.xml';

    $curl_handle curl_init();
    curl_setopt($curl_handleCURLOPT_URL"$url");
    curl_setopt($curl_handleCURLOPT_CONNECTTIMEOUT2);
    curl_setopt($curl_handleCURLOPT_RETURNTRANSFER1);
    curl_setopt($curl_handleCURLOPT_POST1);
    curl_setopt($curl_handleCURLOPT_POSTFIELDS"status=$twitter");
    curl_setopt($curl_handleCURLOPT_USERPWD"$username:$password");
    curl_close($curl_handle);
    ?>
    F4T4L_3RR0Rvrijdag 22 januari 2010 @ 20:32
    Het gekke is dat dit niet werkt:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    // Set username and password
    $username "username";
    $password "password";

    // The message you want to send
    $twitter 'dit is een test';

    // The twitter API address
    $url 'http://twitter.com/statuses/update.xml';

    $curl_handle curl_init();
    curl_setopt($curl_handleCURLOPT_URL"$url");
    curl_setopt($curl_handleCURLOPT_CONNECTTIMEOUT2);
    curl_setopt($curl_handleCURLOPT_RETURNTRANSFER1);
    curl_setopt($curl_handleCURLOPT_POST1);
    curl_setopt($curl_handleCURLOPT_POSTFIELDS"status=$twitter");
    curl_setopt($curl_handleCURLOPT_USERPWD"$username:$password");
    curl_close($curl_handle);
    ?>


    En dit juist weer wel, maar wil geen echo:

    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
    <?php
    // Set username and password
    $username "username";
    $password "password";

    // The message you want to send
    $twitter 'dit is een test';

    // The twitter API address
    $url 'http://twitter.com/statuses/update.xml';

    $curl_handle curl_init();
    curl_setopt($curl_handleCURLOPT_URL"$url");
    curl_setopt($curl_handleCURLOPT_CONNECTTIMEOUT2);
    curl_setopt($curl_handleCURLOPT_RETURNTRANSFER1);
    curl_setopt($curl_handleCURLOPT_POST1);
    curl_setopt($curl_handleCURLOPT_POSTFIELDS"status=$twitter");
    curl_setopt($curl_handleCURLOPT_USERPWD"$username:$password");
    $buffer curl_exec($curl_handle);
    curl_close($curl_handle);
    // check for success or failure
    if (empty($buffer)) {
    echo 
    'message';
    } else {
    echo 
    'success';
    }
    ?>


    Edit:

    Fixed:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <?php
    // Set username and password
    $username "username";
    $password "password";

    // The message you want to send
    $twitter 'dit is een test';

    // The twitter API address
    $url 'http://twitter.com/statuses/update.xml';

    $curl_handle curl_init();
    curl_setopt($curl_handleCURLOPT_URL"$url");
    curl_setopt($curl_handleCURLOPT_CONNECTTIMEOUT2);
    curl_setopt($curl_handleCURLOPT_RETURNTRANSFER1);
    curl_setopt($curl_handleCURLOPT_POST1);
    curl_setopt($curl_handleCURLOPT_POSTFIELDS"status=$twitter");
    curl_setopt($curl_handleCURLOPT_USERPWD"$username:$password");
    curl_exec($curl_handle);
    curl_close($curl_handle);
    ?>
    SHERMANzondag 24 januari 2010 @ 13:18
    Ik post hier even.. want ik heb straks een vraag..
    Intrepidityzondag 24 januari 2010 @ 13:20
    Dan reserveer ik hierbij alvast een plekkie om het antwoord te posten
    SHERMANzondag 24 januari 2010 @ 13:42
    Ik moet een soort van resevering systeem opzetten. Dit mag zo basic mogelijk, er hoeft bijvoorbeeld geen login te komen.

    De reseveringen zijn variabel (duur van de resevering kan verschillend) ook degene die het reseveert kan verschillen. Historie moet bewaard blijven.

    Zoiets als:

    Items 2010-01 2010-02 2010--3
    Item1 klant1 klant1 -
    Item2 klant2 klant2 klant2
    Item3 klant1 klant1 klant2

    Vervolgens moet ik lijstje kunnen maken van:
    - per item, wie het wanneer had
    - per klant, hoeveel items op een willekeurig moment
    - in een maand zien wie wat heeft

    Het maken van de overzichten gaat me opzich wel lukken.

    Ik heb alleen geen idee hoe ik dit het beste in een database kan proppen..
    Het kan natuurlijk gewoon in de tabel vorm die ik net post, maar ik vraag me af of dat iemand misschien een betere manier weet..?
    Chandlerzondag 24 januari 2010 @ 21:53
    Hoe kun je er achter komen of session_start al gestart is? zonder daarvoor alle scripting te doorlopen?.

    Kon namelijk geen functie vinden waarmee ik dit kan achterhalen.... zal er ongetwijfeld overheen hebben gekeken maar wie kan mij de juiste functie aanwijzen?
    Lightzondag 24 januari 2010 @ 22:15
    quote:
    Op zondag 24 januari 2010 21:53 schreef Chandler het volgende:
    Hoe kun je er achter komen of session_start al gestart is? zonder daarvoor alle scripting te doorlopen?.

    Kon namelijk geen functie vinden waarmee ik dit kan achterhalen.... zal er ongetwijfeld overheen hebben gekeken maar wie kan mij de juiste functie aanwijzen?
    Waarom wil je weten of een sessie al gestart is?
    Intrepidityzondag 24 januari 2010 @ 22:16
    quote:
    Op zondag 24 januari 2010 21:53 schreef Chandler het volgende:
    Hoe kun je er achter komen of session_start al gestart is? zonder daarvoor alle scripting te doorlopen?.

    Kon namelijk geen functie vinden waarmee ik dit kan achterhalen.... zal er ongetwijfeld overheen hebben gekeken maar wie kan mij de juiste functie aanwijzen?
    als het resultaat van een aanroep naar session_id() een lege string is is er geen sessie gestart
    Overigens kun je ook gewoon @session_start() aanroepen. Dit heeft geen effect op eventuele bestaande sessies. Er volgt alleen een E_NOTICE, die je dus met de @-operator onderdrukt.

    [ Bericht 9% gewijzigd door Intrepidity op 24-01-2010 22:38:33 ]
    Lightzondag 24 januari 2010 @ 22:24
    quote:
    Op zondag 24 januari 2010 13:42 schreef SHERMAN het volgende:
    Ik moet een soort van resevering systeem opzetten. Dit mag zo basic mogelijk, er hoeft bijvoorbeeld geen login te komen.

    De reseveringen zijn variabel (duur van de resevering kan verschillend) ook degene die het reseveert kan verschillen. Historie moet bewaard blijven.

    Zoiets als:

    Items 2010-01 2010-02 2010--3
    Item1 klant1 klant1 -
    Item2 klant2 klant2 klant2
    Item3 klant1 klant1 klant2

    Vervolgens moet ik lijstje kunnen maken van:
    - per item, wie het wanneer had
    - per klant, hoeveel items op een willekeurig moment
    - in een maand zien wie wat heeft

    Het maken van de overzichten gaat me opzich wel lukken.

    Ik heb alleen geen idee hoe ik dit het beste in een database kan proppen..
    Het kan natuurlijk gewoon in de tabel vorm die ik net post, maar ik vraag me af of dat iemand misschien een betere manier weet..?
    Als ik het zo snel bekijk, heb je drie tabellen nodig: klanten, items en reserveringen. Reserveringen is per klant, per item en bijvoorbeeld per dag. Als er dan een reserving wordt ingevoerd, voor je voor iedere dag van die reservering een rij in. Controle op beschikbaarheid is dan ook simpel. Andere optie is om bij de reserveringen een begindatum en einddatum op te slaan. Dan heb je 1 rij per reservering, maar de controle op beschikbaarheid kan wat lastiger zijn.
    Chandlermaandag 25 januari 2010 @ 09:41
    quote:
    Op zondag 24 januari 2010 22:15 schreef Light het volgende:
    Waarom wil je weten of een sessie al gestart is?
    Een projectje
    quote:
    Op zondag 24 januari 2010 22:16 schreef Intrepidity het volgende:
    als het resultaat van een aanroep naar session_id() een lege string is is er geen sessie gestart
    Overigens kun je ook gewoon @session_start() aanroepen. Dit heeft geen effect op eventuele bestaande sessies. Er volgt alleen een E_NOTICE, die je dus met de @-operator onderdrukt.
    Ok, ik moet dus toch session_id gebruiken! want vind werken met @ erg vies!

    -------------------------------------------------------------------------------------

    Een andere vraag, stel ik heb een tabel met dit soort gegevens

    A75
    A76
    A77
    A78
    A98
    AA101
    AA102
    AA103
    A37
    A47
    etc

    Nu wil ik graag dat de uitkomst via mysql alles sorteert maar dan op deze manier

    A37
    A47
    A75
    A76
    A77
    A78
    A98
    AA101
    AA102
    AA103
    etc

    Hoe krijg ik dit voor elkaar?
    Intrepiditymaandag 25 januari 2010 @ 10:29
    Ligt het nou aan mij of doet een doodnormale ORDER BY ASC precies wat je wilt?
    Chandlerdinsdag 26 januari 2010 @ 08:57
    Nee, probeer het maar eens
    SHERMANdinsdag 26 januari 2010 @ 09:13
    quote:
    Op zondag 24 januari 2010 22:24 schreef Light het volgende:

    [..]

    Als ik het zo snel bekijk, heb je drie tabellen nodig: klanten, items en reserveringen. Reserveringen is per klant, per item en bijvoorbeeld per dag. Als er dan een reserving wordt ingevoerd, voor je voor iedere dag van die reservering een rij in. Controle op beschikbaarheid is dan ook simpel. Andere optie is om bij de reserveringen een begindatum en einddatum op te slaan. Dan heb je 1 rij per reservering, maar de controle op beschikbaarheid kan wat lastiger zijn.
    Ik ga is even kijken of ik hier wat mee kan... Misschien dat ik nog met andere vragen kom..

    Thanks in elk geval!
    Tiemiedinsdag 26 januari 2010 @ 09:41
    quote:
    Op maandag 25 januari 2010 09:41 schreef Chandler het volgende:

    [..]

    Een projectje :)
    [..]

    Ok, ik moet dus toch session_id gebruiken! want vind werken met @ erg vies!

    -------------------------------------------------------------------------------------

    Een andere vraag, stel ik heb een tabel met dit soort gegevens

    A75
    A76
    A77
    A78
    A98
    AA101
    AA102
    AA103
    A37
    A47
    etc

    Nu wil ik graag dat de uitkomst via mysql alles sorteert maar dan op deze manier

    A37
    A47
    A75
    A76
    A77
    A78
    A98
    AA101
    AA102
    AA103
    etc

    Hoe krijg ik dit voor elkaar?
    Casten naar een int, op die waarde sorteren
    1
    2
    3
    SELECT veld, CAST( veld AS UNSIGNED) As order_veld
    FROM table
    ORDER BY order_veld ASC

    http://dev.mysql.com/doc/(...)s.html#function_cast
    Lightdinsdag 26 januari 2010 @ 10:56
    quote:
    Op dinsdag 26 januari 2010 09:41 schreef Tiemie het volgende:

    [..]

    Casten naar een int, op die waarde sorteren
    [ code verwijderd ]

    http://dev.mysql.com/doc/(...)s.html#function_cast
    Ik zie niet waarom je zou moeten casten naar int. Stringsortering gaat (met de voorbeeldwaarden) ook goed.
    Chandlerdinsdag 26 januari 2010 @ 11:28
    Hmm, dan loop ik de code nog eens door en kijk ik of ik toch een ASC oid? ben vergeten

    Een andere vraag m.b.t. een nieuw wachtwoord aanvragen voor gebruikers, ik zag ooit een script die je gemakkelijk kon misbruiken om een gebruiker 100000 emails te sturen voor aanvraag van een nieuw wachtwoord. Dit wil ik echter voorkomen.

    Hoe zouden jullie dit oplossen? zelf zit ik te denken aan een veld in de gebruikerstabel met alleen de datum, dat men max 1x per dag een nieuw wachtwoord kunnen aanvragen, tenzijn nieuw wachtwoord gezet wordt dan wordt deze data weer in het verleden gezet. oid?

    Jullie ideeen.
    mark_1980dinsdag 26 januari 2010 @ 12:08
    Ik wil een waarde selecteren uit een database waarbij de waarde field_id een float is. Dit is mijn query:

    1SELECT * FROM tabel where field_number = 5.3;


    Er komt echter geen resultaat terug uit de database. Heb al vanalles geprobeer:

    1
    2
    3
    4
    SELECT * FROM tabel where field_number = 5.3;
    SELECT * FROM tabel where field_number = '5.3';
    SELECT * FROM tabel where field_number = 5,3;
    SELECT * FROM tabel where field_number = '5.3';


    Maar het werkt allemaal niet! Iemand een idee hoe deze query moet draaien?
    Intrepiditydinsdag 26 januari 2010 @ 12:23
    Waarom is call-by-reference deprecated tegenwoordig?
    Als ik een parameter aan een closure meegeef met de ampersand ervoor krijg ik
    quote:
    Deprecated: Call-time pass-by-reference has been deprecated in \\V-PLUTO\CODE\WWW\wwwroot\dev\mailbasis\Framework\Core\ModelBase.php on line 207
    De return-waarde van de closure wil ik gebruiken om te valideren of de operatie geslaagd is, maar tegelijkertijd moet de closure de meegegeven parameter kunnen wijzigen. Hoe los ik dat op?
    ParvusMdinsdag 26 januari 2010 @ 15:00
    quote:
    Op dinsdag 26 januari 2010 12:23 schreef Intrepidity het volgende:
    Waarom is call-by-reference deprecated tegenwoordig?
    Omdat dit (als ik het goed heb vernomen) in PHP 5.x standaard gebeurt en dus is de ampersand niet meer nodig.
    Intrepiditydinsdag 26 januari 2010 @ 15:01
    quote:
    Op dinsdag 26 januari 2010 15:00 schreef ParvusM het volgende:

    [..]

    Omdat dit (als ik het goed heb vernomen) in PHP 5.x standaard gebeurt en dus is de ampersand niet meer nodig.
    Alleen met objecten afaik, niet met simpele typen.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    echo phpversion() . "<br />";
    $i 3;
    foo($i);
    echo 
    $i;

    function 
    foo($i)
    {
       
    $i++;
    }
    ?>

    Resultaat:
    quote:
    5.3.0
    3
    In 5.3.0 is dat zondermeer niet het geval
    Intrepiditydinsdag 26 januari 2010 @ 15:08
    Ik snap 'm al Je moet je functie definieren met een ampersand, en deze vervolgens niet meer gebruiken in je aanroep.

    Levert WEL een warning op:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $i 
    3;
    foo(&$i);

    function 
    foo($i)
    {
      
    $i++;
    }
    ?>


    Levert GEEN warning op en werkt wel met een referentie:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $i 
    3;
    foo($i);

    function 
    foo(&$i)
    {
      
    $i++;
    }
    ?>
    Darkomendinsdag 26 januari 2010 @ 15:40
    1
    2
    3
    4
    5
    6
    7
    SELECT *
    FROM TMPCARD
    INNER JOIN TMPCARD_Uptime ON ( TMPCARD.id = TMPCARD_Uptime.cardid )
    GROUP BY TMPCARD_Uptime.ip
    HAVING count( TMPCARD_Uptime.ip ) >=2
    ORDER BY TMPCARD.timestamp, TMPCARD_Uptime.timestamp ASC
    LIMIT 0 , 10


    Ik heb een probleem met de bovenstaande query, hopelijk kunnen jullie helpen.
    De eerste tabel TMPCARD is een tabel met gegevens van zo'n 1000 kaarten.
    De 2 de tabel is een tabel gevuld door een scan, deze kijkt of de uptime van die kaart meer of minder is dan de uptime in TMPCARD.
    Is het meer dan update hij TMPCARD.uptime
    Is het minder dan plaatst hij ook een entrie in TMPCARD_Uptime

    Wat ik wil is per pagina de 10 kaarten welke 2 of meer dan 2 entries hebben in TMPCARD_Uptime.

    Hoe doe ik dit op de juiste manier?
    Ik krijg dan wel de juiste kaarten maar niet met al hun entries in TMPCARD_Uptime.

    [ Bericht 1% gewijzigd door Darkomen op 26-01-2010 15:52:31 ]
    cablegunmasterwoensdag 27 januari 2010 @ 01:57
    quote:
    Op dinsdag 26 januari 2010 12:08 schreef mark_1980 het volgende:
    Ik wil een waarde selecteren uit een database waarbij de waarde field_id een float is. Dit is mijn query:
    [ code verwijderd ]

    Er komt echter geen resultaat terug uit de database. Heb al vanalles geprobeer:
    [ code verwijderd ]

    Maar het werkt allemaal niet! Iemand een idee hoe deze query moet draaien?
    is dit nog gelukt?
    want probeer tijdennr anders tussen quotes te zetten (enkele).
    Probeer anders even uit te testen met Phpmyadmin zat het alvast uit te zoeken maar ik kom niet echt ergens op problemen.
    cablegunmasterwoensdag 27 januari 2010 @ 02:00
    quote:
    Op dinsdag 26 januari 2010 15:40 schreef Darkomen het volgende:

    [ code verwijderd ]

    Ik heb een probleem met de bovenstaande query, hopelijk kunnen jullie helpen.
    De eerste tabel TMPCARD is een tabel met gegevens van zo'n 1000 kaarten.
    De 2 de tabel is een tabel gevuld door een scan, deze kijkt of de uptime van die kaart meer of minder is dan de uptime in TMPCARD.
    Is het meer dan update hij TMPCARD.uptime
    Is het minder dan plaatst hij ook een entrie in TMPCARD_Uptime

    Wat ik wil is per pagina de 10 kaarten welke 2 of meer dan 2 entries hebben in TMPCARD_Uptime.

    Hoe doe ik dit op de juiste manier?
    Ik krijg dan wel de juiste kaarten maar niet met al hun entries in TMPCARD_Uptime.
    ipv het sterretje in de select probeer eens de velden apart te benoemen in de select.
    is het probleem nu dat je velden mist? of dat je alleen enkele kaarten hebt?
    Want de GROUP BY methode zorgt er namelijk voor dat alle kaarten bijelkaar groupeert worden op TMPCARD_Uptime.ip en als ik van dat ip Meerdere kaarten wil zien dan wil dat niet.
    GlowMousewoensdag 27 januari 2010 @ 08:55
    quote:
    Op dinsdag 26 januari 2010 15:40 schreef Darkomen het volgende:

    [ code verwijderd ]

    Ik heb een probleem met de bovenstaande query, hopelijk kunnen jullie helpen.
    De eerste tabel TMPCARD is een tabel met gegevens van zo'n 1000 kaarten.
    De 2 de tabel is een tabel gevuld door een scan, deze kijkt of de uptime van die kaart meer of minder is dan de uptime in TMPCARD.
    Is het meer dan update hij TMPCARD.uptime
    Is het minder dan plaatst hij ook een entrie in TMPCARD_Uptime

    Wat ik wil is per pagina de 10 kaarten welke 2 of meer dan 2 entries hebben in TMPCARD_Uptime.

    Hoe doe ik dit op de juiste manier?
    Ik krijg dan wel de juiste kaarten maar niet met al hun entries in TMPCARD_Uptime.
    Het zoekwoord is denormalisatie.
    Darkomenwoensdag 27 januari 2010 @ 09:26
    quote:
    Op woensdag 27 januari 2010 08:55 schreef GlowMouse het volgende:

    [..]

    Het zoekwoord is denormalisatie.
    En waarom?
    Het is niet dat de query traag loopt, ik wil enkel pagina;s toevoegen ipv 1 hele lange lijst.

    Ik ga het anders doen, ik pak de hoofdtabel en zoek daar later wel de updates bij.
    GlowMousewoensdag 27 januari 2010 @ 10:09
    quote:
    Op woensdag 27 januari 2010 09:26 schreef Darkomen het volgende:

    [..]

    En waarom?
    Het is niet dat de query traag loopt
    Dat komt vanzelf als je veel kaarten krijgt. TMPCARD_Uptime.timestamp ASC lijkt me trouwens geen geldig iets om op te sorteren, zo na die group by.
    Darkomenwoensdag 27 januari 2010 @ 11:34
    Joins en verder mysql kennis hebik helaas nog niet, vandaar de vragen.
    Ik dacht dat ik zoiets simpels als hieronder wel kon...

    SELECT * FROM TMPCARD WHERE uptime<='172800'
    Waarom krijg ik hier ook hogere waarden terug?
    Bijvoorbeeld 10000930

    Volgens mij is 10000930 toch echt groter dan 172800


    Edit: ah, ORDER BY cast( uptime AS unsigned ) , id ASC

    [ Bericht 13% gewijzigd door Darkomen op 27-01-2010 12:01:08 ]
    Lightwoensdag 27 januari 2010 @ 12:17
    quote:
    Op woensdag 27 januari 2010 11:34 schreef Darkomen het volgende:

    Edit: ah, ORDER BY cast( uptime AS unsigned ) , id ASC
    Waarom zou je een signed veld gebruiken als de waarde niet negatief kan zijn? Of kan die uptime wel negatief zijn?
    Darkomenwoensdag 27 januari 2010 @ 13:02
    Nee die kan niet negatief zijn.
    Het veld is een varchar(11), verder niks bijzonder.
    woopehhwoensdag 27 januari 2010 @ 15:43
    Weet iemand of er een manier is om te zorgen dat een record maar 1x uit een tabel wordt opgevraagd? Soort van SELECT en UPDATE/DELETE (om te laten zien dat het record al afgehandeld is) tegelijk..
    Lightwoensdag 27 januari 2010 @ 16:06
    quote:
    Op woensdag 27 januari 2010 13:02 schreef Darkomen het volgende:
    Nee die kan niet negatief zijn.
    Het veld is een varchar(11), verder niks bijzonder.
    Een varchar wordt alfabetisch gesorteerd. Dan komt 100 voor 17. Waarom niet gewoon een unsigned int gebruiken voor uptime?
    Darkomenwoensdag 27 januari 2010 @ 16:35
    Bedankt, ik weet niet elke eigenschap van de verschillende velden.
    Een verkeerde keuze van mij dus.
    Het is nu aangepast, eens kijken wat ik er mee kan.

    Edit: niks dus, krijg nu 1 entrie terug terwijl er echt veeeel meer zijn met meer dan 2 records in de 2de tabel.

    [ Bericht 27% gewijzigd door Darkomen op 27-01-2010 16:45:01 ]
    Chandlerdonderdag 28 januari 2010 @ 07:01
    quote:
    Op dinsdag 26 januari 2010 11:28 schreef Chandler het volgende:
    Een andere vraag m.b.t. een nieuw wachtwoord aanvragen voor gebruikers, ik zag ooit een script die je gemakkelijk kon misbruiken om een gebruiker 100000 emails te sturen voor aanvraag van een nieuw wachtwoord. Dit wil ik echter voorkomen.

    Hoe zouden jullie dit oplossen? zelf zit ik te denken aan een veld in de gebruikerstabel met alleen de datum, dat men max 1x per dag een nieuw wachtwoord kunnen aanvragen, tenzijn nieuw wachtwoord gezet wordt dan wordt deze data weer in het verleden gezet. oid?

    Jullie ideeen.
    Iemand?
    Intrepiditydonderdag 28 januari 2010 @ 09:27
    quote:
    Op donderdag 28 januari 2010 07:01 schreef Chandler het volgende:

    [..]

    Iemand?
    Als het goed is genereer je voor het versturen van een mail iets als een activatiecode waarmee de gebruiker een nieuw wachtwoord kan instellen. Ik doe het zelf zo dat zolang dat veld gevuld is in de database er geen nieuw wachtwoord aangevraagd kan worden. Dus:
    1. Gebruiker vraagt nieuw wachtwoord aan
    2. Willekeurige activatiecode wordt gegenereerd en gemaild, hiermee kan de gebruiker een nieuw wachtwoord instellen
    3. Gebruiker negeert mailtje
    4. Gebruiker vraagt nogmaals een nieuw wachtwoord aan
    Dit werkt in dit geval niet, omdat het eerste mailtje niet gebruikt is. Heeft de gebruiker een ander emailadres, of het mailtje niet ontvangen of iets dergelijks --> contact met support opnemen. Activatiecode wordt na 1 maand ongebruikt te zijn tevens vanzelf verwijderd.
    Darkomendonderdag 28 januari 2010 @ 10:32
    quote:
    Op donderdag 28 januari 2010 09:27 schreef Intrepidity het volgende:

    [..]

    Als het goed is genereer je voor het versturen van een mail iets als een activatiecode waarmee de gebruiker een nieuw wachtwoord kan instellen. Ik doe het zelf zo dat zolang dat veld gevuld is in de database er geen nieuw wachtwoord aangevraagd kan worden. Dus:
    1. Gebruiker vraagt nieuw wachtwoord aan
    2. Willekeurige activatiecode wordt gegenereerd en gemaild, hiermee kan de gebruiker een nieuw wachtwoord instellen
    3. Gebruiker negeert mailtje
    4. Gebruiker vraagt nogmaals een nieuw wachtwoord aan
    Dit werkt in dit geval niet, omdat het eerste mailtje niet gebruikt is. Heeft de gebruiker een ander emailadres, of het mailtje niet ontvangen of iets dergelijks --> contact met support opnemen. Activatiecode wordt na 1 maand ongebruikt te zijn tevens vanzelf verwijderd.
    Zoiets, al zou ik de code binnen 24 uur laten verlopen.

    mijn probleem heb ik mogeljik opgelost met

    SELECT *
    FROM TMPCARD_Uptime
    INNER JOIN TMPCARD ON ( TMPCARD_Uptime.cardid = TMPCARD.id )
    GROUP BY TMPCARD_Uptime.serial
    HAVING count(TMPCARD_Uptime.cardid) >=2
    ORDER BY TMPCARD_Uptime.timestamp ASC
    LIMIT 0,10
    hello_moto1992donderdag 28 januari 2010 @ 21:49
    Ik gebruik PHP include om mijn HTML te includen. Maar nu staat deze in een map voor het bestand waar ik het include. Hoe verwijs ik dan toch naar die HTML? Include met URL is niet toegestaan.
    Intrepiditydonderdag 28 januari 2010 @ 21:53
    quote:
    Op donderdag 28 januari 2010 21:49 schreef hello_moto1992 het volgende:
    Ik gebruik PHP include om mijn HTML te includen. Maar nu staat deze in een map voor het bestand waar ik het include. Hoe verwijs ik dan toch naar die HTML? Include met URL is niet toegestaan.
    1
    2
    3
    4
    <?php
    // Door de 2 puntjes ga je een map in de structuur omhoog
    include("../bestand.html");
    ?>


    En ookal zou je HTTP-includes kunnen gebruiken, nooit doen, omdat:
    quote:
    If you are including a file from your own site, do not use a URL however easy or tempting that may be. If all of your PHP processes are tied up with the pages making the request, there are no processes available to serve the include. The original requests will sit there tying up all your resources and eventually time out.


    [ Bericht 15% gewijzigd door Intrepidity op 28-01-2010 22:02:45 ]
    calamaresvrijdag 29 januari 2010 @ 00:43
    quote:
    Op donderdag 28 januari 2010 07:01 schreef Chandler het volgende:

    [..]

    Iemand?
    Ik heb in veel applicaties meerdere functies zitten die een mail verzenden, waar functies als 'Wachtwoord vergeten' er één van is. Voor al die mailfuncties heb ik meestal een tabel met e-mail templates (moeten in 99% van de gevallen muteerbaar zijn), daarnaast heb ik nog een tabel waar ik bijhoud wanneer welk mailtje (a.h.v. een template ID) verzonden is. Op die manier kun je al redelijk eenvoudig een query op die tabel loslaten, om te kijken hoe vaak een zelfde mailtje al aangevraagd is. En desnoods limiteren als dat aantal te hoog is.
    Chandlervrijdag 29 januari 2010 @ 06:57
    calamares; dus je hebt een class die per verzonden email een tabel up to date houdt m.b.t. controle/inzien verzonden emails?

    verder nog gelijk een andere vraag; stel je hebt een site die je stap voor stap uitbreid en dat is tevens ook zo voor alle instellingen. Passen jullie dan steeds de tabel aan van de instellingen of zorgen jullie dat toevoegen van instellingen zonder het aanpassen van tabellen mogelijk is?

    (hopelijk duidelijk genoeg )
    Trollface.vrijdag 29 januari 2010 @ 13:12
    quote:
    Op vrijdag 29 januari 2010 06:57 schreef Chandler het volgende:
    calamares; dus je hebt een class die per verzonden email een tabel up to date houdt m.b.t. controle/inzien verzonden emails?

    verder nog gelijk een andere vraag; stel je hebt een site die je stap voor stap uitbreid en dat is tevens ook zo voor alle instellingen. Passen jullie dan steeds de tabel aan van de instellingen of zorgen jullie dat toevoegen van instellingen zonder het aanpassen van tabellen mogelijk is?

    (hopelijk duidelijk genoeg )
    Ik heb een settings tabel zo ingesteld:
    1
    2
    3
    NAME    |      VALUE
    ------------------------
    Test    |      Test2


    Dit gaan dan wel over sitewide-instellingen.
    Als er een instelling bijkomt, gewoon een INSERT INTO doen.
    hello_moto1992vrijdag 29 januari 2010 @ 15:32
    Heren/dames,

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
     
    while ($row mysql_fetch_array($result)) 
    {    
        echo 
    "<tr>";
        echo 
    "<td>".$row['title']."</td>";
        echo 
    "<td><a href=\"http://www.test.nl/coppermine/thumbnails.php?album=".$row['aid']."\">link</a>";
        echo 
    "</tr>";
    }
    ?>


    Ik heb de volgende code. Deze werkt prima, er worden twee kolommen getoond: de title en een titel met als link met de aid er in. Maar nu zou ik dus graag willen dat de titel een link wordt. Dit is volgens mij niet al te moeilijk, maar het wil mij maar niet lukken. Iemand een suggestie?

    Edit: ik heb het al
    Het moet natuurlijk zo:
    1
    2
    3
    <?php
        
    echo "<td><a href=\"http://www.test.nl/coppermine/thumbnails.php?album=".$row['aid']."\">".$row['title']."</a>";
    ?>


    [ Bericht 11% gewijzigd door hello_moto1992 op 29-01-2010 15:41:05 ]
    hello_moto1992vrijdag 29 januari 2010 @ 15:47
    Weet iemand toevallig wel hoe je met SQL het eerste resultaat 'overslaat'? Dus dat je bij de eerste 5 resultaten de nieuwste weglaat.
    SHERMANvrijdag 29 januari 2010 @ 15:48
    quote:
    Op vrijdag 29 januari 2010 15:47 schreef hello_moto1992 het volgende:
    Weet iemand toevallig wel hoe je met SQL het eerste resultaat 'overslaat'? Dus dat je bij de eerste 5 resultaten de nieuwste weglaat.
    Nieuwste of de eerste?
    Kan een wezenlijk verschil zijn namelijk.
    hello_moto1992vrijdag 29 januari 2010 @ 15:53
    Dit is de query:

    1
    2
    3
    4
    5
    6
    <?php
    SELECT 
    `aid` , `title`
    FROM `il7o_albums`
    ORDER BY `aidDESC
    LIMIT 0 
    3
    ?>


    Hij toont dus de albums met het hoogste aid (die zijn het laatst toegevoegd)
    Dus:
    album 100
    album 99
    album 98

    Album 100 wil ik er uit zeven
    Lightvrijdag 29 januari 2010 @ 15:59
    quote:
    Op vrijdag 29 januari 2010 15:47 schreef hello_moto1992 het volgende:
    Weet iemand toevallig wel hoe je met SQL het eerste resultaat 'overslaat'? Dus dat je bij de eerste 5 resultaten de nieuwste weglaat.
    quote:
    The LIMIT clause can be used to constrain the number of rows returned by the SELECT statement. LIMIT takes one or two numeric arguments, which must both be nonnegative integer constants (except when using prepared statements).

    With two arguments, the first argument specifies the offset of the first row to return, and the second specifies the maximum number of rows to return. The offset of the initial row is 0 (not 1):
    Bron: http://dev.mysql.com/doc/refman/5.0/en/select.html

    Dus met een simplele SELECT * FROM table WHERE 1 = 1 LIMIT 1,5 krijg je de resultaten 2 t/m 6.
    hello_moto1992vrijdag 29 januari 2010 @ 16:01
    Ooh gewoon de LIMIT aanpassen dus
    Thnx

    Nu heb k eigenlijk nog iets waar k mee zit

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
     
    while ($row mysql_fetch_array($result)) 
    {    
        echo 
    "<tr>";
        echo 
    "<td><a href=\"http://www.test.nl/coppermine/thumbnails.php?album=".$row['aid']."\">".$row['title']."</a>";
        echo 
    "</tr>";
    }
    ?>

    Hier komt dus een link uitrollen. Deze mag echter maar een aantal tekens hebben. Dit kan met de functie wordwrap heb k al gezien. Maar hoe pas je zulkiets hier toe?
    Chandlervrijdag 29 januari 2010 @ 16:10
    quote:
    Op vrijdag 29 januari 2010 13:12 schreef Trollface. het volgende:

    [..]

    Ik heb een settings tabel zo ingesteld:
    [ code verwijderd ]

    Dit gaan dan wel over sitewide-instellingen.
    Als er een instelling bijkomt, gewoon een INSERT INTO doen.
    Op zich een goed idee, alleen zit ik mij dan af te vragen hoe ik dit moet gaan realiseren als er ook gegevens zijn die langer dan 255 karakters bevatten, of juist alleen INT.

    Ideeen?
    Darkomenvrijdag 29 januari 2010 @ 16:40
    quote:
    Op vrijdag 29 januari 2010 16:01 schreef hello_moto1992 het volgende:
    Ooh gewoon de LIMIT aanpassen dus
    Thnx

    Nu heb k eigenlijk nog iets waar k mee zit
    [ code verwijderd ]

    Hier komt dus een link uitrollen. Deze mag echter maar een aantal tekens hebben. Dit kan met de functie wordwrap heb k al gezien. Maar hoe pas je zulkiets hier toe?
    http://php.net/manual/en/function.substr.php
    De derde comment
    hello_moto1992vrijdag 29 januari 2010 @ 16:46
    K snap er niks van Kan dat niet simpeler?
    Chandlervrijdag 29 januari 2010 @ 17:53
    quote:
    Op vrijdag 29 januari 2010 16:46 schreef hello_moto1992 het volgende:
    K snap er niks van Kan dat niet simpeler?
    Nee, wel moeilijker
    Intrepidityvrijdag 29 januari 2010 @ 19:17
    quote:
    Op vrijdag 29 januari 2010 16:46 schreef hello_moto1992 het volgende:
    K snap er niks van Kan dat niet simpeler?
    Wat is er moeilijk aan het copypasten van die functie?
    calamareszaterdag 30 januari 2010 @ 11:23
    quote:
    Op vrijdag 29 januari 2010 06:57 schreef Chandler het volgende:
    calamares; dus je hebt een class die per verzonden email een tabel up to date houdt m.b.t. controle/inzien verzonden emails?

    verder nog gelijk een andere vraag; stel je hebt een site die je stap voor stap uitbreid en dat is tevens ook zo voor alle instellingen. Passen jullie dan steeds de tabel aan van de instellingen of zorgen jullie dat toevoegen van instellingen zonder het aanpassen van tabellen mogelijk is?

    (hopelijk duidelijk genoeg )
    Als er functionaliteit bij komt in de vorm van een nieuw soort e-mail, dan is dat in mijn geval niet meer dan een record in de email-template tabel. De tabel die bijhoudt wanneer welk e-mailtje verzonden wordt, werkt ook met die template ID's van die tabel.
    calamareszaterdag 30 januari 2010 @ 11:27
    quote:
    Op vrijdag 29 januari 2010 16:46 schreef hello_moto1992 het volgende:
    K snap er niks van Kan dat niet simpeler?
    Wat is er moeilijk aan de substring (substr() ) functie? De eerste parameter is hetgeen dat je wilt in- of afkorten, de tweede is vanaf welke positie dit moet gebeuren, de derde is hoeveel karakters je vanaf die opgegeven positie wilt weergeven.

    Het enige 'aparte' is misschien dat je ook de mogelijkheid hebt om alleen een tweede parameter op te geven, die negatief is. In dat geval wordt hetgeen van hetgeen dat in je eerste parameter staat, de laatste x-aantal karakters weergegeven.
    hello_moto1992zaterdag 30 januari 2010 @ 12:36
    Sorry, het lukt me nog niet echt.
    Dit is nu de 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
    <?php include"include/connect.php"; ?>
    <?php
    $query = "
    SELECT `aid` , `title`
    FROM `il7o_albums`
    ORDER BY `aid` DESC
    LIMIT 1 , 3
    ";
    $result = mysql_query($query)or die (mysql_error());
    ?>
    <?php
    function _substr($str, $length, $minword = 3)
    {
        $sub = $row['title'];
        $len = ??????;;
        
        foreach (explode(' ', $str) as $word)
        {
            $part = (($sub != '') ? ' ' : '') . $word;
            $sub .= $part;
            $len += strlen($part);
            
            if (strlen($word) > $minword && strlen($sub) >= $length)
            {
                break;
            }
        }
        return $sub . (($len < strlen($str)) ? '...' : '');
    }
    ?>
    <table border="0" cellpadding="0" cellspacing="0" style="color: white; font-size: 0.8em;">
    <? while ($row = mysql_fetch_array($result)) 
    {   
       echo "<tr>";
       echo "<td><a href=\"http://www.test.nl/coppermine/thumbnails.php?album=".$row['aid']."\">".$row['title']."</a>";
       echo "</tr>";
    }
    ?>
    </table>

    Ik snap niet precies hoe ik die parameters invul.
    Darkomenzondag 31 januari 2010 @ 12:19
    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
    <?php include"include/connect.php"; ?>
    <?php
    $query = "
    SELECT `aid` , `title`
    FROM `il7o_albums`
    ORDER BY `aid` DESC
    LIMIT 1 , 3
    ";
    $result = mysql_query($query)or die (mysql_error());
    ?>
    <?php
    function _substr($str, $length, $minword = 3)
    {
        $sub = $row['title'];
        $len = ??????;;
        
        foreach (explode(' ', $str) as $word)
        {
            $part = (($sub != '') ? ' ' : '') . $word;
            $sub .= $part;
            $len += strlen($part);
            
            if (strlen($word) > $minword && strlen($sub) >= $length)
            {
                break;
            }
        }
        return $sub . (($len < strlen($str)) ? '...' : '');
    }
    ?>
    <table border="0" cellpadding="0" cellspacing="0" style="color: white; font-size: 0.8em;">
    <? while ($row = mysql_fetch_array($result)) 
    {   
       echo "<tr>";
       echo "<td><a href=\"http://www.test.nl/coppermine/thumbnails.php?album=".$row['aid']."\">"._substr($row['title'], 10, 5)."</a>";
       echo "</tr>";
    }
    ?>
    </table>


    Zo dus, 10 en 5 kan je zelf veranderen in wat je wilt, probeer maar eens uit.
    urselmaandag 1 februari 2010 @ 19:35
    Hmmm.. Dacht slim te zijn door DEFINES in mijn tekst te plaatsen en alvorens de tekst te displayen deze eerst door een eval heen te gooien.

    Blijkbaar kan eval alleen variabelen veranderen en geen defines.
    Iemand andere suggesties?
    Lightdinsdag 2 februari 2010 @ 09:55
    quote:
    Op maandag 1 februari 2010 19:35 schreef ursel het volgende:
    Hmmm.. Dacht slim te zijn door DEFINES in mijn tekst te plaatsen en alvorens de tekst te displayen deze eerst door een eval heen te gooien.

    Blijkbaar kan eval alleen variabelen veranderen en geen defines.
    Iemand andere suggesties?
    Je zou nog kunnen proberen je defines tussen {} te zetten.
    Intrepiditydinsdag 2 februari 2010 @ 10:20
    quote:
    Op maandag 1 februari 2010 19:35 schreef ursel het volgende:
    Hmmm.. Dacht slim te zijn door DEFINES in mijn tekst te plaatsen en alvorens de tekst te displayen deze eerst door een eval heen te gooien.

    Blijkbaar kan eval alleen variabelen veranderen en geen defines.
    Iemand andere suggesties?
    Volgensmij snap ik je probleem niet echt. Je probeert doormiddel van eval een constante aan te passen? Waarom een constante gebruiken als deze niet vaststaat? Voor dat doel kun je net zogoed een globale variabele, of met OO smaakje een statische property gebruiken.
    urseldinsdag 2 februari 2010 @ 10:40
    quote:
    Op dinsdag 2 februari 2010 10:20 schreef Intrepidity het volgende:

    [..]

    Volgensmij snap ik je probleem niet echt. Je probeert doormiddel van eval een constante aan te passen? Waarom een constante gebruiken als deze niet vaststaat? Voor dat doel kun je net zogoed een globale variabele, of met OO smaakje een statische property gebruiken.
    Onlangs zijn we gestart om onze huidige omgeving ook in andere smaken te presenteren. Hangen allen onder andere URL, maar maken verder gebruik van exact dezelfde omgeving en code.
    Voor de tekst pagina's moeten een aantal benamingen nu dus gebruik gaan maken van die andere namen.

    Doordat de meeste namen al in defines bij ons zitten hoopte ik op deze manier het op een simpele manier af te kunnen vangen, immers omgeving afhankelijk wordt er al gebruik gemaakt van dezelfde defines.
    urseldinsdag 2 februari 2010 @ 12:09
    quote:
    Op dinsdag 2 februari 2010 09:55 schreef Light het volgende:

    [..]

    Je zou nog kunnen proberen je defines tussen {} te zetten.
    Kan je deze iets meer uit specificeren?

    Heb bijv. de volgende define:

    1
    2
    3
    <?php
    define
    ('NAME_FULL''Bedrijf B.V.');
    ?>


    En in de tekst moet ik dan {NAME_FULL} plaatsen?
    Dat werkt in ieder geval niet kan ik je vertellen. :')
    Trollface.dinsdag 2 februari 2010 @ 12:11
    quote:
    Op dinsdag 2 februari 2010 12:09 schreef ursel het volgende:

    [..]

    Kan je deze iets meer uit specificeren?

    Heb bijv. de volgende define:
    [ code verwijderd ]

    En in de tekst moet ik dan {NAME_FULL} plaatsen?
    Dat werkt in ieder geval niet kan ik je vertellen. :')
    1
    2
    3
    <?php
    echo "Bedrijf: " NAME_FULL;
    ?>
    urseldinsdag 2 februari 2010 @ 12:20
    quote:
    Op dinsdag 2 februari 2010 12:11 schreef Trollface. het volgende:

    [..]
    [ code verwijderd ]
    Ja, dat zou wel makkelijk zijn als de teksten niet uit een database kwamen.
    Dacht dat ik dat al gemeld had, maar blijkbaar niet.
    Trollface.dinsdag 2 februari 2010 @ 12:22
    quote:
    Op dinsdag 2 februari 2010 12:20 schreef ursel het volgende:

    [..]

    Ja, dat zou wel makkelijk zijn als de teksten niet uit een database kwamen.
    Dacht dat ik dat al gemeld had, maar blijkbaar niet.
    Als je de tekst direct uit een database haalt, gaat {} sowieso niet werken hé.

    Je kunt proberen <<BEDRIJF_NAAM>> o.i.d. in de tekst te pleuren en dan een str_replace() te doen:
    1
    2
    3
    <?php
    $sTekst 
    str_replace("<<BEDRIJF_NAAM>>"FULL_NAME$sTekst);
    ?>
    urseldinsdag 2 februari 2010 @ 12:32
    quote:
    Op dinsdag 2 februari 2010 12:22 schreef Trollface. het volgende:

    [..]

    Als je de tekst direct uit een database haalt, gaat {} sowieso niet werken hé.

    Je kunt proberen <<BEDRIJF_NAAM>> o.i.d. in de tekst te pleuren en dan een str_replace() te doen:
    [ code verwijderd ]
    Mja, dat gebruiken we nu idd, echter willen we het meer onafhankelijk draaien zodat we niet voor elke define welke we gebruiken een str_replace moeten plaatsen.
    Daarnaast bestaat de module momenteel uit 3 paragrafen welke ieder een eigen veld in de tabel hebben.
    Sitethiefdinsdag 2 februari 2010 @ 12:49
    Weet iemand een goede website die foreign keys in innodb uitlegt?
    Intrepiditydinsdag 2 februari 2010 @ 12:52
    deze site schijnt er behoorlijk wat informatie over te hebben
    Sitethiefdinsdag 2 februari 2010 @ 13:00
    quote:
    Op dinsdag 2 februari 2010 12:52 schreef Intrepidity het volgende:
    deze site schijnt er behoorlijk wat informatie over te hebben
    Die hadden we nog niet geprobeerd..... . (Ik heb niet eesn geklikt )
    Het is meer dat nergens goed uitgelegd word wanneer je ze wel of niet moet inzetten.
    genaktvrijdag 5 februari 2010 @ 09:54
    Ik heb een data base aangemaakt in php myadmin en ben een inlogpagina aan het maken

    in mijn database heb ik de tabel

    personeelsnummer als sleutelveld en autonumering
    pnaam
    pwachtwoord
    quote:
    <?php.

    session_start();

    $db = mysql_connect("localhost", "root", "root")
    or die("kan geen verbinding maken: ".mysql_error());
    mysql_select_db("medinfo",$db);

    if (!EMPTY($_POST))
    {

    $nr = $_POST['nr'];
    $ww = $_post['ww'];


    $sql = "SELECT *
    From personeel
    Where pnaam= '$nr'
    AND pwachtwoord = '$ww'";

    $resultaat = mysql_query($sql);

    if (mysql_num_rows($resultaat)>0)
    {
    while($rij = mysql_fetch_array($resultaat))
    {
    $_SESSION["pnaam"]=$rij["pnaam"];
    $_SESSION["pwachtwoord"]=$rij["pwachtwoord"];


    }
    header("location: loginstart.php");
    exit();

    }
    else
    {

    echo "<BR>";
    echo "<HR>";
    echo "Geen geldige inlog gegevens";
    }

    mysql_close($db);
    }

    else
    {
    ?>

    <html>
    <head>
    <title>Medinfo</title>
    </head>
    <form method="post" action="<?php echo $_SERVER["PHP_SELF"]?>">
    <B><h1>Medinfo</h1><B><br>
    na correct inloggen kun u uw gegevens opvragen<h3>
    <br><br>
    </center>
    <pre>
    Voer uw klantennummer in: <input type="text" name="nr" size="20" maxlenght="20">
    <br><br>
    Voer wachtwoord in: <input type="password" name="ww" size="20" maxlenght="20">
    <br><br>
    <input type = "submit" value = "inloggen">
    <input type = "reset" value = "wissen">
    </pre>
    </form>
    </body>
    </html>

    <?php
    }

    ?>
    alleen als ik probeer in te loggen krijg ik te zien gebruikersnaam niet geldig
    heb wel naam en wachtwoord ingevoerd in de database dus dat kan het niet zijn
    GlowMousevrijdag 5 februari 2010 @ 10:03
    Die melding kan niet uit je script komen.
    genaktvrijdag 5 februari 2010 @ 10:08
    quote:
    Op vrijdag 5 februari 2010 10:03 schreef GlowMouse het volgende:
    Die melding kan niet uit je script komen.
    ik bedoelde

    Geen geldige inlog gegevens

    echo "Geen geldige inlog gegevens";
    Civilianvrijdag 5 februari 2010 @ 10:14
    Dan nog..

    Een user zou uniek moeten zijn, anders doe je toch al iets fout.
    Dus waarom de while, en waarom een exit() in je while.. Dan gaat toch een beetje de hele functie verloren?
    genaktvrijdag 5 februari 2010 @ 10:21
    quote:
    Op vrijdag 5 februari 2010 10:14 schreef Civilian het volgende:
    Dan nog..

    Een user zou uniek moeten zijn, anders doe je toch al iets fout.
    Dus waarom de while, en waarom een exit() in je while.. Dan gaat toch een beetje de hele functie verloren?
    dat een user uniek moet zijn weet ik
    mjah daar gaat het nu niet om en het is niet de reden waarom hij het niet doet
    Civilianvrijdag 5 februari 2010 @ 10:32
    quote:
    Op vrijdag 5 februari 2010 10:21 schreef genakt het volgende:

    [..]

    dat een user uniek moet zijn weet ik
    mjah daar gaat het nu niet om en het is niet de reden waarom hij het niet doet
    Beter gelijk goed beginnen dan het na die tijd aan te moeten passen en het risico te lopen dat het weer niet werkt
    Maargoed, hoe heb je de passwords opgeslagen? Gecodeerd (md5 oid) of als normale string? Als je 't gecodeerd op hebt geslagen moet je er ook rekening mee houden dat je ze op die manier gaat vergelijken.
    genaktvrijdag 5 februari 2010 @ 11:11
    quote:
    Op vrijdag 5 februari 2010 10:32 schreef Civilian het volgende:

    [..]

    Beter gelijk goed beginnen dan het na die tijd aan te moeten passen en het risico te lopen dat het weer niet werkt
    Maargoed, hoe heb je de passwords opgeslagen? Gecodeerd (md5 oid) of als normale string? Als je 't gecodeerd op hebt geslagen moet je er ook rekening mee houden dat je ze op die manier gaat vergelijken.
    $nr = $_POST['nr'];
    $ww = $_post['ww'];

    2e post zonder hoofdletters
    hij doet het nu
    Civilianvrijdag 5 februari 2010 @ 11:16
    nvm
    genaktvrijdag 5 februari 2010 @ 11:41
    iedegeval bedankt voor hulp

    heb wel nu wel gezegd dat je met inloggen het personeelsnummer moet invoeren zodat elke inlognaam naam uniek is
    Crutchvrijdag 5 februari 2010 @ 12:26
    Waarom codeer je het wachtwoord niet?
    genaktvrijdag 5 februari 2010 @ 13:46
    quote:
    Op vrijdag 5 februari 2010 12:26 schreef Crutch het volgende:
    Waarom codeer je het wachtwoord niet?
    het is voor me examen dan hoef je dat helemaal niet te doen joh
    gewoon simpel inlog systeem is voldoende

    heb kleine beveiliging in loginstart.php
    is helemaal niet bedoeld voor online applicatie of iets dergelijks
    gewoon simpel houden
    Trollface.vrijdag 5 februari 2010 @ 14:00
    JUIST voor je examen zou ik je wachtwoord laten hashen.
    genaktvrijdag 5 februari 2010 @ 14:02
    quote:
    Op vrijdag 5 februari 2010 14:00 schreef Trollface. het volgende:
    JUIST voor je examen zou ik je wachtwoord laten hashen.
    als het niet hoeft waarom zou ik het dan doen
    Trollface.vrijdag 5 februari 2010 @ 14:02
    quote:
    Op vrijdag 5 februari 2010 14:02 schreef genakt het volgende:

    [..]

    als het niet hoeft waarom zou ik het dan doen
    Wat een kutexamen nofi.
    genaktvrijdag 5 februari 2010 @ 14:04
    quote:
    Op vrijdag 5 februari 2010 14:02 schreef Trollface. het volgende:

    [..]

    Wat een kutexamen .
    nog leuker degene die het nakijken hebben er van de 3 maar 1 echt verstand van
    zadkine examencentrum he

    heb me examen trouwens over 4 weken dus ben aan het oefenen
    zodat ik al me scripts zo klaar heb
    DaFanmaandag 8 februari 2010 @ 16:45
    Ik heb een lastige (vind ik) SELECT query nodig in SQL.
    Er is een tabel waar een persoon meerdere malen (ID, fullname) in voor kan komen.

    Eén van de kolommen is soms NULL, soms niet.
    Als deze ooit bij een ID not null is, dan wil ik nooit meer die ID terugzien.

    Hoe kan ik dat maken? (Duidelijk genoeg?)
    DaFanmaandag 8 februari 2010 @ 16:47
    quote:
    Op maandag 8 februari 2010 16:45 schreef DaFan het volgende:
    Ik heb een lastige (vind ik) SELECT query nodig in SQL.
    Er is een tabel waar een persoon meerdere malen (ID, fullname) in voor kan komen.

    Eén van de kolommen is soms NULL, soms niet.
    Als deze ooit bij een ID not null is, dan wil ik nooit meer die ID terugzien.

    Hoe kan ik dat maken? (Duidelijk genoeg?)
    Via een omweg kan het ook:
    Als bij een ID de kolom 'Type' nooit '73' voorkomt, dan wil ik die ID zien.
    Dat lijkt mij makkelijker, maar hoe
    GlowMousemaandag 8 februari 2010 @ 16:49
    WHERE en een subquery.
    Chandlermaandag 8 februari 2010 @ 19:37
    Ik heb ook weer een leuke m.b.t. mijn gebruikte rechtensysteem. Hieronder schets ik eerst een voorbeeld van de tabellen die ik gebruik voor mijn rechtensysteem (oa gebruiker specifieke rechten, groepen met rechten die weer aan gebruikers gekoppeld woden.)

    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
    CREATE TABLE IF NOT EXISTS `users` (
      `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
      `createdate` datetime NOT NULL,
      `editdate` datetime NOT NULL,
      `username` varchar(20) NOT NULL,
      `email` varchar(128) NOT NULL,
      `password` char(41) NOT NULL,
      `validation` char(12) NOT NULL,
      `banned` tinyint(4) NOT NULL DEFAULT '0',
      PRIMARY KEY (`id`),
      KEY `gebruikersnaam` (`username`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=latin1;


    CREATE TABLE IF NOT EXISTS `users_groups` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `title` varchar(50) NOT NULL,
      `lastupdate` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1;

    CREATE TABLE IF NOT EXISTS `users_groups_link` (
      `user_id` int(10) unsigned NOT NULL,
      `group_id` int(10) unsigned NOT NULL,
      `timestamp` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP,
      KEY `gebruiker_id` (`user_id`,`group_id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

    CREATE TABLE IF NOT EXISTS `users_groups_rights_link` (
      `group_id` int(10) unsigned NOT NULL,
      `right_id` int(10) unsigned NOT NULL,
      KEY `groep_id` (`group_id`,`right_id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

    CREATE TABLE IF NOT EXISTS `users_rights` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `title` varchar(50) NOT NULL,
      `value` varchar(50) NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1;

    CREATE TABLE IF NOT EXISTS `users_rights_link` (
      `user_id` int(10) unsigned NOT NULL,
      `right_id` int(10) unsigned NOT NULL,
      `lastupdate` datetime NOT NULL,
      KEY `gebruiker_id` (`user_id`,`right_id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;


    Nu wil ik dit systeem eingelijk ook voor mijn forum gaan gebruiken, echter zit in dit forum een ander rechten systeem gekoppeld (5 specieke rechten per forum) en deze wil ik er dus nu afhalen en het huidige rechten systeem voor gaan benutten. Maar nu het volgende, moet ik voor ieder forum apparte rechten groepen aanmaken en deze vullen met 'rechten' of zou ik dit beter op een andere manier kunnen koppelen, aangezien er dan wel heel rechten (per forum, per groep(en) en gebruikers) bij komen.

    forum tabel
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    CREATE TABLE `forum_fora` (
      `right_reply` int(11) unsigned NOT NULL,
      `right_read` int(11) unsigned NOT NULL,
      `right_start` int(11) unsigned NOT NULL,
      `right_banned` int(11) unsigned NOT NULL,
      `right_admin` int(11) unsigned NOT NULL,
      `id` tinyint(4) unsigned NOT NULL AUTO_INCREMENT,
      `index_id` tinyint(4) unsigned NOT NULL DEFAULT '0',
      `name` varchar(75) COLLATE latin1_general_ci NOT NULL DEFAULT '',
      `subname` char(3) COLLATE latin1_general_ci NOT NULL DEFAULT '',
      `subject` text COLLATE latin1_general_ci NOT NULL,
      `lastpost` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
      `topics` int(4) unsigned NOT NULL DEFAULT '0',
      `posts` int(4) unsigned NOT NULL DEFAULT '0',
      `fsort` tinyint(4) unsigned NOT NULL DEFAULT '0',
      PRIMARY KEY (`id`),
      KEY `index_id` (`index_id`),
      KEY `name` (`name`),
      KEY `fsort` (`fsort`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;


    in dit geval gebruik ik per forum de volgende code opzet

    1
    2
    3
    4
    5
      `right_reply` = 0 of ID+001
      `right_read` = 0 of ID+002
      `right_start` = 0 of ID+003
      `right_banned`  = 0 of ID+004
      `right_admin`  = 0 of ID+005


    deze rechten (normaal op 0 dus niet vereist) worden in een apparte tabel geschreven die weer uitgelezen worden op het moment dat de gebruiker het forum bezoekt.

    Dus wat zouden jullie doen?
    DaFandinsdag 9 februari 2010 @ 14:18
    Ik heb wat hulp nodig met code.
    Ik heb de volgende SELECT:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    SELECT h.res_id,comp_code,
    SUM(amount_costs) as TotaalPens
    FROM hrcomp_trans

    inner join humres h with(nolock) on h.res_id=hrcomp_trans.res_id

    WHERE comp_code = 'PENSWG' and h.res_id=144
    GROUP BY h.res_id,
    comp_code

    UNION

    SELECT h.res_id,comp_code,
    SUM(entry_amount) as TotaalPens
    FROM hrcomp_trans

    inner join humres h with(nolock) on h.res_id=hrcomp_trans.res_id

    WHERE comp_code = 'SALARIS' and h.res_id=144
    GROUP BY h.res_id,
    comp_code


    Dit is het resultaat:
    1
    2
    3
    res_id           comp_code   TotaalPens
    144   PENSWG     25,14
    144   SALARIS    2000

    Hoe kan ik zorgen dat er maar 1 rij is met 4 kolommen, ééntje voor PENSWG en dan SUM(Amount_costs) en ééntje voor SALARIS en dan SUM(entry_amount)?

    Bedankt _O_
    DaFandinsdag 9 februari 2010 @ 14:38
    Nvm;
    1
    2
    (SELECT SUM(entry_amount) FROM hrcomp_trans where h.res_id=hrcomp_trans.res_id and comp_code='SALARIS') AS TotaalSalaris,
    (SELECT SUM(amount_costs) FROM hrcomp_trans where h.res_id=hrcomp_trans.res_id and comp_code='PENSWG') AS TotaalPensioen

    Ik wist niet dat je met Sub-SELECTS nieuwe kolommen kon maken :@
    Weer wat geleerd.
    Intrepiditydinsdag 9 februari 2010 @ 14:49
    quote:
    Op dinsdag 9 februari 2010 14:38 schreef DaFan het volgende:
    Nvm;
    [ code verwijderd ]

    Ik wist niet dat je met Sub-SELECTS nieuwe kolommen kon maken
    Weer wat geleerd.
    Je kunt er geen nieuwe kolommen mee maken, alleen bestaande kolommen transformeren tot nieuwe gegevens. Die kolommen bestaan uiteraard niet meer na het uitvoeren van de query.
    DaFandinsdag 9 februari 2010 @ 15:03
    Nouja ik zie het als een UNION in de richting die ik wou
    boem-dikkiewoensdag 10 februari 2010 @ 02:17
    Opgelost.

    [ Bericht 82% gewijzigd door boem-dikkie op 10-02-2010 02:28:33 ]
    wobbelwoensdag 10 februari 2010 @ 10:36
    Ik heb een tabel met taken (TAAK), een tabel met statussen voor die taken (TAAK_STATUS) en een tabel met prioriteiten voor een taak (TAAK_PRIORITEIT).

    Hoe zorg ik ervoor dat ik per medewerker kan bekijken hoeveel taken hij nog heeft, gegroepeerd per status?

    1
    2
    3
    4
    5
    6
    7
    8
    SELECT PrioriteitId, COUNT(*) as 'aantal' 
    FROM taak 
    INNER JOIN taak_status 
    ON (taak.StatusId = taak_status.IdStatus ) 
    INNER JOIN taak_prioriteit 
    ON ( taak.PrioriteitId = taak_prioriteit.IdPrioriteit )
    WHERE MedewerkerId = '8' 
    GROUP BY PrioriteitId


    Dit zou terug moeten geven dat ik nog 3 taken heb met PrioriteitId = 1 heb, 2 taken met PrioriteitId = 2 en nog 12 taken met PrioriteitId = '3'.

    Maar dit werkt niet zeg maar... :P
    wobbelwoensdag 10 februari 2010 @ 10:47
    Ah dat script werkt wel....
    urselwoensdag 10 februari 2010 @ 10:51
    quote:
    Op woensdag 10 februari 2010 10:36 schreef wobbel het volgende:
    Ik heb een tabel met taken (TAAK), een tabel met statussen voor die taken (TAAK_STATUS) en een tabel met prioriteiten voor een taak (TAAK_PRIORITEIT).

    Hoe zorg ik ervoor dat ik per medewerker kan bekijken hoeveel taken hij nog heeft, gegroepeerd per status?
    [ code verwijderd ]

    Dit zou terug moeten geven dat ik nog 3 taken heb met PrioriteitId = 1 heb, 2 taken met PrioriteitId = 2 en nog 12 taken met PrioriteitId = '3'.

    Maar dit werkt niet zeg maar...
    Wat doet die dan wel zeg maar...
    Overigens doe je zover ik snel zag niets met de status en is het dus niet zinvol die mee te querien.
    wobbelwoensdag 10 februari 2010 @ 11:20
    quote:
    Op woensdag 10 februari 2010 10:51 schreef ursel het volgende:

    [..]

    Wat doet die dan wel zeg maar...
    Overigens doe je zover ik snel zag niets met de status en is het dus niet zinvol die mee te querien.
    Omdat ik straks ook nog de status moet uitlezen
    Maar het werkt al
    hello_moto1992woensdag 10 februari 2010 @ 18:37
    Hallo,

    Met behulp van s3slider probeer ik gegevens uit de database op te halen.

    HTML voor de slider:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
       
    <div id="slider">
            <
    ul id="sliderContent">
                <
    li class="sliderImage">
                    <
    img src="http://imgur.com/jw1L5.png" alt="4" />
                    <
    span class="bottom"><strong>Title text 2</strong></span>
                </
    li>
                <
    li class="sliderImage">
                    <
    img src="images/410/5.jpg" alt="5" />
                    <
    span class="top"><strong>Title text 2</strong></span>
                </
    li>
                <
    div class="clear sliderImage"></div>
            </
    ul>
        </
    div
    ?>


    Nu haal ik op dit moment zo gegevens uit de database, zodat er rijen gevormd worden.

    1
    2
    3
    4
    5
    6
    <?php
     
    while ($row mysql_fetch_array($result)) 
    {    
        echo 
    "<td><a title=\"".$row['title']."\"href=\"http://www.test.nl/coppermine/thumbnails.php?album=".$row['aid']."\">"._substr($row['title'], 250)."</a>";
    }
    ?>


    Hoe krijg ik dan afzonderlijke gevens, zoals bijvoorbeeld bij de titel, de titels tussen de span? Er staan nl. ook allemaal dingen zoals IMG enzo tussen

    bvd
    HotSpotShieldwoensdag 10 februari 2010 @ 22:57
    Ik ben vandaag begonnen met het Zendframework icm met een paar goede tutorials.
    ben nu een tijdje onderweg maar ik zit nu echt vast.

    In de tutorial werd namelijk gezegd dat alle forms in het mapje "forms" geplaatst dienen te worden, echter had ik deze map niet standaard dus deze heb ik handmatig aangemaakt. Echter pakt hij nu niet de form-classes uit deze map. Ben ik nu gewoon een instelling vergeten aan te vinken waardoor deze automatisch gevonden worden, of is het een fout in mijn code?

    AuthenticationController Class

    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
    <?php
    class AuthenticationController extends Zend_Controller_Action
    {

        public function init()
        {
            /* Initialize action controller here */
        }

        public function indexAction()
        {
            
        }

        public function loginAction()
        {
           
           $form = new Form_LoginForm();
           $this->view->form = $form;
          $authAdapter = $this->getAuthAdapter();
          
          $username = 'Lala';
          $password = '912ec803b2ce49e4a541068d495ab570';
            
          $authAdapter->setIdentity($username)
                   ->setCredential($password);
                   
          $auth = Zend_Auth::getInstance();
          $result = $auth->authenticate($authAdapter);

          if($result -> isValid()){
             $identity = $authAdapter->getResultRowObject();
             
             $authStorage = $auth->getStorage();
             $authStorage->write($identity);
             
             $this->_redirect('index/index');
          }else{
              echo 'Invalid';         
          }
          
          return $result;
        }

        public function logoutAction()
        {
            // action body
        }
        
        private function getAuthAdapter(){
       
           $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
          $authAdapter->setTableName('users')
                   ->setIdentityColumn('username')
                   ->setCredentialColumn('password');
                
          return $authAdapter;
        }


    }


    Form_LoginForm <- deze word dus niet gevonden/correct ingeladen.

    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 
    class Form_LoginForm extends zend_Form 
    {
       public function __construct($option = null){
          parent::__construct($option);
          
          $this->setName('login');
          
          $username = new Zend_Form_Element_Text('username');
          $username->setLabel('User Name')
                 ->setRequired();
          $password = new Zend_Form_Element_Password('password');
          $password->setLabel('Pass')
                 ->setRequired();
          
          $login = new Zend_Form_Element_Submit('login');
          $login->setLabel('Login!');
          
          $this->addElements(array($username,$password,$login));
          $this->setMethod('post');
          $this->setAction('/authentication/login');
          
       }
    }

    ?>
    Lightwoensdag 10 februari 2010 @ 23:05
    quote:
    Op woensdag 10 februari 2010 22:57 schreef HotSpotShield het volgende:
    Ik ben vandaag begonnen met het Zendframework icm met een paar goede tutorials.
    ben nu een tijdje onderweg maar ik zit nu echt vast.

    In de tutorial werd namelijk gezegd dat alle forms in het mapje "forms" geplaatst dienen te worden, echter had ik deze map niet standaard dus deze heb ik handmatig aangemaakt. Echter pakt hij nu niet de form-classes uit deze map. Ben ik nu gewoon een instelling vergeten aan te vinken waardoor deze automatisch gevonden worden, of is het een fout in mijn code?
    Heb je die map "forms" wel in de map "application" gezet? Daar staat'ie in ieder geval bij een ZF-project waar ik mee bezig ben.
    HotSpotShieldwoensdag 10 februari 2010 @ 23:16
    De map forms heb ik wel gewoon onder "Application" staan.

    Maar bij jou is die map dus wel automatisch aangemaakt?
    Lightwoensdag 10 februari 2010 @ 23:20
    quote:
    Op woensdag 10 februari 2010 23:16 schreef HotSpotShield het volgende:
    De map forms heb ik wel gewoon onder "Application" staan.

    Maar bij jou is die map dus wel automatisch aangemaakt?
    Geen idee. Ik heb een bestaand project op m'n bord gekregen en maar daar nu de fouten uit gaan halen. De formulieren werken wel goed, dus dat heb ik verder niet uitgezocht.
    HotSpotShieldwoensdag 10 februari 2010 @ 23:22
    Dan moet ik even verder zoeken ja.
    Er is gelukkig meer dan genoeg documentatie over het zendframework..
    urseldonderdag 11 februari 2010 @ 09:47
    Toch nog even mijn probleem met m'n define kicken. :P

    Mijn define is bijv. zoals onderstaand:

    1
    2
    3
    <?php
    define
    ('NAME_FULL''Bedrijf B.V.');
    ?>


    Mijn defines worden afhankelijk van de omgeving ingeladen en staat er de naam van het bedrijf in de NAME_FULL
    In de database heb ik een aantal velden met verschillende blokken tekst. Ik zou graag in deze tekst een define willen gebruiken. Om er onderscheid in te maken heb ik er al {} omheen gezet. Met de preg_split filter ik de defines er nu uit.

    Echter krijg ik de defines niet vertaal en blijft er NAME_FULL staan, ook al gooi ik deze door een eval heen. :')

    Enig idee hoe ik dit wel kan bewerkstelliggen zonder de str_replace. Want bij deze moet ik voor elke define welke ik wil gebruiken nogmaals apart in een functie definieren. Liefst wil ik dus gewoon de defines kunnen gebruiken welke ik al gedefinieerd heb.
    urselvrijdag 12 februari 2010 @ 11:06
    Niemand?
    Chandlervrijdag 12 februari 2010 @ 12:10
    Laat je code eens zien? misschien geeft dat meer inzicht?
    urselvrijdag 12 februari 2010 @ 12:19
    quote:
    Op vrijdag 12 februari 2010 12:10 schreef Chandler het volgende:
    Laat je code eens zien? misschien geeft dat meer inzicht?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    // reguliere expressie
    $reg '/({|})/';
                            
    // voorbeeld string om te testen
    $a 'testing {ABF_NAME_FULL} bladiebla en natuurlijk ook {ABF_FULL} niet te vergeten';
                            
    // Splitsen op de expressie, resultaat komt in een array terug
    $test preg_split($reg$a, -1);
    $iCountTest count($test);
    for(
    $i 0$i $iCountTest$i++)
    {
        
    // resultaat zit altijd op de oneven nummers.
        
    if( $i )
        {
            eval(
    "\$test[\$i] = \"$test[$i]\";");
        }
    }
    ?>
    Trollface.vrijdag 12 februari 2010 @ 12:23
    Waarom preg_split als je ook str_replace kunt doen?
    urselvrijdag 12 februari 2010 @ 12:24
    quote:
    Op vrijdag 12 februari 2010 12:23 schreef Trollface. het volgende:
    Waarom preg_split als je ook str_replace kunt doen?
    quote:
    Op donderdag 11 februari 2010 09:47 schreef ursel het volgende:
    Toch nog even mijn probleem met m'n define kicken.

    Mijn define is bijv. zoals onderstaand:
    [ code verwijderd ]

    Mijn defines worden afhankelijk van de omgeving ingeladen en staat er de naam van het bedrijf in de NAME_FULL
    In de database heb ik een aantal velden met verschillende blokken tekst. Ik zou graag in deze tekst een define willen gebruiken. Om er onderscheid in te maken heb ik er al {} omheen gezet. Met de preg_split filter ik de defines er nu uit.

    Echter krijg ik de defines niet vertaal en blijft er NAME_FULL staan, ook al gooi ik deze door een eval heen.

    Enig idee hoe ik dit wel kan bewerkstelliggen zonder de str_replace. Want bij deze moet ik voor elke define welke ik wil gebruiken nogmaals apart in een functie definieren. Liefst wil ik dus gewoon de defines kunnen gebruiken welke ik al gedefinieerd heb.
    Omdat ik dat al uitgelegd heb.
    Trollface.vrijdag 12 februari 2010 @ 12:34
    quote:
    Op vrijdag 12 februari 2010 12:24 schreef ursel het volgende:

    [..]


    [..]

    Omdat ik dat al uitgelegd heb.
    1
    2
    3
    <?php
    $inhoud 
    str_replace(array_keys(get_defined_constants()), array_values(get_defined_constants()), $inhoud);
    ?>

    Dit lost dat op.
    urselvrijdag 12 februari 2010 @ 13:55
    quote:
    Op vrijdag 12 februari 2010 12:34 schreef Trollface. het volgende:

    [..]
    [ code verwijderd ]

    Dit lost dat op.
    Kijk, daar was ik dus naar op zoek..
    Super bedankt.
    PiRANiAzaterdag 13 februari 2010 @ 14:02
    Misschien hebben jullie devvers hier ook wel ideeën over:
    Hoe taalkeuze implementeren in website?
    DaFanmaandag 15 februari 2010 @ 11:41
    Hoe krijg ik een FLOAT, met als output (bv) 20111.18 naar een fatsoenlijke weergave (voor geld):
    20.111,18 ?

    edit;
    CONVERT(varchar,CAST(FreeNumberField_01 as Money),1)
    Zoiets denk ik, hij komt nu met xx,xxx.xx
    Denk dat het bij het aanroepen wel omgezet wordt als de taal anders staat, even proberen dus

    [ Bericht 58% gewijzigd door DaFan op 15-02-2010 11:47:24 ]
    Intrepiditymaandag 15 februari 2010 @ 11:45
    quote:
    Op maandag 15 februari 2010 11:41 schreef DaFan het volgende:
    Hoe krijg ik een FLOAT, met als output (bv) 20111.18 naar een fatsoenlijke weergave (voor geld):
    20.111,18 ?
    Met number_format($bedrag, 2, ",", ".");
    Waarbij parameter 2 het aantal decimalen is, parameter 3 het scheidingsteken voor decimalen, en parameter 4 het scheidingsteken voor duizendtallen.
    DaFanmaandag 15 februari 2010 @ 11:48
    quote:
    Op maandag 15 februari 2010 11:45 schreef Intrepidity het volgende:

    [..]

    Met number_format($bedrag, 2, ",", ".");
    Waarbij parameter 2 het aantal decimalen is, parameter 3 het scheidingsteken voor decimalen, en parameter 4 het scheidingsteken voor duizendtallen.
    Sorry dit ging over SQL, niet php


    Edit:
    Was het toch niet.
    Heb nu:
    select CONVERT(float,CAST(FreeNumberField_01 as Money),1)

    Dit geeft xxxxxx,xx
    Er moeten punten tussen de duizendtallen

    [ Bericht 17% gewijzigd door DaFan op 15-02-2010 12:05:28 ]
    boem-dikkiedinsdag 16 februari 2010 @ 20:56
    Ik heb een hele domme vraag.

    Ik heb als oefening voor mezelf en school een formulier waar je wat dingen in kunt vullen. Ik heb de mail functie even niet gebruikt dus als ik wat invul en ik druk op submit dan komen de 'ingevulde' items gewoon boven aan de pagina staan. Nou heb ik als 'controle' dit er in staan.

    1
    2
    if ( empty( $voornaam ) )
            {echo "- U bent vergeten uw naam in te vullen<br>Klik op <a href=javascript:history.back(1)>Ga terug</a> om terug te keren.";}


    Als ik dus niks heb ingevuld bij voornaam dan krijg je deze error en kun je terug keren naar het formulier. Wat ik me nou afvraag is. Hoe krijg ik mijn 'echo' foutmelding naast het formulier.

    Ik wil dus dat als mensen op submit drukken en ze hebben iets niet ingevuld er gewoon met rode letters naast het formulier komt te staan. U bent vergeten uw naam in te vullen..

    Ik hoop dat jullie kunnen helpen, ik ben nogal een newbie.
    GlowMousedinsdag 16 februari 2010 @ 20:59
    quote:
    Op maandag 15 februari 2010 11:48 schreef DaFan het volgende:

    [..]

    Sorry dit ging over SQL, niet php


    Edit:
    Was het toch niet.
    Heb nu:
    select CONVERT(float,CAST(FreeNumberField_01 as Money),1)

    Dit geeft xxxxxx,xx
    Er moeten punten tussen de duizendtallen
    Met een conversie naar een float gaat dat natuurlijk niet lukken.
    quote:
    Op dinsdag 16 februari 2010 20:56 schreef boem-dikkie het volgende:
    Ik heb een hele domme vraag.

    Ik heb als oefening voor mezelf en school een formulier waar je wat dingen in kunt vullen. Ik heb de mail functie even niet gebruikt dus als ik wat invul en ik druk op submit dan komen de 'ingevulde' items gewoon boven aan de pagina staan. Nou heb ik als 'controle' dit er in staan.
    [ code verwijderd ]

    Als ik dus niks heb ingevuld bij voornaam dan krijg je deze error en kun je terug keren naar het formulier. Wat ik me nou afvraag is. Hoe krijg ik mijn 'echo' foutmelding naast het formulier.

    Ik wil dus dat als mensen op submit drukken en ze hebben iets niet ingevuld er gewoon met rode letters naast het formulier komt te staan. U bent vergeten uw naam in te vullen..

    Ik hoop dat jullie kunnen helpen, ik ben nogal een newbie.
    Zoek eerst eens op register_globals En die melding krijg je naast het formulier door te echo'en naast het formulier.
    boem-dikkiedinsdag 16 februari 2010 @ 21:04
    quote:
    Op dinsdag 16 februari 2010 20:59 schreef GlowMouse het volgende:

    [..]

    Met een conversie naar een float gaat dat natuurlijk niet lukken.
    [..]

    Zoek eerst eens op register_globals En die melding krijg je naast het formulier door te echo'en naast het formulier.
    Ja, dat soort dingen snap ik dus al niet. Ik ben pas net begonnen met PHP leren. Ik zoek het een beetje uit via sheets van school maar die zijn redelijk onduidelijk. Ik ben al zover dat als iemand zijn naam niet ingevuld is hij gewoon naar een pagina gaat met errors en je terug kunt keren maar ik wil dus nu dat andere proberen, of is dat een beetje outta my league voor hoeveel ik weet ( vrij weinig )
    GlowMousedinsdag 16 februari 2010 @ 21:07
    Oh het is een hele nieuwe pagina, ik zou naar dezelfde pagina gaan. Eerst controleer je of er iets ingevuld is en of dat goed is. Even heel simpel:
    if(ingevuld) {
    if(ook goed) {
    echo 'joepie ik sla alles op';
    die();
    }
    }
    echo formulier (eventueel met foutmeldingen)
    boem-dikkiedinsdag 16 februari 2010 @ 21:15
    Hmm. Ik weet ook niet hoe ik het moet uitleggen. Ik heb die nieuwe pagina veranderd dat hij op dezelfde pagina blijft. Dit is in ieder geval mijn code. Hij geeft nu alle dingen die je hebt ingevuld boven het formulier weer als je op submit drukt. En als je de error krijgt dat je iets niet ingevuld hebt komt die ook boven het formulier.

    http://rommeldetom.com//temp/code.html
    GlowMousedinsdag 16 februari 2010 @ 21:17
    dan is het bijna klaar toch?
    boem-dikkiedinsdag 16 februari 2010 @ 21:19
    Jep, op zich. Maar ik snap dus niet hoe ik die echo van geen naam ingevuld achter het formulier krijg. Omdat die PHP code die alles controleert en doorvoert bijna los staat van het formulier.

    En gewoon dat stukje echo achter het formulier plakken werkt niet zo maar toch?
    GlowMousedinsdag 16 februari 2010 @ 21:24
    dan krijg je zoiets
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Les 3</title>
    </head>

    <body>

    <?php
    if ( isset( $_POST['submit'] ) )
    {

    $voornaam = $_POST['voornaam'];
    $geslacht = $_POST['geslacht'];
    $woonplaats = $_POST['woonplaats'];
    $mailinglist = $_POST['mailinglist'];
    $achternaam = $_POST['achternaam'];

    $errors = array();

    $errors = array();

    if(empty($voornaam)) {
       $errors['voornaam'] = "U bent vergeten uw naam in te vullen";
    }
    if(empty($achternaam)) {
       $errors['voornaam'] = "U bent vergeten uw naam in te vullen";
    }

    if(count($error) == 0) {
       echo "--htmlspecialchars gebruiken, zie hierna--$voornaam $achternaam is een $geslacht en woont in $woonplaats.<br>";
    }

    if($mailinglist) {
       echo htmlspecialchars($voornaam) . " wil <b>wel</b> gebruik maken van de mailinglist.";
    else
       echo htmlspecialchars($voornaam) . " wil <b>geen</b> gebruik maken van de mailinglist.";
    }

    }
    ?>
    <form method="POST" action=""<?php $_SERVER['PHP_SELF']; ?>"">
    Voornaam:<br /><input type="text" name="voornaam" value="<?php if(isset($_POST['voornaam'])) echo htmlspecialchars($_POST['voornaam']);?>"/><br />
    <?php if(isset($errors['voornaam'])) echo $errors['voornaam']; ?>
    Achternaam<br /><input type="text" name="achternaam" value="<?php if(isset($_POST['achternaam'])) echo htmlspecialchars($_POST['achternaam']);?>"/><br />

    <br />Geslacht: <br />
    Man <input type="radio" name="geslacht" value="man" />
    Vrouw <input type="radio" name="geslacht" value="vrouw" />

    <br /><br />Woonplaats:<br />
    <select name="woonplaats" value="<?php if(isset($_POST['woonplaats'])) echo htmlspecialchars($_POST['woonplaats']);?>">
    <option value="Groningen">Groningen</option>
    <option value="Assen">Assen</option>
    </select>

    <br /><br />Mailinglist:<br />
    <input type="checkbox" name="mailinglist" /><br /><br />
    <input type="submit" name="submit" value="Post" />
    </form>

     

    </body>
    </html>
    boem-dikkiedinsdag 16 februari 2010 @ 21:28
    Ke. Even proberen zo!! Thanks in iedergeval. Ik had nu zelf het resultaat ook alleen denk ik dat het ietwat verkapt 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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Les 3</title>
    </head>

    <body>

    <?php
    if ( isset( $_POST['submit'] ) )
       {

            $voornaam = $_POST['voornaam'];
            $geslacht = $_POST['geslacht'];
            $woonplaats = $_POST['woonplaats'];
            $mailinglist = $_POST['mailinglist'];
          $achternaam = $_POST['achternaam'];
            
            if ( empty( $voornaam ) ) //Naam controleren
             {$error ="U bent vergeten uw naam in te vullen<br>";}
            
            else
            {
            print "$voornaam $achternaam is een $geslacht en woont in $woonplaats.<br>";
            
            
            if ($mailinglist)
            print "$voornaam wil <b>wel</b> gebruik maken van de mailinglist.";
            else 
            print "$voornaam wil <b>geen</b> gebruik maken van de mailinglist."; 
            }

       }
    ?>
    <form method="POST" action=""<?php $_SERVER['PHP_SELF']; ?>"">
    Voornaam:<br /><input type="text" name="voornaam" value="<?php if(isset($_POST['voornaam'])) echo $_POST['voornaam'];?>"/>
    <?php if(!empty($error))
       
       {
          //Error bericht wanneer iets niet juist is ingevuld
          echo $error;

       } ?>

    Achternaam<br /><input type="text" name="achternaam" value="<?php if(isset($_POST['achternaam'])) echo $_POST['achternaam'];?>"/><br />

    <br />Geslacht: <br />
    Man <input type="radio" name="geslacht" value="man" />
    Vrouw <input type="radio" name="geslacht" value="vrouw" />

    <br /><br />Woonplaats:<br />
    <select name="woonplaats" value="<?php if(isset($_POST['woonplaats'])) echo $_POST['woonplaats'];?>">
    <option value="Groningen">Groningen</option>
    <option value="Assen">Assen</option>
    </select>

    <br /><br />Mailinglist:<br />
    <input type="checkbox" name="mailinglist" /><br /><br />
    <input type="submit" name="submit" value="Post" />
    </form>


    </body>
    </html>
    GlowMousedinsdag 16 februari 2010 @ 21:32
    een select heeft trouwens geen value
    boem-dikkiedinsdag 16 februari 2010 @ 21:50
    Hoe bedoel je ( voelt zich noob ) ?

    Dat radio en check buttons 'sticky' maken is volgens ook wat moeilijk dan de achternaam etc.
    Intrepiditydinsdag 16 februari 2010 @ 21:51
    Klopt. Het attribuut wat je selecteerd wilt hebben moet selected="selected" als attribuut krijgen. De snelste manier om dat te doen (hoewel niet de mooiste) is om een kort if-statement in iedere <option> te zetten waarbij je de waarden vergelijkt:
    1<option value="Groningen" <?=($_POST['woonplaats'] == "Groningen") ? "selected=\"selected\"" : "" ?>>Groningen</option>

    Mooi is anders, maar het werkt
    GlowMousedinsdag 16 februari 2010 @ 21:51
    quote:
    Op dinsdag 16 februari 2010 21:50 schreef boem-dikkie het volgende:
    Dat radio en check buttons 'sticky' maken is volgens ook wat moeilijk dan de achternaam etc.
    Dat bedoel ik. Gebruik <option value="Assen" selected="selected">Assen</option>
    boem-dikkiedinsdag 16 februari 2010 @ 22:11
    quote:
    Op dinsdag 16 februari 2010 21:51 schreef Intrepidity het volgende:
    Klopt. Het attribuut wat je selecteerd wilt hebben moet selected="selected" als attribuut krijgen. De snelste manier om dat te doen (hoewel niet de mooiste) is om een kort if-statement in iedere <option> te zetten waarbij je de waarden vergelijkt:
    [ code verwijderd ]

    Mooi is anders, maar het werkt
    Dus hij kijkt daar of je 'Groningen' geselecteerd heeft en als dit inderdaad zo is geeft hij een 'selected' mee als sticky aan die waarde?

    Ik ga zelf nog wel ff kloten met radio boxjes. Als ik er niet uit kom roep ik wel!

    Bedankt allemaal.
    boem-dikkiedinsdag 16 februari 2010 @ 22:41
    Oke, ik heb géén idee wat ik aan het doen ben en ik kan het ook niet vinden op Google.
    Crutchdinsdag 16 februari 2010 @ 23:06
    1<select name="geslacht" id="geslacht" class="input_default" >

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?php
            
            
    // kijk geslacht en zet keuze
            // -- man
            
    echo '<option value="0" ';
            if ( 
    $row['geslacht']=='0') {
            echo 
    'selected="selected">'.$lang_male.'</option>';
            }
            else {
            echo 
    '>'.$lang_male.'</option>';
            }
            
    // -- vrouw
            
    echo '<option value="1" ';
            if ( 
    $row['geslacht']=='1') {
            echo 
    'selected="selected">'.$lang_female.'</option>';
            }
            else {
            echo 
    '>'.$lang_female.'</option>';
            }
            echo 
    '</select>';
                   
    ?>


    Wel even in een iets andere context, maar is mijn manier van een keuzelijst genereren dan omslachtig?
    Intrepiditydinsdag 16 februari 2010 @ 23:40
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $geslachten 
    = array(=> $lang_male=> $lang_female);
    echo 
    "<select name=\"geslacht\">";
    foreach(
    $geslachten as $k => $v)
    {
       echo 
    "<option value=\"{$k}\" ";
       if(
    $row["geslacht"] == $k)
       {
          echo 
    "selected=\"selected\" ";
       }
       echo 
    ">{$v}</option>";
    }
    echo 
    "</select>';
    ?>

    Zo kan ie ook. En ontdekken we dan op een verre planeet een ras met 3 geslachten dan hoef je alleen maar een itempje aan de array toe te voegen In het geval van geslacht wellicht niet nodig, maar zo wordt je code wel een stuk dynamischer
    Crutchdinsdag 16 februari 2010 @ 23:48
    quote:
    Op dinsdag 16 februari 2010 23:40 schreef Intrepidity het volgende:

    [ code verwijderd ]

    Zo kan ie ook. En ontdekken we dan op een verre planeet een ras met 3 geslachten dan hoef je alleen maar een itempje aan de array toe te voegen In het geval van geslacht wellicht niet nodig, maar zo wordt je code wel een stuk dynamischer
    Awesome!
    GuidooHwoensdag 17 februari 2010 @ 05:29
    Gadver, wat een smerige code!

    Het is imho mooier om het volgende te doen:
    1
    2
    3
    4
    5
    6
    7
    8
    <select name="geslacht">
    <?php
    $geslachten = array(0 => $lang_male, 1 => $lang_female);
    foreach($geslachten as $k => $v):
    ?>
    <option value="<?=$k?>"<?=($row["geslacht"] == $k ? 'selected="selected"' : '')?>><?=$v?></option>
    <?php endforeach; ?>
    </select>

    (wat een bagger PHP code ding )
    GuidooHwoensdag 17 februari 2010 @ 05:33
    quote:
    Op vrijdag 12 februari 2010 12:19 schreef ursel het volgende:

    [..]
    [ code verwijderd ]


    Bij deze wil ik de code in de bovenstaande post nomineren voor de slechtste code van 2010.
    Intrepiditywoensdag 17 februari 2010 @ 07:26
    quote:
    Op woensdag 17 februari 2010 05:29 schreef GuidooH het volgende:
    Gadver, wat een smerige code!

    Het is imho mooier om het volgende te doen:
    [ code verwijderd ]

    (wat een bagger PHP code ding )
    Het mixen van HTML en PHP is uberhaupt smerig imo, of je nou html echoot binnen PHP of korte PHP-tags gebruikt binnen je HTML, het is allebei slordig.
    GuidooHwoensdag 17 februari 2010 @ 07:28
    quote:
    Op woensdag 17 februari 2010 07:26 schreef Intrepidity het volgende:

    [..]

    Het mixen van HTML en PHP is uberhaupt smerig imo, of je nou html echoot binnen PHP of korte PHP-tags gebruikt binnen je HTML, het is allebei slordig.
    Hoe wou je anders ooit HTML genereren met PHP?
    Intrepiditywoensdag 17 februari 2010 @ 07:56
    quote:
    Op woensdag 17 februari 2010 07:28 schreef GuidooH het volgende:

    [..]

    Hoe wou je anders ooit HTML genereren met PHP?
    Met een template engine
    GuidooHwoensdag 17 februari 2010 @ 07:57
    quote:
    Op woensdag 17 februari 2010 07:56 schreef Intrepidity het volgende:

    [..]

    Met een template engine
    Dat is pas een bullshit, dan krijg je er nog een "taal" bij die vervolgens weer geparsed moet worden, heeft dan toch helemaal geen meerwaarde ten opzichte van gewoon php gebruiken in de template bestanden?
    hello_moto1992woensdag 17 februari 2010 @ 11:22
    quote:
    Op woensdag 10 februari 2010 18:37 schreef hello_moto1992 het volgende:
    Hallo,

    Met behulp van s3slider probeer ik gegevens uit de database op te halen.

    HTML voor de slider:
    [ code verwijderd ]

    Nu haal ik op dit moment zo gegevens uit de database, zodat er rijen gevormd worden.
    [ code verwijderd ]

    Hoe krijg ik dan afzonderlijke gevens, zoals bijvoorbeeld bij de titel, de titels tussen de span? Er staan nl. ook allemaal dingen zoals IMG enzo tussen

    bvd
    Een bescheiden kickje. Heeft iemand misschien een ingeving?
    Crutchwoensdag 17 februari 2010 @ 11:57
    quote:
    Op woensdag 17 februari 2010 05:29 schreef GuidooH het volgende:
    Gadver, wat een smerige code!

    Het is imho mooier om het volgende te doen:
    [ code verwijderd ]

    (wat een bagger PHP code ding )
    Dus eigenlijk (min of meer) dezelfde methode als voor boem-dikkie?
    Ik zal me eens wat meer gaan verdiiepen in foreach()
    Intrepiditywoensdag 17 februari 2010 @ 12:15
    quote:
    Op woensdag 17 februari 2010 07:57 schreef GuidooH het volgende:

    [..]

    Dat is pas een bullshit, dan krijg je er nog een "taal" bij die vervolgens weer geparsed moet worden, heeft dan toch helemaal geen meerwaarde ten opzichte van gewoon php gebruiken in de template bestanden?
    Ik zeg ook niet dat dat altijd de juiste oplossing is, ik zeg dat dat netter staat vanwege de duidelijke scheiding tussen back- en frontendcode, want daar ging het over.
    #ANONIEMwoensdag 17 februari 2010 @ 12:16
    TVPCakePHP
    GuidooHwoensdag 17 februari 2010 @ 18:10
    quote:
    Op woensdag 17 februari 2010 12:15 schreef Intrepidity het volgende:

    [..]

    Ik zeg ook niet dat dat altijd de juiste oplossing is, ik zeg dat dat netter staat vanwege de duidelijke scheiding tussen back- en frontendcode, want daar ging het over.
    Je zegt toch dat het in dit geval de beste oplossing is, of in ieder geval ooit de beste oplossing.. Daar ben ik het al niet mee eens. Verder heeft het helemaal niks te maken met front- en backend. Het heeft ook helemaal geen nut om totaal géén PHP in je html te willen gebruiken, dan maak je het jezelf alleen maar moeilijk! Het is imho het beste om in de templates alleen PHP te gebruiken om dingen te weergeven. Dat kan ook met een template engine, maar dan krijg je allemaal vage code's die het zeker niet overzichtelijker maken, maar uiteindelijk nog geparsed gaan worden door PHP en dan doet ie precies hetzelfde.
    boem-dikkiedonderdag 18 februari 2010 @ 09:50
    Ik heb de radiobuttons nu ook sticky.

    1<?=($geslacht == "man") ? "checked" : "" ?>
    GuidooHdonderdag 18 februari 2010 @ 10:53
    quote:
    Op donderdag 18 februari 2010 09:50 schreef boem-dikkie het volgende:
    Ik heb de radiobuttons nu ook sticky.
    [ code verwijderd ]


    Nice. :Y

    Ik doe hem altijd zo:
    1<?=($geslacht == 'man' ? 'checked' : '' )?>


    Maakt in dit geval niet uit, maar in sommige gevallen wel. :9 Daar bedoel ik dan de haakjes mee. :Y

    Verder gebruik ik altijd liever enkele quotes, ook dit heeft hier weer geen voordeel, maar als je html gebruikt in je PHP, dan hoef je je dubbele quotes die je voor html gebruikt niet te escapen. *)
    Intrepiditydonderdag 18 februari 2010 @ 11:14
    quote:
    Op woensdag 17 februari 2010 18:10 schreef GuidooH het volgende:

    [..]

    Je zegt toch dat het in dit geval de beste oplossing is, of in ieder geval ooit de beste oplossing.. Daar ben ik het al niet mee eens. Verder heeft het helemaal niks te maken met front- en backend. Het heeft ook helemaal geen nut om totaal géén PHP in je html te willen gebruiken, dan maak je het jezelf alleen maar moeilijk! Het is imho het beste om in de templates alleen PHP te gebruiken om dingen te weergeven. Dat kan ook met een template engine, maar dan krijg je allemaal vage code's die het zeker niet overzichtelijker maken, maar uiteindelijk nog geparsed gaan worden door PHP en dan doet ie precies hetzelfde.
    Ooit gedacht aan scheiding van verantwoordelijkheden tussen front- en backendontwikkelaars? Ik ken weinig frontend mensen die met PHP kunnen omgaan. Een templatetaal is makkelijker te leren, en met fatsoenlijke caching doet de performance per definitie niet onder voor pure PHP. Daarnaast is het zeker beter leesbaar, voornamelijk voor niet PHP'ers.
    GuidooHdonderdag 18 februari 2010 @ 11:18
    quote:
    Op donderdag 18 februari 2010 11:14 schreef Intrepidity het volgende:

    [..]

    Ooit gedacht aan scheiding van verantwoordelijkheden tussen front- en backendontwikkelaars? Ik ken weinig frontend mensen die met PHP kunnen omgaan. Een templatetaal is makkelijker te leren, en met fatsoenlijke caching doet de performance per definitie niet onder voor pure PHP. Daarnaast is het zeker beter leesbaar, voornamelijk voor niet PHP'ers.
    Tja, net of een template taal zo veel makkelijker is dan een paar PHP dingen. En je bedoeld hopelijk dat het "niet per definitie" onder doet ipv "per definitie niet"? Er zit toch een extra stap in; het parsen van de template zelf, hetzelfde zal met alleen PHP altijd sneller zijn.
    Intrepiditydonderdag 18 februari 2010 @ 11:22
    quote:
    Op donderdag 18 februari 2010 11:18 schreef GuidooH het volgende:

    [..]

    Tja, net of een template taal zo veel makkelijker is dan een paar PHP dingen. En je bedoeld hopelijk dat het "niet per definitie" onder doet ipv "per definitie niet"? Er zit toch een extra stap in; het parsen van de template zelf, hetzelfde zal met alleen PHP altijd sneller zijn.
    Dat parsen gebeurt met caching slechts 1 keer. Dus de performanceafname die er al is is niet voldoende om merkbaar te zijn voor bezoekers. De meeste templateparsers maken gewoon een PHP-bestand aan waar in principe hetzelfde instaat, maar dan omgezet van template naar pure PHP. Wat je dus in feite gedaan hebt is een abstractere taal geintroduceerd om je frontendcode te schrijven. Wellicht zie je de voordelen niet, maar ze zijn er toch wel degelijk:
    - Volautomatisch andere css-classes toewijzen aan even- en oneven rijen, iets waar je in PHP weer een if-statement voor nodig hebt
    - Filters toepassen op tekst waardoor je je teksten veel beter kunt formatteren als met php (lees: veel korter)
    - Automatisch een andere tekst weergeven als bijvoorbeeld een array leeg is. Geen if/else voor nodig
    - Escapen kun je niet vergeten omdat de engine dat voor je doet, daardoor betere veiligheid
    - Macro's schrijven om met een functie-aanroep achtige constructie bijvoorbeeld een inputveld te genereren. Een keer je macro aanpassen is overal je inputs op een andere manier genereren
    En zo zijn er nog legio voordelen
    Crutchdonderdag 18 februari 2010 @ 11:47
    mySQL slaat de datum zo op: 0000-00-00, hoe krijg ik dat weer normaal uitgelezen als ik het wil echoën? => 00-00-0000
    Lightdonderdag 18 februari 2010 @ 11:50
    quote:
    Op donderdag 18 februari 2010 11:47 schreef Crutch het volgende:
    mySQL slaat de datum zo op: 0000-00-00, hoe krijg ik dat weer normaal uitgelezen als ik het wil echoën? => 00-00-0000
    1
    2
    3
    <?php
    echo date('d-m-Y'strtotime('2010-02-18'));
    ?>
    GuidooHdonderdag 18 februari 2010 @ 11:50
    quote:
    Op donderdag 18 februari 2010 11:47 schreef Crutch het volgende:
    mySQL slaat de datum zo op: 0000-00-00, hoe krijg ik dat weer normaal uitgelezen als ik het wil echoën? => 00-00-0000
    http://dev.mysql.com/doc/(...)-time-functions.html
    DATE_FORMAT()
    GuidooHdonderdag 18 februari 2010 @ 11:53
    quote:
    Op donderdag 18 februari 2010 11:22 schreef Intrepidity het volgende:

    [..]

    Dat parsen gebeurt met caching slechts 1 keer. Dus de performanceafname die er al is is niet voldoende om merkbaar te zijn voor bezoekers. De meeste templateparsers maken gewoon een PHP-bestand aan waar in principe hetzelfde instaat, maar dan omgezet van template naar pure PHP. Wat je dus in feite gedaan hebt is een abstractere taal geintroduceerd om je frontendcode te schrijven. Wellicht zie je de voordelen niet, maar ze zijn er toch wel degelijk:
    - Volautomatisch andere css-classes toewijzen aan even- en oneven rijen, iets waar je in PHP weer een if-statement voor nodig hebt
    - Filters toepassen op tekst waardoor je je teksten veel beter kunt formatteren als met php (lees: veel korter)
    - Automatisch een andere tekst weergeven als bijvoorbeeld een array leeg is. Geen if/else voor nodig
    - Escapen kun je niet vergeten omdat de engine dat voor je doet, daardoor betere veiligheid
    - Macro's schrijven om met een functie-aanroep achtige constructie bijvoorbeeld een inputveld te genereren. Een keer je macro aanpassen is overal je inputs op een andere manier genereren
    En zo zijn er nog legio voordelen
    Oké, je hebt wel een punt, voor sommige doeleinden zou dat wel op z'n plek zijn, maar dat is eigenlijk niet waar de discussie in eerste instantie over ging. We zijn het er waarschijnlijk wel over eens dat templates niet altijd de juiste oplossing zijn. Verder zijn de dingen dingen die je nu noemt ook bijna allemaal onderdeel van mijn standaard "framework".
    #ANONIEMdonderdag 18 februari 2010 @ 11:54
    quote:
    Op woensdag 17 februari 2010 18:10 schreef GuidooH het volgende:

    [..]

    Je zegt toch dat het in dit geval de beste oplossing is, of in ieder geval ooit de beste oplossing.. Daar ben ik het al niet mee eens. Verder heeft het helemaal niks te maken met front- en backend. Het heeft ook helemaal geen nut om totaal géén PHP in je html te willen gebruiken, dan maak je het jezelf alleen maar moeilijk! Het is imho het beste om in de templates alleen PHP te gebruiken om dingen te weergeven. Dat kan ook met een template engine, maar dan krijg je allemaal vage code's die het zeker niet overzichtelijker maken, maar uiteindelijk nog geparsed gaan worden door PHP en dan doet ie precies hetzelfde.
    Heb je ooit wel eens werk geoutsourced naar een designbureau? Daar willen ze niks weten van PHP, daar willen ze het liefste alles in HTML aangeleverd krijgen.
    Lightdonderdag 18 februari 2010 @ 11:56
    quote:
    Is een optie, maar ik zou MySQL niet laten bepalen hoe iets wordt weergegeven.
    Crutchdonderdag 18 februari 2010 @ 12:00
    quote:
    Op donderdag 18 februari 2010 11:50 schreef Light het volgende:

    [..]
    [ code verwijderd ]
    GuidooHdonderdag 18 februari 2010 @ 12:11
    quote:
    Op donderdag 18 februari 2010 11:54 schreef Scorpie het volgende:

    [..]

    Heb je ooit wel eens werk geoutsourced naar een designbureau? Daar willen ze niks weten van PHP, daar willen ze het liefste alles in HTML aangeleverd krijgen.
    Ik werk wekelijks samen met een grafisch bureau, aangezien de HTML die hun aan leveren nogal bagger is, leveren ze tegenwoordig de PSD aan.
    quote:
    Op donderdag 18 februari 2010 11:56 schreef Light het volgende:

    [..]

    Is een optie, maar ik zou MySQL niet laten bepalen hoe iets wordt weergegeven.
    Over het algemeen geef ik je gelijk, maar met datums wil ik nog wel eens een uitzondering maken hiervoor, mits de site alleen in het Nederlands is.
    boem-dikkiedonderdag 18 februari 2010 @ 12:36
    quote:
    Op donderdag 18 februari 2010 10:53 schreef GuidooH het volgende:

    [..]

    Nice.

    Ik doe hem altijd zo:
    [ code verwijderd ]

    Maakt in dit geval niet uit, maar in sommige gevallen wel. Daar bedoel ik dan de haakjes mee.

    Verder gebruik ik altijd liever enkele quotes, ook dit heeft hier weer geen voordeel, maar als je html gebruikt in je PHP, dan hoef je je dubbele quotes die je voor html gebruikt niet te escapen.
    Thanks. Ik ben nu een wat uitgebreider contact formulier aan het maken voor mijn vader zijn website alleen daar krijg ik een witte pagina. Maar even uitvogelen wat dat kan zijn.

    Nog wel een vraag.

    Ik heb in dat formulier de keuze uit zo'n 15 items die ze kunnen aanvinken met een checkbox.
    Ik heb nu elk item van die checkboxen boven aan staan zeg maar

    $box_een = $_POST['box_een'];
    $box_twee = $_POST['box_twee'];

    Nu heb ik bij een ander formulier maar één checkbox die je kunt aanvinken voor een nieuwsbrief. Dat heb ik met een simpele if opgelost. Als hij aangevinkt is dan staat het in de mail 'nieuwsbrief' als hij niet aangevinkt is staat er gewoon niks.

    Moet ik dan voor elke checkbox zo'n if statement maken ( lijkt me niet maar ik weet nog niet echt hoe ik bepaalde dingen kan combineren etc. )
    Crutchdonderdag 18 februari 2010 @ 13:36
    Hoe haal ik de nieuwste rij uit een database waar ik een column heb met datum? Ik kan wel sorteren op datum zag ik, maar hoe selecteer ik de nieuwste?
    Lightdonderdag 18 februari 2010 @ 13:39
    quote:
    Op donderdag 18 februari 2010 13:36 schreef Crutch het volgende:
    Hoe haal ik de nieuwste rij uit een database waar ik een column heb met datum? Ik kan wel sorteren op datum zag ik, maar hoe selecteer ik de nieuwste?
    Aflopend sorteren
    Intrepiditydonderdag 18 februari 2010 @ 13:46
    quote:
    Op donderdag 18 februari 2010 13:36 schreef Crutch het volgende:
    Hoe haal ik de nieuwste rij uit een database waar ik een column heb met datum? Ik kan wel sorteren op datum zag ik, maar hoe selecteer ik de nieuwste?
    SELECT * FROM tabel ORDER BY datum DESC LIMIT 1;
    #ANONIEMdonderdag 18 februari 2010 @ 13:51
    quote:
    Op donderdag 18 februari 2010 13:39 schreef Light het volgende:

    [..]

    Aflopend sorteren
    En als je in een transactie bezig bent kan je met http://forums.mysql.com/read.php?12,2060,2060 werken.
    Crutchdonderdag 18 februari 2010 @ 13:54
    quote:
    Op donderdag 18 februari 2010 13:39 schreef Light het volgende:

    [..]

    Aflopend sorteren
    quote:
    Op donderdag 18 februari 2010 13:46 schreef Intrepidity het volgende:

    [..]

    SELECT * FROM tabel ORDER BY datum DESC LIMIT 1;

    Dank
    quote:
    Op donderdag 18 februari 2010 13:51 schreef Scorpie het volgende:

    [..]

    En als je in een transactie bezig bent kan je met http://forums.mysql.com/read.php?12,2060,2060 werken.
    Neh, gewoon laaste blogje selecteren
    Chandlerdonderdag 18 februari 2010 @ 16:23
    Ik wil dit stukje XML code omzetten naar een array middels een functie

    1
    2
    3
    4
    5
    6
    <data>
    <error>Verkeerde aanroep van het script</error>
    <table></table>
    <lines>0</lines>
    <coded><![CDATA[eJxLtDK2qi62MrNSKklMykktVrJOtDKwqq4ttjK1UkrOL80rQRHJLEnNhaupBQBTBhOQ]]></coded>
    </data>


    en het scriptje

    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
    <?php
    // maakt gebruik van de functie xml2array die te vinden is op php.net

    //set POST variables
    $url 'http://localhost/*****/extract.php';
    $fields = array(
                    
    'username' => urlencode('****'),
                    
    'password' => urlencode('****'),
                    
    'database' => urlencode(*****),
                    
    'action'   => urlencode('tables'),
                   );

    //url-ify the data for the POST
    $fields_string '';
    foreach(
    $fields AS $key=>$value

        
    $fields_string .= $key.'='.$value.'&'
    }
    rtrim($fields_string,
          
    '&');

    //open connection
    $ch curl_init();

    //set the url, number of POST vars, POST data
    curl_setopt($ch,
                
    CURLOPT_URL,
                
    $url);
    curl_setopt($ch,
                
    CURLOPT_POST,
                
    count($fields));
    curl_setopt($ch,
                
    CURLOPT_POSTFIELDS,
                
    $fields_string);

    //execute post
    $result curl_exec($ch);

    //close connection
    $data curl_multi_getcontent($ch);

    $buf xml2array($data
                     
    1
                     
    'tag');

    print_r($buf);

    curl_close($ch);
    ?>


    Normaal zou de XML2array functie de data om moeten zetten naar een array maar helaas dat gebeurd niet bij mijn opzet. Wat doe ik verkeerd?
    SharQueDodonderdag 18 februari 2010 @ 17:08
    quote:
    Op donderdag 18 februari 2010 16:23 schreef Chandler het volgende:
    Ik wil dit stukje XML code omzetten naar een array middels een functie
    [ code verwijderd ]

    en het scriptje
    [ code verwijderd ]

    Normaal zou de XML2array functie de data om moeten zetten naar een array maar helaas dat gebeurd niet bij mijn opzet. Wat doe ik verkeerd?
    Ik zou zeggen, maak een minimal test case (zie onder) en werk het verder uit. Bij elke toevoeging nog een keer testen. Als je vast komt te zitten dan weet je waar de fout zit:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    // --include xml2array functie--

    $xml xml2array("<data>
    <error>Verkeerde aanroep van het script</error>
    <table></table>
    <lines>0</lines>
    <coded><![CDATA[eJxLtDK2qi62MrNSKklMykktVrJOtDKwqq4ttjK1UkrOL80rQRHJLEnNhaupBQBTBhOQ]]></coded>
    </data>"
    );

    print_r($xml);
    ?>
    Chandlerdonderdag 18 februari 2010 @ 18:40
    Nou ik ben er acher, de data ging de lucht in ipv in de string/array

    met dit:

    1
    2
    3
        curl_setopt($ch,
                    CURLOPT_RETURNTRANSFER,
                    1);

    heb ik het werkend gekregen
    SharQueDodonderdag 18 februari 2010 @ 19:01
    quote:
    Op donderdag 18 februari 2010 18:40 schreef Chandler het volgende:
    Nou ik ben er acher, de data ging de lucht in ipv in de string/array

    met dit:
    [ code verwijderd ]

    heb ik het werkend gekregen
    Intrepidityvrijdag 19 februari 2010 @ 11:30
    Ik heb een SQL probleempje. Ik heb 2 tabellen, te weten afbeeldingmap en afbeelding. Ik ben bezig een kleine afbeeldingenlibrary binnen een CMS te maken, waarbij afbeeldingen in mappen ingedeeld kunnen worden, en mappen ook submappen kunnen hebben. De tabelindeling is als volgt:


    Ik probeer een query te schrijven die alle rootmappen ophaalt (dus met ouder_id = null), waarbij ik join op afbeelding om direct het aantal onderliggende afbeeldingen op te halen:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT
      m.*,
      COUNT(a.id) AS afbeeldingen
    FROM gras_afbeeldingmap m
      LEFT JOIN gras_afbeelding a ON a.map_id = m.id
    WHERE
      m.klant_id = 1 AND 
      m.ouder_id IS NULL
    ORDER BY
      m.naam

    Het probleem wat ik heb is dat er 2 rootmappen zijn, en dat er maar 1 getoond word, maar het aantal afbeeldingen is wel het totaal van de 2 mappen samen! Waarom voegt hij de 2 records samen? Ik krijg dus de data van 1 rij te zien, behalve de afbeeldingencount, dat is van de 2 mappen samen..
    GlowMousevrijdag 19 februari 2010 @ 11:55
    ik mis een GROUP BY
    Intrepidityvrijdag 19 februari 2010 @ 12:25
    3 smileys die hier op zijn plaats zijn luiden:




  • Ik was nog niet helemaal wakker blijkbaar
  • Crutchvrijdag 19 februari 2010 @ 13:42
    Heeft iemand trouwens ervaring met WYSIWYG-editors voor textinputs (textarea)? Ik stuit net op openWYSIWYG maar die werkt niet in Chrome.
    GuidooHvrijdag 19 februari 2010 @ 13:45
    quote:
    Op vrijdag 19 februari 2010 13:42 schreef Crutch het volgende:
    Heeft iemand trouwens ervaring met WYSIWYG-editors voor textinputs (textarea)? Ik stuit net op openWYSIWYG maar die werkt niet in Chrome.
    CKEditor is wel oké, tegenwoordig helaas niet meer helemaal gratis voor commercieel gebruik.
    Crutchvrijdag 19 februari 2010 @ 13:46
    quote:
    Op vrijdag 19 februari 2010 13:45 schreef GuidooH het volgende:

    [..]

    CKEditor is wel oké, tegenwoordig helaas niet meer helemaal gratis voor commercieel gebruik.
    Kuch* dan gebruik ik het niet commercieel

    Zal effe googlen, thanks.
    GuidooHvrijdag 19 februari 2010 @ 13:47
    quote:
    Op vrijdag 19 februari 2010 13:46 schreef Crutch het volgende:

    [..]

    Kuch* dan gebruik ik het niet commercieel

    Zal effe googlen, thanks.
    http://ckeditor.com/
    En dan heb je nog:
    http://ckfinder.com/

    Trollface.vrijdag 19 februari 2010 @ 14:21
    TinyMCE is een zeer goede kandidaat. vind ik.
    Crutchvrijdag 19 februari 2010 @ 14:23
    quote:
    Op vrijdag 19 februari 2010 13:47 schreef GuidooH het volgende:

    [..]

    http://ckeditor.com/
    En dan heb je nog:
    http://ckfinder.com/

    Fucking geniaal!!!!

    Het werk ook als een tiet, gewoon javascriptje includen en je textarea class "ckeditor" geven.
    GuidooHvrijdag 19 februari 2010 @ 14:25
    quote:
    Op vrijdag 19 februari 2010 14:23 schreef Crutch het volgende:

    [..]

    Fucking geniaal!!!!

    Het werk ook als een tiet, gewoon javascriptje includen en je textarea class "ckeditor" geven.
    Roonaanvrijdag 19 februari 2010 @ 21:00
    quote:
    Beste PHPHulp bezoeker,

    PHPHulp is dusdanig afgetakeld dat we een nieuw webmaster forum online gezet hebben. Dit forum is te vinden op http://onlinewebmasters.nl/. We hopen hier een nieuwe bruisende community op te kunnen zetten en de sfeer de op de PHPHulp hangt daar ook achter te laten.


    Op zeer korte termijn zal het ook mogelijk worden scripts te plaatsen en iets later ook tutorials. Helaas zijn we niet in staat om de huidige phphulp data over te zetten, dus iedereen zal een nieuw account aan moeten maken en ook een nieuwe postcount op moeten bouwen.

    Veel plezier!

    OnlineWebmaster.nl

    PS: Toen PHPHulp nog online was heeft iemand de gehele website gedownload. Dit was dus inclusief alle profielpagina's met email adressen. Via een eenvoudige regex hebben we vervolgens je e-mail hieruit op weten te halen. Dit is de reden dat je deze eenmalige email ontvangt.
    Erm.. Is die PS voer om een aangifte tegen deze gasten te doen? Lijkt met geen normale gang van zaken?
    Trollface.vrijdag 19 februari 2010 @ 21:04
    Nee, dat lijkt me niet nee.
    GlowMousevrijdag 19 februari 2010 @ 21:04
    Ogv de databankenwet kan de eigenaar van phphulp.nl wat beginnen. Als je zelf wat wil doen dan kan dat ogv het spamverbod zoals neergelegd in de Telecommunicatiewet. Spam kun je via www.spamklacht.nl melden aan de OPTA.
    Crutchvrijdag 19 februari 2010 @ 21:04
    quote:
    Op vrijdag 19 februari 2010 21:00 schreef Roönaän het volgende:

    [..]

    Erm.. Is die PS voer om een aangifte tegen deze gasten te doen? Lijkt met geen normale gang van zaken?
    Ik zag het ook! Er staat dan wel geen kut op dat nieuwe forum, maar lijkt me ook niet echt een kans van slagen hebben.
    Chandlerzondag 21 februari 2010 @ 09:48
    Tis maar net hoeveel aandacht je wilt geven aan dat nieuwe forum.

    Ik heb trouwes 1 vraag, hoe kan ik snel de statistieken uitlezen van een database (bv aantal tabellen, records, grootte in kb/mb/gb/etc).

    Heb al wat gevonden maar die kan ik niet specifiek gebruiken voor 1 DB (kon niet uitvinden hoe)

    1
    2
    3
    4
    5
    SELECT table_schema 'database',
    concat( round( sum( data_length + index_length ) / ( 1024 *1024 ) , 2 ) , 'M' ) size
    FROM information_schema.TABLES
    WHERE ENGINE=('MyISAM' || 'InnoDB' )
    GROUP BY table_schema


    Iemand?
    Trollface.zondag 21 februari 2010 @ 11:41
    quote:
    Op zondag 21 februari 2010 09:48 schreef Chandler het volgende:
    Tis maar net hoeveel aandacht je wilt geven aan dat nieuwe forum.

    Ik heb trouwes 1 vraag, hoe kan ik snel de statistieken uitlezen van een database (bv aantal tabellen, records, grootte in kb/mb/gb/etc).

    Heb al wat gevonden maar die kan ik niet specifiek gebruiken voor 1 DB (kon niet uitvinden hoe)
    [ code verwijderd ]

    Iemand?
    http://dev.mysql.com/doc/refman/5.0/en/show.html
    Chandlermaandag 22 februari 2010 @ 07:18
    Tnx, ga deze eens doornemen
    Sitethiefmaandag 22 februari 2010 @ 13:33
    Hoe kan ik in hemelsnaam met een MySQL server verbinden dmv een proxy? SOAP heeft native proxy oundersteuning, maar MySQL niet....... en er is ook geen standaard stream wrapper ofzo......
    Pualadinsdag 23 februari 2010 @ 15:38
    Ik krijg een error tijdens het programmeren en snap hem niet. Zouden jullie even willen kijken?

    1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 2
    PiRANiAdinsdag 23 februari 2010 @ 15:39
    quote:
    Op dinsdag 23 februari 2010 15:38 schreef Puala het volgende:
    Ik krijg een error tijdens het programmeren en snap hem niet. Zouden jullie even willen kijken?
    [ code verwijderd ]
    Je voert een verkeerde query uit op je database .
    De fout zit in lijn 2 van je QUERY, dus niet van je script.

    Kijk even welke query je uitvoert
    Pualadinsdag 23 februari 2010 @ 15:46
    quote:
    Op dinsdag 23 februari 2010 15:39 schreef PiRANiA het volgende:

    [..]

    Je voert een verkeerde query uit op je database .
    De fout zit in lijn 2 van je QUERY, dus niet van je script.

    Kijk even welke query je uitvoert
    Ho niet zo snel. Ik ben beginner
    Kun je hem ook simpeler uitleggen?
    PiRANiAdinsdag 23 februari 2010 @ 15:53
    quote:
    Op dinsdag 23 februari 2010 15:46 schreef Puala het volgende:

    [..]

    Ho niet zo snel. Ik ben beginner
    Kun je hem ook simpeler uitleggen?
    Uiteraard .
    Het script dat je uitvoert vraagt dingen op uit je (mysql) database. (waarschijnlijk via de mysql_query() functie). Je database snapt de vraag (Query) alleen niet, vandaar deze error.
    Als je het script even hier post of op http://pastebin.com/ zet, kunnen we je vast helpen
    Pualadinsdag 23 februari 2010 @ 15:57
    quote:
    Op dinsdag 23 februari 2010 15:53 schreef PiRANiA het volgende:

    [..]

    Uiteraard .
    Het script dat je uitvoert vraagt dingen op uit je (mysql) database. (waarschijnlijk via de mysql_query() functie). Je database snapt de vraag (Query) alleen niet, vandaar deze error.
    Als je het script even hier post of op http://pastebin.com/ zet, kunnen we je vast helpen
    Ah ik zie het al. Had nog een stukje van de oude code staan en die verwees naar de verkeerde regel. Heb het nu aangepast en nu werkt het wel.

    Dankjewel
    Trollface.dinsdag 23 februari 2010 @ 15:58
    Nevermind, Paula's probleem is al opgelost.
    Tiemiedinsdag 23 februari 2010 @ 20:06
    vrouwen die devven
    Intrepiditydinsdag 23 februari 2010 @ 20:46
    quote:
    Op dinsdag 23 februari 2010 20:06 schreef Tiemie het volgende:
    vrouwen die devven
    Dat.