abonnement Unibet Coolblue Bitvavo
pi_61560435

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,


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
  •   donderdag 11 september 2008 @ 20:44:59 #2
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_61560482
      donderdag 11 september 2008 @ 20:59:51 #3
    136730 PiRANiA
    All thinking men are atheists.
    pi_61563806
    quote:
    Op donderdag 11 september 2008 19:32 schreef mcDavid het volgende:
    Als je hoofdletters gebruikt is het gewoon geen correcte HMTL. Weet niet wie dat ooit verzonnen heeft, maar 't klopt gewoon niet.
    Vroeger, toen slakkie nog een jonge god was, schreven we al die tags in UPPERCASE, zie de RFC: http://tools.ietf.org/html/rfc1866

    [ Bericht 0% gewijzigd door slakkie op 12-09-2008 08:13:38 ]
    pi_61566263
    quote:
    Op donderdag 11 september 2008 @ 22:34 schreef slakkie het volgende:

    [..]

    Vroeger, toen slakkie, nog een jonge god was, schreven we al die tags in UPPERCASE, zie de RFC: http://tools.ietf.org/html/rfc1866
    Tering, dat was, euh, 1995 ofzo?

    toen kregen wij net onze eerste computer met kleurenscherm joh!
    pi_61570170
    quote:
    Op donderdag 11 september 2008 22:34 schreef slakkie het volgende:

    [..]

    Vroeger, toen slakkie nog een jonge god was, schreven we al die tags in UPPERCASE, zie de RFC: http://tools.ietf.org/html/rfc1866
    Ghehe idd. De goeie ouwe tijd .

    tvptje
    pi_61570568
    quote:
    Op donderdag 11 september 2008 19:32 schreef mcDavid het volgende:
    Als je hoofdletters gebruikt is het gewoon geen correcte HMTL. Weet niet wie dat ooit verzonnen heeft, maar 't klopt gewoon niet.
    Html tags zijn case insensitive, dus hoofdletters en kleine letters zijn beide toegestaan. Pas bij (echte) xhtml moeten tags in kleine letters.
    Kleine letters worden wel aanbevolen, maar hoofdletters in html zijn zeker niet fout.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_61570721
    Is het mogelijk om bijvoorbeeld de dagen terug te krijgen van een week.
    Bijvoorbeeld week 37 als input moet terug geven: 08/09 09/09 10/09 11/09 12/09
    ne okuyon, bokmu var?
    pi_61571583
    Het is mogelijk om daar een functie voor te schrijven
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_61579998
    quote:
    Op vrijdag 12 september 2008 10:09 schreef saban het volgende:
    Is het mogelijk om bijvoorbeeld de dagen terug te krijgen van een week.
    Bijvoorbeeld week 37 als input moet terug geven: 08/09 09/09 10/09 11/09 12/09
    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
    <?php
    /* Stolen from http://nl.php.net/manual/en/function.date.php#84533 */
    function firstkw($year) {
        
    $wtag date('w'mktime(0,0,0,1,1,$year));
        if (
    $wtag <= 4) {
            
    /* Mon to Tuesday */
            
    $day mktime(0,0,0,1,1-($wtag-1),$year);
        } else {
            
    /* Friday to sunday */
            
    $day mktime(0,0,0,1,1+(7-$wtag+1),$year);
        }
        return 
    $day;
    }

    function 
    weekno2date() {
        
    $args func_get_args();
        
    $num count($args);

        if (
    $num >= 1) {
            if (
    $num ==2) {
                
    $year array_pop($args);
            } else {
                
    $tmp getdate();
                
    $year $tmp['year'];
            }
            
    $week array_pop($args);
            
    $day firstkw($year) + (($week -) * 24 60 60);
            
    $arr = array();
            for (
    $i 0$i 7$i++) {
                
    $arr[] = date("d/m/Y"$day);
                
    $day += 24 60 60;
            }
            return 
    $arr;
        }
        
    /* If we land here we have an error */
        
    trigger_error(sprintf("%s requires at least 1 parameter"__FUNCTION__), E_USER_WARNING);
        return 
    null;
    }

    print_r(weekno2date(1));
    print_r(weekno2date(37));
    print_r(weekno2date(372006));
    print_r(weekno2date(372010));
    ?>
    pi_61593364
    Nav. een vraagje van iemand in #dig over wat de beste manier was om een extensie op te vragen van een bestand.. ik kwam ergens pathinfo tegen en toen bleek dat split icm end langzamer was. Dat wilde ik even testen.. dat bleek correct. En toen dacht ik, eens kijken hoe het met preg_split zit, want dat is langzamer maar hoeveel langzamer.. het resultaat is verrassend..

    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
    include_once("/home/wesleys/sbox/php/etc/env.php");
    include_once(
    "Util.php"); // get_microtime()

    function get_ext_split($file) {
        
    $arr split("\."$file);
        return 
    end($arr);
    }

    function 
    get_ext_psplit($file) {
        
    $arr preg_split("/\./"$file);
        return 
    end($arr);
    }

    function 
    get_ext_pathinfo($file) {
        
    $arr pathinfo($file);
        return 
    $arr['extension'];
    }

    function 
    get_ext_test($file$callback$max) {
        
    $start get_microtime();
        for (
    $i 0$i $max; ++$i) {
            
    $callback($file);
        }
        
    $end get_microtime();
        
    printf("%s [run %s time(s)]: %.5f\n"$callback$max$end $start);
    }

    $bestand "file.txt";
    foreach(array(
    "get_ext_pathinfo""get_ext_split""get_ext_psplit") as $v) {
        
    get_ext_test($bestand$v500000);
    }
    ?>


    get_ext_pathinfo [run 500000 time(s)]: 2.70333
    get_ext_split [run 500000 time(s)]: 4.89224
    get_ext_psplit [run 500000 time(s)]: 2.25432

    poep, explode is sneller dan preg_split, split is langzamer.. heerlijke naamgeving weer

    [ Bericht 1% gewijzigd door slakkie op 13-09-2008 10:11:49 ]
    pi_61610197
    Ik ben bezig met een scriptje dat twee verschillende plaatjes moet kunnen laten zien, maar die plaatjes zijn wel gerelateerd. En er is keuze uit meerdere plaatjes.

    Ik kan heel goed een random waarde uit een array halen en de index in (bijvoorbeeld) een cookie opslaan zodat die bij een tweede aanroep weer gebruikt kan worden. Probleem is alleen dat het scriptje twee keer vanuit dezelfde pagina wordt aangeroepen (met iets andere parameters) en dus (waarschijnlijk) twee maal parallel wordt uitgevoerd op de server.

    En dan wordt het wat lastiger. Bij het leveren van het eerste plaatje mag er een willekeurig plaatje worden gekozen. Dat gaat goed. Het tweede plaatje moet echter bij het eerste plaatje passen, maar de tweede request is al bij de server voordat de eerste klaar is. Is er een manier om te zorgen dat het tweede request met het eerste kan communiceren?

    Een refresh naar zichzelf na een korte pauze kan vast, maar dat vind ik geen nette oplossing.
    pi_61619590
    In het tweede plaatje ook de index vaststellen en in de eerste controleren of die al gebruikt is?

    Ik heb ook een vraagje : ik heb een try/catch blok waarin verschillende exceptions gegooid kunnen worden. Nu wil ik bij 2 soorten exceptions dat het zelfde gehandeld word, en de rest wat anders.

    In het kort dus : ik wil in 1 catch blok 2 soorten exceptions vangen. Hoe dat ik dat?
    pi_61620606
    quote:
    Op zondag 14 september 2008 14:08 schreef super-muffin het volgende:
    In het tweede plaatje ook de index vaststellen en in de eerste controleren of die al gebruikt is?

    Ik heb ook een vraagje : ik heb een try/catch blok waarin verschillende exceptions gegooid kunnen worden. Nu wil ik bij 2 soorten exceptions dat het zelfde gehandeld word, en de rest wat anders.

    In het kort dus : ik wil in 1 catch blok 2 soorten exceptions vangen. Hoe dat ik dat?
    try { /* stuff */ } catch (Exception $e || MyException $e) { /* more stuff */ }

    Zoiets?
    pi_61622976
    Nope, dan krijg ik een syntax error.

    Kan het ook oplossen door alles te vangen in 1 blok en dan te kijken wat voor exception het is en dan de goede actie ondernemen. Niet heel erg netjes, maar het werkt wel.
    pi_61625861
    quote:
    Op zondag 14 september 2008 16:30 schreef super-muffin het volgende:
    Nope, dan krijg ik een syntax error.

    Kan het ook oplossen door alles te vangen in 1 blok en dan te kijken wat voor exception het is en dan de goede actie ondernemen. Niet heel erg netjes, maar het werkt wel.
    Je zou eventueel gewoon 2 catchblokken kunnen maken voor beide exceptions en daar dan een functie aanroepen...
    pi_61628452
    quote:
    Op zaterdag 13 september 2008 22:17 schreef Light het volgende:
    En dan wordt het wat lastiger. Bij het leveren van het eerste plaatje mag er een willekeurig plaatje worden gekozen. Dat gaat goed. Het tweede plaatje moet echter bij het eerste plaatje passen, maar de tweede request is al bij de server voordat de eerste klaar is. Is er een manier om te zorgen dat het tweede request met het eerste kan communiceren?
    Je kan het plaatje door een script laten server, waarbij je in het script een sessie variabele zet.
    Door bij allebei de plaatjes te checken of de andere al gezet is moet je ze wel bij elkaar kunnen krijgen, ongeacht welke request het eerste uitgevoerd wodt
    pi_61630573
    Tering Veel Posts
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      maandag 15 september 2008 @ 16:55:09 #19
    25889 Sitethief
    Fulltime Flapdrol
    pi_61649474
    Ik kon, ooit, in een ver verleden php scriptjes schrijven.
    Nu wou ik laatst een simpele php pagina schrijven maar nu lukt het me niet meer :X.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?php
       // Maak verbinding
        mysql_connect("lol",
       "lol", "lol");
      
       // Selecteer de database
       mysql_select_db("oib1", $localhost);
      
       // Maak een SQL-query
       $sql = 'SELECT `user_name`,`user_posts` FROM `lz_users` ORDER BY `user_posts` DESC LIMIT 0, 60 '; 
      
       // Voer die query uit
       $resultaat = mysql_query($sql);
      
       // Aantal rijen
       $aantal = mysql_num_rows($resultaat);
       echo "$aantal Top posters op het SWC:<br>\n";
      
       // Maak een lus om alle items te laten zien
       while ($record = mysql_fetch_object($resultaat)) {
          echo "<b>$record->user_name</b> $record->user_posts <br>\n";
       }
    ?> 

    Nee, lol is niet het echte wachtwoord ;)

    Ik krijg deze foutmelding:
    1
    2
    3
    4
    5
    6
    Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in [[hierstond een url]]test.php on line 21

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in [[hierstond een url]]test.php on line 30
    Top posters op het SWC:

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in [[hierstond een url]]test.php on line 34

    Waarschijnlijk heb ik de verkeerde functies gebruikt om te doen wat ik wil :X.
    Stroek: Sitethief, die is heel groot en sterk :Y.
    Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
      maandag 15 september 2008 @ 17:03:06 #20
    46383 Tiemie
    sowieso wel!
    pi_61649750
    Doe eens
    1
    2
    3
    <?php
     $resultaat 
    mysql_query($sql) or die(mysql_error());
    ?>


    En je weet precies wáár het mis gaat.

    Je hebt niet de verkeerde functies gebruikt, al is mysql_fetch_assoc sneller dan mysql_fetch_object.

    De verbinding is niet goed gemaakt;
    quote:
    Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in [[hierstond een url]]test.php on line 21
    Met mysql_select_db probeer je de database te selecteren, maar dat lukt niet, want je geeft als 2e argument een ongedefinieerde variabele mee.

    1
    2
    3
    <?php
    $localhost 
    mysql_connect("lol",  "lol""lol");
    ?>
      maandag 15 september 2008 @ 17:13:55 #21
    107951 JortK
    Immer kwaliteitsposts
    pi_61650108
    quote:
    Op zondag 14 september 2008 18:41 schreef slakkie het volgende:

    [..]

    Je zou eventueel gewoon 2 catchblokken kunnen maken voor beide exceptions en daar dan een functie aanroepen...
    Ik heb het maar zo opgelost :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    try
    {
        
    /* */
    } catch (Exception $e)
    {
        if (
    $e instanceof MyException OR $e instanceof MyOtherException)
        {
            
    /* afhandelen */
        
    } else
        {
            
    /* afhandelen */
        
    }
    }
    ?>


    Werkt precies het zelfde en een functie is er dan niet voor nodig. :)
    pi_61660544
    quote:
    Op zondag 14 september 2008 20:22 schreef Xcalibur het volgende:

    [..]

    Je kan het plaatje door een script laten server, waarbij je in het script een sessie variabele zet.
    Door bij allebei de plaatjes te checken of de andere al gezet is moet je ze wel bij elkaar kunnen krijgen, ongeacht welke request het eerste uitgevoerd wodt
    Check, dat werkt. Het gaat ook goed bij simultane requests met een verschillend id, die dan een verschillend plaatje moeten opleveren. Perfecte oplossing dus.
      dinsdag 16 september 2008 @ 00:54:16 #24
    25889 Sitethief
    Fulltime Flapdrol
    pi_61664935
    quote:
    Op maandag 15 september 2008 17:03 schreef Tiemie het volgende:
    Doe eens
    [ code verwijderd ]

    En je weet precies wáár het mis gaat.

    :X
    Ik kreeg van de webmaster te horen dat ik standaard 5 bestanden moet includen. Heb ik inmiddels gedaan, maar nu krijg ik dit:

    1Fatal error: Call to undefined function hide_email() in [url]wwwroot\locale\Dutch\global.php on line 153


    Terwijl ik de enigste ben op die server die dat krijgt.
    Stroek: Sitethief, die is heel groot en sterk :Y.
    Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
    pi_61666544
    quote:
    Op maandag 15 september 2008 22:27 schreef Light het volgende:

    [..]

    Check, dat werkt. Het gaat ook goed bij simultane requests met een verschillend id, die dan een verschillend plaatje moeten opleveren. Perfecte oplossing dus.
    pi_61677121
    tvp
      dinsdag 16 september 2008 @ 16:30:24 #27
    226188 baba_ganesh_
    Philosophy of mind
    pi_61677888
    #include active_topics

    tvp
    Take even the most insignificant word of the guru as an order and obey it....
    I am the master of my faith, my destiny I control
    pi_61695353
    Ik heb een vraagje, stel ik wil veel dingen in een dynamisch document aanpassen echter pas vanaf de positie <body> en tot de positie </body>

    Hoe kan ik hier tussen alles veranderen zonder problemen te krijgen? dus alles tussen body en /body?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61695747
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    $content 
    file_get_contents($file);
    $content explode("\n"$content);
    $mayprint true;
    $new_content;
    foreach(
    $content as $v) {
      if (
    preg_match('/<body>/'$v) { $mayprint false; }
      if (
    preg_match('/<\/body>/'$v) { $new_content .= "New Content" "\n" ;  $mayprint true; }
      if (
    $mayprint) { $new_content .=  $v "\n"; }
    }
    ?>


    Is een manier, of je maakt een template:
    1
    2
    3
    4
    5
    6
    <html>
    <!-- stuff goes here !-->
    <body>
    %DYNAMIC_CONTENT%
    </body>
    </html>


    1
    2
    3
    4
    <?php
    $content 
    file_get_contents($template);
    $content str_replace("%DYNAMIC_CONTENT%""New content"$content);
    ?>


    En je bent klaar.

    [ Bericht 5% gewijzigd door slakkie op 17-09-2008 09:37:07 ]
    pi_61696247
    Super slakkie!!! dat is idd handig, dan gelijk nog een vraag.

    Stel je hebt het volgende
    1
    2
    <td>dit is mijn
     vraag</td>


    hoe kan ik zorgen dat tussen de tags geen enters mogelijk zijn? :D
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61697505
    quote:
    Op woensdag 17 september 2008 09:54 schreef Chandler het volgende:
    Super slakkie!!! dat is idd handig, dan gelijk nog een vraag.

    Stel je hebt het volgende
    [ code verwijderd ]

    hoe kan ik zorgen dat tussen de tags geen enters mogelijk zijn?
    Wat dacht je van str_replace("\n", "", $tekst) ?
    pi_61697837
    op zich logisch dat je dat zou zeggen maar ik wil dit alleen binnen elementen

    dus bv
    1
    2
    3
    4
    5
    <tr>
        <td>korte tekst</td>
        <td>Heel erg lange
     text </td>
    </tr>


    veranderen in

    1
    2
    3
    4
    <tr>
        <td>korte tekst</td>
        <td>Heel erg lange text </td>
    </tr>


    want op jou manier zou het er zo uit zien

    1<tr>    <td>korte tekst</td>    <td>Heel erg lange text </td></tr>


    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      woensdag 17 september 2008 @ 11:17:46 #33
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_61697915
    quote:
    Op woensdag 17 september 2008 11:14 schreef Chandler het volgende:
    op zich logisch dat je dat zou zeggen maar ik wil dit alleen binnen elementen

    dus bv
    [ code verwijderd ]

    veranderen in
    [ code verwijderd ]

    want op jou manier zou het er zo uit zien
    [ code verwijderd ]

    Dus je wilt een hele lange tekst zonder enters??
    Denk je dat dat nog wel leesbaar blijft voor je gebruikers dan??
      woensdag 17 september 2008 @ 11:18:58 #34
    75592 GlowMouse
    l'état, c'est moi
    pi_61697949
    Probeer het eens met een regex. Alle newlines tussen > en < moeten weg, waarbij er tussen > en < geen andere tags mogen staan.
    quote:
    Op woensdag 17 september 2008 11:17 schreef ursel het volgende:

    [..]

    Dus je wilt een hele lange tekst zonder enters??
    Denk je dat dat nog wel leesbaar blijft voor je gebruikers dan??
    Gebruikers zitten nooit in de broncode
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61698776
    Dit is een manier.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    $output 
    "<tr>
      <td>korte tekst</td>
      <td>Heel erg lange
     text </td>
    </tr>"
    ;

    $output str_replace("\n"" "$output);
    $output preg_replace("/(>)\s+(<)/""$1\n$2"$output);
    $output preg_replace("/ {2,}/"" "$output);
    ?>


    [ Bericht 8% gewijzigd door slakkie op 17-09-2008 12:25:54 ]
    pi_61699152
    quote:
    Op woensdag 17 september 2008 11:14 schreef Chandler het volgende:
    op zich logisch dat je dat zou zeggen maar ik wil dit alleen binnen elementen

    dus bv
    [ code verwijderd ]

    veranderen in
    [ code verwijderd ]

    want op jou manier zou het er zo uit zien
    [ code verwijderd ]


    Voor luie mensen is er ook nog zoiets als Tidy

    Deze module moet wél op de server geïnstalleerd zijn, maar is zeker voor sites (b.v. met WYSIWYG - Editors) waar de gebruiker content-pagina's aan kan maken een simpele én handige manier om te zorgen voor geldige (X)HTML.
      woensdag 17 september 2008 @ 12:16:13 #37
    75592 GlowMouse
    l'état, c'est moi
    pi_61699223
    De methode van Slakkie vind ik wel mooi. Je zou alleen nog rtrim kunnen gebruiken zodat indention behouden blijft, en regel 17 staat er voor niets.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      woensdag 17 september 2008 @ 12:23:38 #38
    14612 _GdR_
    3.1415926536
    pi_61699369
    Hallo, ik heb een probleempje waar ik vreemd genoeg nog nooit tegenaan gelopen bent.

    Ik heb een database met product informatie. Daarin komen o.a. ook de afmetingen van het product te staan.
    Nu moeten die uit gelezen worden van klein naar groot.

    Maar omdat de afmetingingen geschreven worden als b.v.: 100 x 50 Kan ik dus geen float tabel gebruiken maar gewoon een varchar.

    Nu heb ik het volgende wat uit gespuugd wordt:

    10 x 10
    100 x 20
    120 x 10
    20 x 5

    Terwijl dus 20x5 op de 2de positie zal moeten komen.
    Moet ik nu dus gewoon 2tabellen aanmaken (hoogte & breedte) of is hier een sql truukje voor?

    Zojah vertel het me bespaard mij weer tijd.
    Alvast bedankt.
    Out! out! flapoor your father! | DaFan's moeder
      woensdag 17 september 2008 @ 12:26:33 #39
    75592 GlowMouse
    l'état, c'est moi
    pi_61699451
    Kolom met breedte, kolom met hoogte, en dan sorteren op breedte, op hoogte, of op het product van beide.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61699528
    quote:
    Op woensdag 17 september 2008 12:16 schreef GlowMouse het volgende:
    De methode van Slakkie vind ik wel mooi. Je zou alleen nog rtrim kunnen gebruiken zodat indention behouden blijft, en regel 17 staat er voor niets.
    Ware het niet dat die eerste methode niet werkte in alle gevallen en de huidige methode wel. Plus dat deze methode factor 3 sneller is..
      woensdag 17 september 2008 @ 12:32:46 #41
    14612 _GdR_
    3.1415926536
    pi_61699583
    quote:
    Op woensdag 17 september 2008 12:26 schreef GlowMouse het volgende:
    Kolom met breedte, kolom met hoogte, en dan sorteren op breedte, op hoogte, of op het product van beide.
    Dat weet ik. Maar sommige producten hebben verschilende afmetingen. sommige hxb of hxbxd etc.
    Out! out! flapoor your father! | DaFan's moeder
    pi_61699588
    quote:
    Op woensdag 17 september 2008 12:23 schreef _GdR_ het volgende:
    Hallo, ik heb een probleempje waar ik vreemd genoeg nog nooit tegenaan gelopen bent.

    Ik heb een database met product informatie. Daarin komen o.a. ook de afmetingen van het product te staan.
    Nu moeten die uit gelezen worden van klein naar groot.

    Maar omdat de afmetingingen geschreven worden als b.v.: 100 x 50 Kan ik dus geen float tabel gebruiken maar gewoon een varchar.

    Nu heb ik het volgende wat uit gespuugd wordt:

    10 x 10
    100 x 20
    120 x 10
    20 x 5

    Terwijl dus 20x5 op de 2de positie zal moeten komen.
    Moet ik nu dus gewoon 2tabellen aanmaken (hoogte & breedte) of is hier een sql truukje voor?

    Zojah vertel het me bespaard mij weer tijd. :)
    Alvast bedankt.
    Ja dat kán wel, het is netter om apart op te slaan, maar als het sorteren alleen op eerste characters word gedaan zou je hem kunnen casten naar een decimal ;)

    1
    2
    3
    SELECT afmeting, CAST( afmeting AS decimal( 10, 2 ) ) AS afmeting2
    FROM tbl_producten
    ORDER BY afmeting2 ASC
      woensdag 17 september 2008 @ 12:43:37 #43
    14612 _GdR_
    3.1415926536
    pi_61699856
    quote:
    Op woensdag 17 september 2008 12:32 schreef Tiemie het volgende:

    [..]

    Ja dat kán wel, het is netter om apart op te slaan, maar als het sorteren alleen op eerste characters word gedaan zou je hem kunnen casten naar een decimal
    [ code verwijderd ]

    ik dank u hartelijk.
    Out! out! flapoor your father! | DaFan's moeder
    pi_61700414
    Ik probeer een eenvoudige bevestigings e-mail te versturen via mail(); echter komt hij niet aan? Ik heb een vermoeden dat hij als spam wordt gezien, nu las ik wat over de headers ofzo?

    Iemand enig idee?

    Of anders een andere eenvoudige oplossing voor het verzenden van e-mail vanuit je PHP scriptje?
    You have to come back with me! Back to the Future!
    pi_61700504
    quote:
    Op woensdag 17 september 2008 13:12 schreef Doc.Brown het volgende:
    Ik probeer een eenvoudige bevestigings e-mail te versturen via mail(); echter komt hij niet aan? Ik heb een vermoeden dat hij als spam wordt gezien, nu las ik wat over de headers ofzo?

    Iemand enig idee?

    Of anders een andere eenvoudige oplossing voor het verzenden van e-mail vanuit je PHP scriptje?
    Ik gebruik meestal htmlMineMail voor het versturen van mail.
    pi_61700786
    quote:
    Op woensdag 17 september 2008 13:17 schreef Tiemie het volgende:

    [..]

    Ik gebruik meestal htmlMineMail voor het versturen van mail.
    Klinkt goed, maar waar kan ik hem downloaden? Bij de Downloads pagina kan ik wel door de directories bladeren, maar als ik een PHP file download krijg ik een bestand van 0kb.
    You have to come back with me! Back to the Future!
    pi_61701278
    quote:
    Op woensdag 17 september 2008 13:30 schreef Doc.Brown het volgende:

    [..]

    Klinkt goed, maar waar kan ik hem downloaden? Bij de Downloads pagina kan ik wel door de directories bladeren, maar als ik een PHP file download krijg ik een bestand van 0kb.
    http://tiemez.nl/htmlMimeMail5/htmlMimeMail5.tar.gz

    (openen met TAR of winRAR)
    pi_61701298
    quote:
    Thanks! Even proberen zo!
    You have to come back with me! Back to the Future!
    pi_61701632
    Wil niet echt werken helaas, als ik de default instellingen gebruik ontvang ik hem alleen op een gmail adres, en dan wel in de spam map. Op mn andere accounts komt hij niet aan. Als ik $mail->send(array(...), sendmail); gebruik dan komt hij ook niet aan.

    Hoe doe jij het dan precies Tiemie?
    You have to come back with me! Back to the Future!
    pi_61701909
    quote:
    Op woensdag 17 september 2008 @ 14:06 schreef Doc.Brown het volgende:
    Wil niet echt werken helaas, als ik de default instellingen gebruik ontvang ik hem alleen op een gmail adres, en dan wel in de spam map. Op mn andere accounts komt hij niet aan. Als ik $mail->send(array(...), sendmail); gebruik dan komt hij ook niet aan.

    Hoe doe jij het dan precies Tiemie?
    Ik krijg een beetje het idee dat je server geregistreerd staat als spamserver. Dit heeft weinig met PHP te maken, het mailtje wordt gewoon verzonden, het wordt er alleen door de andere e-mail dienst uitgefilterd.
    pi_61702002
    quote:
    Op woensdag 17 september 2008 14:17 schreef mcDavid het volgende:

    [..]

    Ik krijg een beetje het idee dat je server geregistreerd staat als spamserver. Dit heeft weinig met PHP te maken, het mailtje wordt gewoon verzonden, het wordt er alleen door de andere e-mail dienst uitgefilterd.
    Hm, ja dat zou best kunnen, onlangs kreeg ik nog alle mail terug die ik probeerde te verzenden met een melding dat de client host geblocked was. Maar als het goed is zou dat weer opgelost moeten zijn. Maar zou kunnen van niet dan ja. Zit er dus iemand op dezelfde server de boel goed te verzieken, was namelijk eerder ook al eens gebeurd.

    Dan maar proberen met een externe SMTP server te verbinden, bijvoorbeeld Gmail.

    [ Bericht 3% gewijzigd door Doc.Brown op 17-09-2008 14:32:52 ]
    You have to come back with me! Back to the Future!
    pi_61702430
    quote:
    Op woensdag 17 september 2008 14:17 schreef mcDavid het volgende:

    [..]

    Ik krijg een beetje het idee dat je server geregistreerd staat als spamserver. Dit heeft weinig met PHP te maken, het mailtje wordt gewoon verzonden, het wordt er alleen door de andere e-mail dienst uitgefilterd.
    Dat idee heb ik ook. Ik heb met die class nooit dat een mail in de spam-box in gmail OF ongewenste mail (hotmail) komt.
    quote:
    Op woensdag 17 september 2008 14:20 schreef Doc.Brown het volgende:

    [..]
    Dan maar proberen met een externe SMTP server te verbinden, bijvoorbeeld Gmail.
    Hou wel rekening met het limiet dat gmail aanhoud. met bedrukking tot het aantal mails per uur/dag en aantal adressen (TO)
    pi_61702856
    quote:
    Op woensdag 17 september 2008 14:37 schreef Tiemie het volgende:

    [..]

    Dat idee heb ik ook. Ik heb met die class nooit dat een mail in de spam-box in gmail OF ongewenste mail (hotmail) komt.
    [..]

    Hou wel rekening met het limiet dat gmail aanhoud. met bedrukking tot het aantal mails per uur/dag en aantal adressen (TO)
    Ow.. wat voor limiet moet ik dan aan denken?

    Edit: is dat dit limiet?
    quote:
    In een poging spam en misbruik te bestrijden, schakelt Google je account tijdelijk uit als je een bericht verzendt aan meer dan 500 ontvangers, of als je een groot aantal berichten verzendt die niet bezorgd kunnen worden. Als je een POP- of IMAP-client gebruikt (Microsoft Outlook of Apple Mail, e.g.), kun je slechts een bericht verzenden aan 100 mensen tegelijk. Je account wordt binnen 24 uur weer ingeschakeld.
    Het gaat om een soort inschrijvingsscriptje en diegene die inschrijft krijgt een mailtje en ik krijg een mailtje. Dus per inschrijving worden 2 mailtjes verstuurd. Hoe vaak per dag wisselt eigenlijk. Maar geen 100+ per 24 uur.

    [ Bericht 20% gewijzigd door Doc.Brown op 17-09-2008 15:09:23 ]
    You have to come back with me! Back to the Future!
    pi_61703416
    quote:
    Op woensdag 17 september 2008 @ 14:53 schreef Doc.Brown het volgende:

    [..]

    Ow.. wat voor limiet moet ik dan aan denken?

    Edit: is dat dit limiet?
    [..]

    Het gaat om een soort inschrijvingsscriptje en diegene die inschrijft krijgt een mailtje en ik krijg een mailtje. Dus per inschrijving worden 2 mailtjes verstuurd. Hoe vaak per dag wisselt eigenlijk.
    Dat zou dan goed moeten gaan, zolang je maar niet mailtjes naar 100 of meer mensen tegelijk gaat sturen...
    Just to be shure zou je een nieuwe gmail account aan kunnen maken, en die koppelen aan je eigen account.

    Ohja en pas op dat je je script goed beveiligd.. het zou zonde zijn als je straks geblokkeerd bent doordat één of andere spambot je mailform gevonden heeft.
    pi_61704592
    quote:
    Op woensdag 17 september 2008 15:13 schreef mcDavid het volgende:

    [..]

    Dat zou dan goed moeten gaan, zolang je maar niet mailtjes naar 100 of meer mensen tegelijk gaat sturen...
    Just to be shure zou je een nieuwe gmail account aan kunnen maken, en die koppelen aan je eigen account.

    Ohja en pas op dat je je script goed beveiligd.. het zou zonde zijn als je straks geblokkeerd bent doordat één of andere spambot je mailform gevonden heeft.
    Gelukkig

    Hmja beveiligen, het is niet zo zeer een mailform maar een onderdeel van een script. Heb dus een inschrijfformulier waar men hun NAW gegevens etc. kunnen invullen. Na submit wordt het weggeschreven en een standaard mailtje met enkele variabelen verstuurd naar diegene die ingeschreven heeft. Zelf ontvang ik dan ook nog een standaard mailtje.

    Dus het zal wel meevallen vermoed ik met spambots?
    You have to come back with me! Back to the Future!
    pi_61704720
    Tnx Slakkie!!!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61706018
    quote:
    Op woensdag 17 september 2008 @ 15:54 schreef Doc.Brown het volgende:

    [..]

    Gelukkig

    Hmja beveiligen, het is niet zo zeer een mailform maar een onderdeel van een script. Heb dus een inschrijfformulier waar men hun NAW gegevens etc. kunnen invullen. Na submit wordt het weggeschreven en een standaard mailtje met enkele variabelen verstuurd naar diegene die ingeschreven heeft. Zelf ontvang ik dan ook nog een standaard mailtje.

    Dus het zal wel meevallen vermoed ik met spambots?
    alle client-side scripts e.d. kunnen aangepast worden. Dus het is altijd zaak dat je alle variabelen die je met PHP ophaalt d.m.v. $_GET, $_POST of $_REQUEST checkt of ze geen schadelijke stukjes php-code (of in dit geval e-mail header info) o.i.d. bevatten.
    http://nl.php.net/manual/en/intro.filter.php FILTER_SANITIZE_EMAIL is een handige in deze.
      woensdag 17 september 2008 @ 17:10:40 #58
    75592 GlowMouse
    l'état, c'est moi
    pi_61706608
    quote:
    Op woensdag 17 september 2008 12:30 schreef slakkie het volgende:

    [..]

    Ware het niet dat die eerste methode niet werkte in alle gevallen en de huidige methode wel. Plus dat deze methode factor 3 sneller is..
    Ik had niet zoveel tijd, maar deze is nog iets mooier omdat indention behouden blijft.
    1
    2
    3
    <?php
    $output 
    preg_replace("/([^>]+)\\n([^<]+)/""$1 $2"$output);
    ?>
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61707802
    je behoudt indentation, maar je breekt andere dingen:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <?php
    $output 
    "<tr>
      <td>korte tekst</td>
      <td>Heel erg lange
      text </td>
      <td>hello
      </td>
    </tr>
    <tr>"
    ;

    function 
    parse_output1($output) {
        
    $output preg_replace("/([^>]+)\n(^<]+)/""$1 $2"$output);
        return 
    preg_replace("/(\S+) {2,}/""$1 "$output) . "\n";
    }

    function 
    parse_output2($output) {
        
    $output str_replace("\n"" "$output);
        
    $output preg_replace("/(>)\s+(<)/""$1\n$2"$output);
        return 
    preg_replace("/ {2,}/"" "$output) . "\n";
    }

    print 
    parse_output1($output) . "\n";
    print 
    parse_output2($output) . "\n";
    ?>


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <tr>
      <td>korte tekst</td>
      <td>Heel erg lange text </td> <td>hello </td>
    </tr> <tr>

    <tr>
    <td>korte tekst</td>
    <td>Heel erg lange text </td>
    <td>hello </td>
    </tr>
    <tr>
    pi_61707941
    quote:
    Op woensdag 17 september 2008 16:48 schreef mcDavid het volgende:

    [..]

    alle client-side scripts e.d. kunnen aangepast worden. Dus het is altijd zaak dat je alle variabelen die je met PHP ophaalt d.m.v. $_GET, $_POST of $_REQUEST checkt of ze geen schadelijke stukjes php-code (of in dit geval e-mail header info) o.i.d. bevatten.
    http://nl.php.net/manual/en/intro.filter.php FILTER_SANITIZE_EMAIL is een handige in deze.
    Dankje voor je hulp
    You have to come back with me! Back to the Future!
      woensdag 17 september 2008 @ 18:48:59 #61
    75592 GlowMouse
    l'état, c'est moi
    pi_61708921
    quote:
    Op woensdag 17 september 2008 18:04 schreef slakkie het volgende:
    je behoudt indentation, maar je breekt andere dingen:
    [ code verwijderd ]


    [ code verwijderd ]


    Kleine moeite om te zorgen dat regels die op een tag eindigen niet meegenomen mogen worden
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61727849
    Ik heb weer een klein vraagje, stel ik wil een woord vervangen in een tekst.

    Bv
    1
    2
    3
    Hello _world_ 

    How is your world today?


    nu wil ik alleen hello en world vervangen waar er geen _ voor of achter staat, hoe krijg ik dit voor elkaar, ik heb al gekeken naar eregi replace, maar aangezien die straks in php 6 schijnt te verdwijnen heb ik preg_replace bekeken maar kon daar niet echt wijs uit worden (regexjes)..

    Ik heb het volgende geprobeerd /([^_]Hello[^_])+/ maar dit werkt niet :{ anyone? :D
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61727997
    kan je niet gewoon [spatie]world[spatie] replacen?
    pi_61728363
    Helaas niet omdat, want stel ik doe dit met HTML codes dan zou het voorbeeld er zo uit kunnen zien

    1
    2
    3
    4
    <tr>
        <td>Hello _world_</td>
        <td>Hello world</td>
    </tr>


    snap je? :D
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61728585
    En als je [spatie]world én world[spatie] vervangt?

    ...ik zit nog niet zo in de reguliere expressies, misschien dat het daarmee makkelijker kan...
    maar wat een optie is, is éérst "_world_" vervangen door iets anders (bijv "blaat", vervolgens "world" vervangen, en dan "blaat" weer vervangen door "_world_".
    Afhankelijk van de toepassing zou je "_world_" ook kunnen vervangen door een variabele met waarde "_world_", dan kun je die laatste stap overslaan.
    (www.mcDmetzijnhoutjetouwtjecode.nl)

    [ Bericht 31% gewijzigd door mcDavid op 18-09-2008 12:46:25 ]
      donderdag 18 september 2008 @ 12:39:03 #66
    75592 GlowMouse
    l'état, c'est moi
    pi_61728698
    De gegeven regex werkt toch aardig. Met een kleine aanpassing:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $str 
    '<tr>
        <td>Hello _world_</td>
        <td>Hello world</td>world
    world
    </tr>'
    ;

    $str preg_replace('/([^_])world([^_])/''$1hoi!$2'$str);
    echo 
    $str
    ?>

    1
    2
    3
    4
    5
    <tr>
        <td>Hello _world_</td>
        <td>Hello hoi!</td>hoi!
    hoi!
    </tr>
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61728996
    Ik ben dus al aardig op de goede weg en hoe is het mogelijk om alle karakters te blokken behalve tekstuele tekens?? Een duw in de goede richting is altijd goed

    [ Bericht 24% gewijzigd door Chandler op 18-09-2008 13:02:15 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61729262
    quote:
    Op donderdag 18 september 2008 @ 12:51 schreef Chandler het volgende:
    Ik ben dus al aardig op de goede weg en hoe is het mogelijk om alle karakters te blokken behalve tekstuele tekens??
    http://nl.php.net/manual/en/intro.filter.php
    FILTER_SANITIZE_SPECIAL_CHARS

    of bedoel je echt alleen a t/m z en A t/m Z?
    pi_61729404
    Ik doelde op alle karakters behalve de tekstuele en nummerieke.

    Hmm, nu kom ik achter een slash in de tekst niet mogelijk is ik dacht dit te verhelpen door er een \ voor te zetten maar dat werkt niet? anyone?

    1/2Procent
    1'/([^_])1\/2Procent'([^_])/'


    Bij welke karakters moet escapen? of hoe?

    [ Bericht 82% gewijzigd door Chandler op 18-09-2008 13:37:41 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61730351
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sequence     Meaning
    \n    linefeed (LF or 0x0A [img]http://forum.fok.nl/templates/foksilver/i/p/10.gif[/img] in ASCII)
    \r    carriage return (CR or 0x0D [img]http://forum.fok.nl/templates/foksilver/i/p/13.gif[/img] in ASCII)
    \t    horizontal tab (HT or 0x09 (9) in ASCII)
    \v    vertical tab (VT or 0x0B [img]http://forum.fok.nl/templates/foksilver/i/p/11.gif[/img] in ASCII) (since PHP 5.2.5)
    \f    form feed (FF or 0x0C [img]http://forum.fok.nl/templates/foksilver/i/p/12.gif[/img] in ASCII) (since PHP 5.2.5)
    \\    backslash
    \$    dollar sign
    \"    double-quote
    \[0-7]{1,3}    the sequence of characters matching the regular expression is a character in octal notation
    \x[0-9A-Fa-f]{1,2}    the sequence of characters matching the regular expression is a character in hexadecimal notation 

    bron
    pi_61733688
    Is er ook een functie om deze automatisch te escapen?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61735206
    Addslashes had ik geprobeerd kreeg nog steeds een error

    Maar goed, tis nu avond dus ga druk bezig met andere dingen, bedankt iig (allemaal)
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61736581
    quote:
    Op donderdag 18 september 2008 13:10 schreef Chandler het volgende:
    Ik doelde op alle karakters behalve de tekstuele en nummerieke.

    Hmm, nu kom ik achter een slash in de tekst niet mogelijk is :D ik dacht dit te verhelpen door er een \ voor te zetten maar dat werkt niet? anyone?

    1/2Procent
    [ code verwijderd ]

    Bij welke karakters moet escapen? of hoe?
    Of bijvoorbeeld
    1'#([^_])1/2Procent([^_])#'
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_61742639
    huh? heb je ook een beschrijving van de #?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61743523
    quote:
    Op donderdag 18 september 2008 21:56 schreef Chandler het volgende:
    huh? heb je ook een beschrijving van de #?
    In principe "moet" je een regexp binnen /'es plaatsen: /regexp/, maar je mag het ook binnen # plaatsen, mits je dezelfde characters gebruikt. Als je bijv. een regexp met #regexp# klopt hoef je de / niet te escapen, dus ipv: /\/var\/log\/bla/ kan je dan #/var/log/bla# gebruiken. Zie http://perldoc.perl.org/perlretut.html (onder part 1 basic). Ik heb het zo 123 niet kunnen vinden in de PHP documentatie.
    pi_61744074
    quote:
    Op donderdag 18 september 2008 22:19 schreef slakkie het volgende:

    [..]

    In principe "moet" je een regexp binnen /'es plaatsen: /regexp/, maar je mag het ook binnen # plaatsen, mits je dezelfde characters gebruikt. Als je bijv. een regexp met #regexp# klopt hoef je de / niet te escapen, dus ipv: /\/var\/log\/bla/ kan je dan #/var/log/bla# gebruiken. Zie http://perldoc.perl.org/perlretut.html (onder part 1 basic). Ik heb het zo 123 niet kunnen vinden in de PHP documentatie.
    In PHP mag je in principe alles gebruiken, behalve de backslash (\) en alfanumerieke tekens. Zie ook http://nl.php.net/manual/en/intro.pcre.php
    pi_61744552
    quote:
    Op donderdag 18 september 2008 22:19 schreef slakkie het volgende:
    Ik heb het zo 123 niet kunnen vinden in de PHP documentatie.
    Dat staat gewoon in de introductie :P
    quote:
    The expression must be enclosed in the delimiters, a forward slash (/), for example. Any character can be used for delimiter as long as it's not alphanumeric or backslash (\)

    Een string escapen voor in een regexp doe je trouwens met preg_quote()
    1$re = '#([^_])' . preg_quote($s) . '([^_])#'


    Als je wil dat een woord niet vooraf wordt gegaan of wordt gevolgd door een underscore, dan kan je assertions gebruiken. In dit geval een negative lookbehind assertion (?<!...) en een negative lookahead assertion (?!...):

    1/(?<!_)woord(?!_)/
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_61745645
    quote:
    Op donderdag 18 september 2008 22:45 schreef SuperRembo het volgende:
    Dat staat gewoon in de introductie
    Daar heb ik niet gekeken, zat hier te gluren: http://nl2.php.net/manual/en/reference.pcre.pattern.syntax.php

    De perl tutorial is zoiezo een aanrader voor regular expressions
    pi_61749072
    -knip-

    [ Bericht 50% gewijzigd door Cracka-ass op 19-09-2008 09:29:00 (verkeerde topic) ]
    pi_61749118
    quote:
    Op vrijdag 19 september 2008 @ 03:22 schreef Cracka-ass het volgende:
    Kan iemand mij vertellen waarom mijn button 'active' blijft? Hij blijft altijd ingedrukt zodra ie eenmaal is aangeklikt:
    [ code verwijderd ]
    niet dat het in de verste verte maar iets met PHP of MySQL te maken heeft, maar als je alle declaraties voor een psuedo-class ook aan de gewone class meegeeft, zal er weinig veranderen inderdaad.
    pi_61749375
    Oftewel, stel je css vragen hier: [CSS] voor dummies - deel 9
    pi_61751038
    quote:
    Op vrijdag 19 september 2008 06:42 schreef slakkie het volgende:
    Oftewel, stel je css vragen hier: [CSS] voor dummies - deel 9
    Ok, thanks.
    pi_61753359
    Mensen, ik heb een vraag over preg_replace, het is nogal een slome functie is er ook een manier om het sneller te maken? want ik moet namelijk ruim 600 queries doen met preg_replace en dit duurt echt eeuwen!

    Ik heb 50% besparing weten te behalen

    oude structuur
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <?php
    for ($x 0$x $items$x++)
    {
        
    $list mysql_fetch_object($query);

        
    $searchFor[] = '#([^_])' $list->zoek '([^_])#';
        
    $searchFor[] = '#([^_])' ucFirst(strtolower($list->zoek)) . '([^_])#';
        
    $searchFor[] = '#([^_])' strtolower($list->zoek) . '([^_])#';

        
    $replace[] = '$1' $list->vervang '$2';
        
    $replace[] = '$1' $list->vervang '$2';
        
    $replace[] = '$1' $list->vervang '$2';

        
    $text preg_replace($searchFor$replace$text);
    }
    ?>


    nieuwe structuur:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    for ($x 0$x $items$x++)
    {
        
    $list mysql_fetch_object($query);

        
    $searchFor[] = '#([^_])' $list->zoek '([^_])#';
        
    $searchFor[] = '#([^_])' ucFirst(strtolower($list->zoek)) . '([^_])#';
        
    $searchFor[] = '#([^_])' strtolower($list->zoek) . '([^_])#';

        
    $replace[] = '$1' $list->vervang '$2';
        
    $replace[] = '$1' $list->vervang '$2';
        
    $replace[] = '$1' $list->vervang '$2';
    }
    $text preg_replace($searchFor$replace$text);
    ?>


    Maar volgens mij kan het nóg sneller!!!

    [ Bericht 92% gewijzigd door Chandler op 19-09-2008 11:22:01 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 19 september 2008 @ 12:19:05 #85
    85514 ralfie
    !Yvan eht nioj
    pi_61755656
    quote:
    Op vrijdag 19 september 2008 11:03 schreef Chandler het volgende:
    Mensen, ik heb een vraag over preg_replace, het is nogal een slome functie is er ook een manier om het sneller te maken? want ik moet namelijk ruim 600 queries doen met preg_replace en dit duurt echt eeuwen!

    Ik heb 50% besparing weten te behalen

    oude structuur
    [ code verwijderd ]

    nieuwe structuur:
    [ code verwijderd ]

    Maar volgens mij kan het nóg sneller!!!
    Je kunt kijken of case insensitve searches sneller zijn als drie losse. Verder kun je proberen je [^_]'s te vervangen door assertions ik kan me voorstellen dat met name die eerste sneller werkt als assertion
    quote:
    Assertions
    An assertion is a test on the characters following or preceding the current matching point that does not actually consume any characters. The simple assertions coded as \b, \B, \A, \Z, \z, ^ and $ are described above. More complicated assertions are coded as subpatterns. There are two kinds: those that look ahead of the current position in the subject string, and those that look behind it.

    An assertion subpattern is matched in the normal way, except that it does not cause the current matching position to be changed. Lookahead assertions start with (?= for positive assertions and (?! for negative assertions. For example, \w+(?=;) matches a word followed by a semicolon, but does not include the semicolon in the match, and foo(?!bar) matches any occurrence of "foo" that is not followed by "bar". Note that the apparently similar pattern (?!foo)bar does not find an occurrence of "bar" that is preceded by something other than "foo"; it finds any occurrence of "bar" whatsoever, because the assertion (?!foo) is always TRUE when the next three characters are "bar". A lookbehind assertion is needed to achieve this effect.

    Lookbehind assertions start with (?<= for positive assertions and (?<! for negative assertions. For example, (?<!foo)bar does find an occurrence of "bar" that is not preceded by "foo". The contents of a lookbehind assertion are restricted such that all the strings it matches must have a fixed length. However, if there are several alternatives, they do not all have to have the same fixed length. Thus (?<=bullock|donkey) is permitted, but (?<!dogs?|cats?) causes an error at compile time. Branches that match different length strings are permitted only at the top level of a lookbehind assertion. This is an extension compared with Perl 5.005, which requires all branches to match the same length of string. An assertion such as (?<=ab(c|de)) is not permitted, because its single top-level branch can match two different lengths, but it is acceptable if rewritten to use two top-level branches: (?<=abc|abde) The implementation of lookbehind assertions is, for each alternative, to temporarily move the current position back by the fixed width and then try to match. If there are insufficient characters before the current position, the match is deemed to fail. Lookbehinds in conjunction with once-only subpatterns can be particularly useful for matching at the ends of strings; an example is given at the end of the section on once-only subpatterns.

    Several assertions (of any sort) may occur in succession. For example, (?<=\d{3})(?<!999)foo matches "foo" preceded by three digits that are not "999". Notice that each of the assertions is applied independently at the same point in the subject string. First there is a check that the previous three characters are all digits, then there is a check that the same three characters are not "999". This pattern does not match "foo" preceded by six characters, the first of which are digits and the last three of which are not "999". For example, it doesn't match "123abcfoo". A pattern to do that is (?<=\d{3}...)(?<!999)foo
    pi_61756877
    quote:
    Op vrijdag 19 september 2008 11:03 schreef Chandler het volgende:
    Maar volgens mij kan het nóg sneller!!!
    Het is natuurlijk ook geen handig syteem als elk woord mogelijk vervangen kan worden, behalve als er een underscore voor en achter staat. Kan je dat niet omdraaien? Dat zou vele malen sneller zijn.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_61757182
    Hey Ralfie, i werkte idd wel, scheelt maar een klein beetje tijd maar deed het verder goed! super!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61846922
    Hoe kan ik simpel alle values in een array afronden? zonder foreach oid te gebruiken? ik heb al gekeken bij array_walk / array_map maar kan daar weinig uit wijs worden. Kan iemand mij vertellen welke functie te gebruiken is met verwijzing naar een voorbeeld oid?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 23 september 2008 @ 12:37:59 #89
    136730 PiRANiA
    All thinking men are atheists.
    pi_61847939
    quote:
    Op dinsdag 23 september 2008 11:52 schreef Chandler het volgende:
    Hoe kan ik simpel alle values in een array afronden? zonder foreach oid te gebruiken? ik heb al gekeken bij array_walk / array_map maar kan daar weinig uit wijs worden. Kan iemand mij vertellen welke functie te gebruiken is met verwijzing naar een voorbeeld oid?
    array_map("round",$Array);
    toch gewoon? dacht ik hoor
    pi_61848435
    ik heb het met een functie in array_map opgelost, ivm afronden met meer achter de comma tnx!

    Nog en andere vraag; is er ook een versie van implode waarbij de keys van een array gebruikt worden ipv de values?

    -edit-
    array_keys

    [ Bericht 5% gewijzigd door Chandler op 23-09-2008 13:10:05 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 23 september 2008 @ 14:33:36 #91
    137690 Pizzahut
    Het Bora Bora Gebergte
    pi_61850326
    wat ik dus zoek:
    Ik ben bezig met een soort van nieuwssysteem/blog
    Nu heb ik een tekst ingevoerd zoals ik nu gedaan heb. Nu wil ik dat er na zoveel woorden een <br> komt o.i.d. of dat als ik een enter invoer dat er ook daadwerkelijk een enter inkomt.

    is dit mogelijk? Volgens mij moet ik iets met explode() doen als ik na een aantal woorden een br wil hebben, maar wat moet ik doen als ik automatisch een enter wil?
    Disturbed Mind
    Het leven: Soms ben je de duif, soms het standbeeld.
    pi_61850752
    quote:
    Op dinsdag 23 september 2008 @ 14:33 schreef Pizzahut het volgende:
    wat ik dus zoek:
    Ik ben bezig met een soort van nieuwssysteem/blog
    Nu heb ik een tekst ingevoerd zoals ik nu gedaan heb. Nu wil ik dat er na zoveel woorden een <br> komt o.i.d. of dat als ik een enter invoer dat er ook daadwerkelijk een enter inkomt.

    is dit mogelijk? Volgens mij moet ik iets met explode() doen als ik na een aantal woorden een br wil hebben, maar wat moet ik doen als ik automatisch een enter wil?
    http://www.php.net/manual/en/function.wordwrap.php hier staat een mooi voorbeeld daarvan. ik zoek nog even door voor die enter -> br
    -edit- that would be this one: http://www.php.net/manual/en/function.nl2br.php

    [ Bericht 4% gewijzigd door mcDavid op 23-09-2008 21:16:12 ]
    pi_61859093
    Ik ben al een tijdje met php bezig en wil me gaan verdiepen in het objectgeoriënteerd programeren in deze taal. Nu heb ik al wat gezocht op onze grote vriend google, maar de tutorials die ik daar vind zijn oud, incompleet of worden zo hard afgekraakt in de comments dat ik er niet eens 1 letter van wil gaan overtypen

    Nu vroeg ik me af of iemand hier nog een betere recource weet waar echt in de uitleg ook echt iets gebouwd word ipv de stof te bespreken. Als ik er echt iets mee kan bouwen begrijp ik het vaak stukken sneller!

    Iemand?
      woensdag 24 september 2008 @ 21:33:46 #94
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_61888329
    Even een vraagje,

    Ik doe het volgende altijd: Als een gebruiker inlogd, sla ik de gegevens als voornaam, achternaam, adres, gender etc op in een sessie. Als ik de gegevens nodig heb lees ik ze altijd uit de sessie dmv $_SESSION['gebruiker']['voornaam'].

    Maar nu is het zo dat er extreem veel bezoekers gaan komen. Is het dan beter om de info uit de tabel van de database te halen (elke keer weer), of toch de sessie blijven gebruiken?
    pi_61889965
    quote:
    Op dinsdag 23 september 2008 20:23 schreef spaceninjapirate het volgende:
    Ik ben al een tijdje met php bezig en wil me gaan verdiepen in het objectgeoriënteerd programeren in deze taal. Nu heb ik al wat gezocht op onze grote vriend google, maar de tutorials die ik daar vind zijn oud, incompleet of worden zo hard afgekraakt in de comments dat ik er niet eens 1 letter van wil gaan overtypen

    Nu vroeg ik me af of iemand hier nog een betere recource weet waar echt in de uitleg ook echt iets gebouwd word ipv de stof te bespreken. Als ik er echt iets mee kan bouwen begrijp ik het vaak stukken sneller!

    Iemand?
    Ik denk dat je niet om die stof heen komt. In ieder geval, ik heb veel gehad aan het boek 'PHP5 : Objects, Patterns and Practices'
      woensdag 24 september 2008 @ 22:19:57 #96
    32768 DionysuZ
    Respect my authority!
    pi_61890072
    quote:
    Op woensdag 24 september 2008 21:33 schreef Likkende_Lassie het volgende:
    Even een vraagje,

    Ik doe het volgende altijd: Als een gebruiker inlogd, sla ik de gegevens als voornaam, achternaam, adres, gender etc op in een sessie. Als ik de gegevens nodig heb lees ik ze altijd uit de sessie dmv $_SESSION['gebruiker']['voornaam'].

    Maar nu is het zo dat er extreem veel bezoekers gaan komen. Is het dan beter om de info uit de tabel van de database te halen (elke keer weer), of toch de sessie blijven gebruiken?
    Het is een afweging die je moet maken. De ene oplossing (uit de database halen) voegt een bepaalde x tijd toe aan iedere handeling, terwijl de andere oplossing dit niet doet maar y meer schijfruimte gebruikt. Ik denk dat je in dit geval de gebruikersgegevens beter niet nog eens extra in een sessie moet gaan opslaan. Het is hergebruik van gegevens voor slechts een minimale tijdwinst.
    □ Reality is merely an illusion,albeit a very persistent one-A.Einstein
    ■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
    □ The war is not meant to be won.It is meant to be continuous-G.Orwell
      woensdag 24 september 2008 @ 22:27:43 #97
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_61890352
    Ja maar ik praat hier wel over zo'n 300-500 duizend bezoekers per week waardoor dit soort dingen wel belangerijk zijn

    En er op elke pagina standaard iets staat als, Welkom terug, Meneer ........
      woensdag 24 september 2008 @ 22:44:10 #98
    75592 GlowMouse
    l'état, c'est moi
    pi_61891012
    Database kost tijd, sessie regelen kost ook tijd. Goed, database zal over het algemeen iets langzamer zijn, maar dat verschil is marginaal. Een database heeft als groot voordeel dat het makkelijk te gebruiken is wanneer je meerdere webservers in gaat zetten. Als je gaat groeien zeker het overwegen waard.
    Plus dat sessies allemaal als losse bestanden op je filesystem weggeschreven worden, en als je iemand gedurende langere tijd ingelogd laat zijn, worden dat erg veel files (of je moet daarvoor alsnog een db gebruiken). Moderne filesystems kunnen daar goed mee omgaan, maar het zijn ook weer files die je moet backuppen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61892062
    is een database langzamer dan het filesystem? Gevoelsmatig zou ik zeggen van niet...
    Als het om zo'n grote site gaat zou ik sowieso op de database vertrouwen, omdat je dan meer controle hebt. Daarnaast lijkt het me gemakkerlijk uit te breiden naar meerdere servers mocht dat nodig zijn
      woensdag 24 september 2008 @ 23:33:39 #100
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_61892911
    Ok, database dus !
    Dan een ander vraagje, stop nu al mijn functies in 1 map op de webservers.
    Ik zou eventueel ook de functies in een tabel kunnen zetten en ze vervolgens daar uit laden dmv Eval(), is dit een goed idee? Ik doe dit momenteel ook met al mijn php pagina's.
      donderdag 25 september 2008 @ 00:15:59 #101
    85514 ralfie
    !Yvan eht nioj
    pi_61894056
    quote:
    Op woensdag 24 september 2008 23:33 schreef Likkende_Lassie het volgende:
    Ok, database dus !
    Dan een ander vraagje, stop nu al mijn functies in 1 map op de webservers.
    Ik zou eventueel ook de functies in een tabel kunnen zetten en ze vervolgens daar uit laden dmv Eval(), is dit een goed idee? Ik doe dit momenteel ook met al mijn php pagina's.
    nee. eval() is sowiezo een slecht gebruik als je code optimaal wil gebruiken, ga je al je meuk voor je eval() uit een database halen ben je dubbel zo slecht bezig... Een klasse die modules bijhoudt en de benodigde php's zelf include() is vele malen efficienter
      donderdag 25 september 2008 @ 12:24:41 #102
    137676 TommyGun
    Stik er maar in!
    pi_61900975
    Heren,

    Ik wil iets maken (rippen) maar m'n hoofd breekt er bijna van. Het is namelijk de bedoeling dat op mijn website een tabel (of wat dan ook, gebasseerd op ajax / js / php / ...) komt te staan waarin bezoekers van mijn site pagina's kunnen plaatsen. Een soort van favorieten dus binnen de website. Deze kunnen ze natuurlijk ook weer verwijderen. Het is niet de bedoeling dat het heel uitgebreid wordt met een loginsysteem e.d., gewoon met een cookie/sessie is al goed genoeg (om de favorieten te onthouden).

    Misschien dat iemand me op weg kan helpen?

    B.v.d
    pi_61906860
    Als je het op basis van een cookie of sessie doet kun je het net zo goed niet opslaan, die raak je gegarandeerd weer kwijt (bij een cookie duurt dat wellicht wat langer dan bij een sessie, maar toch)... ik zou toch wel een loginsysteem overwegen dus!
      donderdag 25 september 2008 @ 15:56:30 #104
    137676 TommyGun
    Stik er maar in!
    pi_61907140
    Dat is ook weer zo ja. Maar goed, waar zou ik dan aan moeten denken?
    pi_61909426
    quote:
    Op donderdag 25 september 2008 15:56 schreef TommyGun het volgende:
    Dat is ook weer zo ja. Maar goed, waar zou ik dan aan moeten denken?
    quote:
    Op donderdag 25 september 2008 15:45 schreef Xcalibur het volgende:
    ik zou toch wel een loginsysteem overwegen dus!
    pi_61929652
    mensen ik heb even een praktische vraag.

    Ik ben voor het eerst een iets 'groter' php-project begonnen. Mijn vraag is: wat is een handige manier om de HTML op te bouwen? Tot nu toe had ik altijd gewoon een los script, met daaronder de HTML code, waar op de goeie plekken php-regeltjes stonden om de benodigde bestanden te includen. Maar ik heb het idee dat het handiger kan
    Hoe lossen jullie zoiets meestal op?
      vrijdag 26 september 2008 @ 13:05:49 #107
    136730 PiRANiA
    All thinking men are atheists.
    pi_61929688
    quote:
    Op vrijdag 26 september 2008 13:04 schreef mcDavid het volgende:
    mensen ik heb even een praktische vraag.

    Ik ben voor het eerst een iets 'groter' php-project begonnen. Mijn vraag is: wat is een handige manier om de HTML op te bouwen? Tot nu toe had ik altijd gewoon een los script, met daaronder de HTML code, waar op de goeie plekken php-regeltjes stonden om de benodigde bestanden te includen. Maar ik heb het idee dat het handiger kan
    Hoe lossen jullie zoiets meestal op?
    Dat vraag ik mij inderdaad ook af.. Ik denk dat het met templates werkt die je include na het script
    pi_61929738
    quote:
    Op vrijdag 26 september 2008 13:04 schreef mcDavid het volgende:
    mensen ik heb even een praktische vraag.

    Ik ben voor het eerst een iets 'groter' php-project begonnen. Mijn vraag is: wat is een handige manier om de HTML op te bouwen? Tot nu toe had ik altijd gewoon een los script, met daaronder de HTML code, waar op de goeie plekken php-regeltjes stonden om de benodigde bestanden te includen. Maar ik heb het idee dat het handiger kan
    Hoe lossen jullie zoiets meestal op?
    Smarty => http://www.smarty.net
    hula
      vrijdag 26 september 2008 @ 13:08:49 #109
    136730 PiRANiA
    All thinking men are atheists.
    pi_61929757
    quote:
    Op vrijdag 26 september 2008 13:07 schreef NikkelCobalt het volgende:

    [..]

    Smarty => http://www.smarty.net
    Korte uitleg en ervaring?
    pi_61930251
    Weet iemand een tutoriaal of voorbeeld code hoe je een Plugin systeem kan maken waarbij je dus gebruik kunt maken van externe plugins (die je natuurlijk ook weer zelf schrijft!)
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61930272
    quote:
    Op vrijdag 26 september 2008 13:08 schreef PiRANiA het volgende:

    [..]

    Korte uitleg en ervaring?
    Je scheidt de html van je phpcode dmv templates. Aparte bestanden waarin je gebruik maakt van de smarty code.

    Je kent bijvoorbeeld een array van menu-items toe aan smarty, en in je template gebruik je een foreach loop om de html te genereren. Eh, wellicht is het beter als je even de crash-course op smarty.net bekijkt.

    Heb zelf 4 jaar ervaring ermee, enkel goede ervaring.

    Ervaring met objecten is een pre, kunnen werken met (multi-dimensionale) arrays een must.
    hula
    pi_61930273
    ah ik zie het al. Een template file dus, met op de goeie posities {$variable}

    vervolgens is het een kwestie van lekker er op los scripten, en aan het einde die template-file openen en echo'en in dubbele quotes!

    Ik zal dat smarty eens proberen te installeren, ziet er interessant uit!
    pi_61930482
    Het is ook zeker interessant Ja probeer het maar eens. Installeren stelt geen drol voor (gewoon wat files kopieren) en daarna kun je aan de slag. Als je tegen problemen aanloopt meld je het maar, ik kom er sowieso wel uit ;P
    hula
      vrijdag 26 september 2008 @ 13:47:13 #114
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_61930660
    quote:
    Op vrijdag 26 september 2008 13:30 schreef mcDavid het volgende:
    ah ik zie het al. Een template file dus, met op de goeie posities {$variable}

    vervolgens is het een kwestie van lekker er op los scripten, en aan het einde die template-file openen en echo'en in dubbele quotes!

    Ik zal dat smarty eens proberen te installeren, ziet er interessant uit!
    Smarty is zeker wel interesant..
    Misschien ook wijs om eens bij een framework te kijken, zoals Zend Framework of Prado.

    Iemand trouwens een idee waarom smarty sinds kort niet meer ondersteund wordt door PHP?
    pi_61931938
    quote:
    Op vrijdag 26 september 2008 13:29 schreef Chandler het volgende:
    Weet iemand een tutoriaal of voorbeeld code hoe je een Plugin systeem kan maken waarbij je dus gebruik kunt maken van externe plugins (die je natuurlijk ook weer zelf schrijft!)
    Euhm, dat ligt natuurlijk helemaal aan je eigen opzet. Gebruik je een template systeem of iets?
    pi_61931945
    quote:
    Op vrijdag 26 september 2008 13:47 schreef ursel het volgende:

    [..]

    Smarty is zeker wel interesant..
    Misschien ook wijs om eens bij een framework te kijken, zoals Zend Framework of Prado.

    Iemand trouwens een idee waarom smarty sinds kort niet meer ondersteund wordt door PHP?
    Het is geen subproject meer. Waarom weet ik niet. Las het ook net. Schijnt weinig informatie over te zijn Snap ook niet dat smarty een subproject was. Smarty is er ook niet in binary vorm ofzo. Zend framework wel dacht ik?

    Nu vind ik Zend sowieso niet zo heel interessant. Het dient geen specifiek doel, het bied uitbereidingen op alles aan. Zeker niet als je een template engine zoekt

    Prado is een stuk interessanter. Alleen dan heb ik zoiets van, als je toch event based wil, blijf dan niet hangen bij php maar ga lekker voor .NET.
    hula
    pi_61933188
    quote:
    Op vrijdag 26 september 2008 14:45 schreef super-muffin het volgende:
    Euhm, dat ligt natuurlijk helemaal aan je eigen opzet. Gebruik je een template systeem of iets?
    Ik gebruik nog helemaal niets, ik wil gewoon leren hoe een script interactief kan werken met externe plugins.
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61933193
    Nou, ik ben duidelijk niet de enige die aant experimenteren is met smarty vandaag!
    pi_61935374
    Ik gebruik Smarty zelf ook al tijden naar volle tevredenheid
    Zeker omdat je vrij eenvoudig zelf functies kunt schrijven is het erg flexibel!
    pi_61938383
    quote:
    Op vrijdag 26 september 2008 13:29 schreef Chandler het volgende:
    Weet iemand een tutoriaal of voorbeeld code hoe je een Plugin systeem kan maken waarbij je dus gebruik kunt maken van externe plugins (die je natuurlijk ook weer zelf schrijft!)
    Heel simpel gezegd heb ik een database waarin een aantal plugin-namen staan opgeslagen (welke geinstalleerd zijn zegmaar). Er bestaat een map/php bestand met diezelfde naam, en bij het inladen van de plugins word dat bestand geincluded. Dezelfde pluginnaam is ook de daadwerkelijke klasse-naam die je dus kunt aanroepen.

    Aan het begin van je script zou je dus alle bestanden kunnen includen die in de plugin-tabel staan, maar in mijn eigen CMS wordt dat pas gedaan wanneer dit daadwerkelijk nodig is zodat ik niet teveel onnodige zooi in hoef te laden.
    pi_61950900
    Ik heb even snel een grote dummie vraag :) ik heb nu dit:

    1
    2
    3
    4
    5
    6
    7
    8
       if($_GET["activatie"] AND $_GET["mail"])
       {
          echo "boe";
       }
       elseif($_POST['submit'] AND $_POST["code"] AND $_POST["mail"])
       {
          echo "boe";
       }


    nou wil ik deze bij elkaar voegen, dus in de vorm van: "GETactivatie and GETmail moeten aanwezig zijn" OF "POSTsubmit en POSTcode en POSTmail moeten aanwezig zijn"

    nou is het heel makkelijk om dat in een if te zetten, maar ik ben het gewoon kwijt en kan het niet vinden op de phpsite. Wie helpt :)
    Ik zeg altijd maar zo, met drie wielen heb je nog geen auto.
      zaterdag 27 september 2008 @ 14:25:53 #122
    75592 GlowMouse
    l'état, c'est moi
    pi_61951320
    1
    2
    3
    4
    5
    6
    <?php
    if( ( isset($_GET['activatie']) && isset($_GET['mail']) )
      || ( isset(
    $_POST['submit']) && isset($_POST['code']) && isset($_POST['mail']) ) ) {
      
    // w00t
    }
    ?>
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61951494
    quote:
    Op maandag 15 september 2008 16:55 schreef Sitethief het volgende:
    Ik kon, ooit, in een ver verleden php scriptjes schrijven.
    Nu wou ik laatst een simpele php pagina schrijven maar nu lukt het me niet meer .
    [ code verwijderd ]

    Nee, lol is niet het echte wachtwoord

    Ik krijg deze foutmelding:
    [ code verwijderd ]

    Waarschijnlijk heb ik de verkeerde functies gebruikt om te doen wat ik wil .
    Het is niet mysql_connect, maar $con = mysql_connect(), en dan mysql_select_db("db", $con). voor de rest zitten er geen fouten in je code
    pi_61951596
    quote:
    Op zaterdag 27 september 2008 13:54 schreef aardappel het volgende:
    Ik heb even snel een grote dummie vraag ik heb nu dit:
    [ code verwijderd ]

    nou wil ik deze bij elkaar voegen, dus in de vorm van: "GETactivatie and GETmail moeten aanwezig zijn" OF "POSTsubmit en POSTcode en POSTmail moeten aanwezig zijn"

    nou is het heel makkelijk om dat in een if te zetten, maar ik ben het gewoon kwijt en kan het niet vinden op de phpsite. Wie helpt
    isset() is hier overbodig

    1
    2
    if (($_GET['activatie'] && $_GET['mail']) || ($_POST['submit'] && $_POST['code'] && $_POST['mail'])) {
    }
      zaterdag 27 september 2008 @ 14:54:35 #125
    75592 GlowMouse
    l'état, c'est moi
    pi_61951675
    quote:
    Op zaterdag 27 september 2008 14:48 schreef illusions het volgende:

    [..]

    isset() is hier overbodig
    [ code verwijderd ]


    Wat als iemand code 0 invoert, of het e-mailadresveld leeglaat? Zoiets check je in het algemeen later pas, en dan heb je nu wel isset nodig.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      zaterdag 27 september 2008 @ 15:13:19 #126
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_61951881
    quote:
    Op zaterdag 27 september 2008 14:54 schreef GlowMouse het volgende:

    [..]

    Wat als iemand code 0 invoert, of het e-mailadresveld leeglaat? Zoiets check je in het algemeen later pas, en dan heb je nu wel isset nodig.
    Als je 0 invoert of leeg laat is de $_POST of $_GET nog steeds true bij isset, aangezien deze nog wel meegegeven worden. Check dan op empty of hetgeen je er denkt te verwachten.
      zaterdag 27 september 2008 @ 15:20:41 #127
    75592 GlowMouse
    l'état, c'est moi
    pi_61951979
    isset is true, $_POST['veld'] niet, exact zoals ik bedoelde.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61952083
    En een check op $_POST['veld'] levert je ook een notice op als dat veld helemaal niet bestaat. Een check op isset($_POST['veld']) werkt gewoon zonder notices.
      zondag 28 september 2008 @ 07:36:03 #129
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_61964866
    Ik vind dat hele vereiste van die isset functie maar onzin!
    pi_61965745
    quote:
    Op vrijdag 26 september 2008 19:32 schreef GVRuud het volgende:
    Heel simpel gezegd heb ik een database waarin een aantal plugin-namen staan opgeslagen (welke geinstalleerd zijn zegmaar). Er bestaat een map/php bestand met diezelfde naam, en bij het inladen van de plugins word dat bestand geincluded. Dezelfde pluginnaam is ook de daadwerkelijke klasse-naam die je dus kunt aanroepen.

    Aan het begin van je script zou je dus alle bestanden kunnen includen die in de plugin-tabel staan, maar in mijn eigen CMS wordt dat pas gedaan wanneer dit daadwerkelijk nodig is zodat ik niet teveel onnodige zooi in hoef te laden.
    Dat is ook ongeveer wat ik wil, maar ook wil ik middels de plugins bepaalde gegevens kunnen achterhalen van de hoofdmodule en bepaalde acties kunnen triggeren (bv data validatie, data streams aanpassen etc)
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zondag 28 september 2008 @ 11:02:43 #131
    213087 Nielez
    10100111001
    pi_61966054
    SQL Vraagje:

    1
    2
    3
    4
    5
    SELECT P1.PRES_NAME, P2.PRES_NAME, (SELECT COUNT(*) FROM PRES_HOBBY WHERE P1.PRES_NAME = PRES_NAME)
    FROM PRES_HOBBY P1, PRES_HOBBY P2
    WHERE (SELECT COUNT(*) FROM PRES_HOBBY WHERE P1.PRES_NAME = PRES_NAME) = (SELECT COUNT(*) FROM PRES_HOBBY WHERE P2.PRES_NAME = PRES_NAME)
    AND NOT P1.PRES_NAME = P2.PRES_NAME
    AND (SELECT HOBBY FROM PRES_HOBBY WHERE PRES_NAME = P1.PRES_NAME) =ALL (SELECT HOBBY FROM PRES_HOBBY WHERE PRES_NAME = P2.PRES_NAME)


    Wil SQL niet.
    Dit komt door het laatste regeltje, waar ik wil dat een lijstje hobbies (van de ene president) EXACT hetzelfde is als een lijstje hobbies van de andere president.
    Maar,, hij geeft een multiple rows in singleton select.
    Hoe implementeer ik de =ALL zodat hij wel werkt?

    Andere oplossingen ook gewenst.
      zondag 28 september 2008 @ 11:36:06 #132
    75592 GlowMouse
    l'état, c'est moi
    pi_61966617
    Er staat vaak PRES_NAME zonder tabelaanduiding in je queries. Het is mij onduidelijk op welke tabel dat slaat.

    Die laatste where zou ik doen met verzamelingen. De ene MINUS de ander, en de ander MINUS de ene moet leeg zijn. Hier je een MINUS implementeert staat hier uitgelegd.

    Ik hoop dat je wel doorhebt dat een query als deze de performance sterk beïnvloedt.

    [ Bericht 11% gewijzigd door GlowMouse op 28-09-2008 11:44:15 ]
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61966649
    quote:
    Op zondag 28 september 2008 07:36 schreef Likkende_Lassie het volgende:
    Ik vind dat hele vereiste van die isset functie maar onzin!
    Ondanks de argumenten van GlowMouse en mij? Heb je daar een reden voor?
      zondag 28 september 2008 @ 11:53:35 #134
    213087 Nielez
    10100111001
    pi_61966889
    quote:
    Op zondag 28 september 2008 11:36 schreef GlowMouse het volgende:
    Er staat vaak PRES_NAME zonder tabelaanduiding in je queries. Het is mij onduidelijk op welke tabel dat slaat.

    Die laatste where zou ik doen met verzamelingen. De ene MINUS de ander, en de ander MINUS de ene moet leeg zijn. Hier je een MINUS implementeert staat hier uitgelegd.

    Ik hoop dat je wel doorhebt dat een query als deze de performance sterk beïnvloedt.
    Uiteraard maar in de opdracht (is voor school), staat dat niet naar efficientie/performance wordt gekeken.
    Maar .. ik snap je uitleg niet helemaal. Snap je wat ik bedoel?

    De vraag is:
    Give a result table for all presidents (each time their two names) who have exactly the same
    hobbies (so e.g. the ones who both like fishing, riding and swimming) and the number of
    their mutual hobbies.

    De query nogmaals waarin nu iedere Pres_name een naam gegeven (dat bedoelde je?)
    1
    2
    3
    4
    5
    SELECT P1.PRES_NAME, P2.PRES_NAME, (SELECT COUNT(*) FROM PRES_HOBBY P3 WHERE P1.PRES_NAME = P3.PRES_NAME)
    FROM PRES_HOBBY P1, PRES_HOBBY P2
    WHERE (SELECT COUNT(*) FROM PRES_HOBBY P4 WHERE P1.PRES_NAME = P4.PRES_NAME) = (SELECT COUNT(*) FROM PRES_HOBBY P5 WHERE P2.PRES_NAME = P5.PRES_NAME)
    AND NOT P1.PRES_NAME = P2.PRES_NAME
    AND (SELECT HOBBY FROM PRES_HOBBY P6 WHERE P6.PRES_NAME = P1.PRES_NAME) =ALL (SELECT HOBBY FROM PRES_HOBBY P7 WHERE P7.PRES_NAME = P2.PRES_NAME)
      zondag 28 september 2008 @ 13:00:02 #135
    75592 GlowMouse
    l'état, c'est moi
    pi_61968159
    Ja het is duidelijk. Kijk maar naar wat verzamelingenleer, want die termen maken het praten hierover gewoon makkelijker.
    Je hebt al dat het aantal gelijk is, dus mijn vorig antwoord kan wat eenvoudiger zie ik nu. Je moet bereiken dat hobbies die niet bij de ene president horen, geen hobby's zijn van de andere president.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_61968772
    quote:
    Op zondag 28 september 2008 10:39 schreef Chandler het volgende:

    [..]

    Dat is ook ongeveer wat ik wil, maar ook wil ik middels de plugins bepaalde gegevens kunnen achterhalen van de hoofdmodule en bepaalde acties kunnen triggeren (bv data validatie, data streams aanpassen etc)
    Ik heb zelf een soort van basisplugin-klasse gemaakt via welke alle cms-brede onderdelen/gegevens (zoals db toegang, settings ed) toegankelijk zijn. Op het moment dat ik een nieuwe plugin schrijf, wordt deze afgeleid van de basisklasse en heb ik dus standaard alle basisfunctionaliteit beschikbaar zodat ik meteen aan de daadwerkelijke plugin kan beginnen.
    pi_61991796
    Maar heb je ook wat leesvoer m.b.t. een plugin systeem te maken? een opzet vanwaaruit ik iets kan proberen te maken?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_61997114
    quote:
    Op maandag 29 september 2008 11:19 schreef Chandler het volgende:
    Maar heb je ook wat leesvoer m.b.t. een plugin systeem te maken? een opzet vanwaaruit ik iets kan proberen te maken?
    Ik was ook eens aan het kijken, wat ik hier o.a. lees over plugins, waarin alles in een database gekwakt wordt.. Nee, niet doen. Interessanter wordt zoals GVRuud zegt, het deriven van een classe. Bijvoorbeeld met een abstracte klasse of een template klasse en wat afgeleide plugins kom je een heel eind.

    Ook interessant is het reflection deel van php. Komt erop neer dat je functies, methods, en properties uit een classe kan opvragen (reverse engineren), en dan aanroepen. (Echter vind ik het uiteindelijk niet de meest nette methode van programmeren)

    Heb vervolgens eens gekeken op google, maar vind hier weinig over. Maar sowieso zijn de volgende pagina's op php.net wel interessant hierover.

    Class Abstraction
    Reflection

    Succes
    hula
    pi_62010225
    Erg veel leesvoer kan ik er inderdaad ook niet over vinden, maar onderstaande is een beetje het idee, gebaseerd op abstraction en inheritance. De code is uit mijn duim gezogen (gebaseerd op de code in mijn cms), dus kan wat foutjes bevatten.

    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
    <?php
    abstract class BasePlugin
    {
        protected 
    $db;

        public function 
    __construct()
        {
            
    $this->db DatabaseSingleton::getInstance();
            
    // Etc...
        
    }

        abstract public function 
    execute();
    }

    class 
    BlaatPlugin extends BasePlugin
    {
        public function 
    execute()
        {
            
    // Via $this->db kan ik vanalles op de database querien
            
    echo "BlaatPlugin wordt uitgevoerd!";
        }
    }

    class 
    SchaapPlugin extends BasePlugin
    {
        public function 
    execute()
        {
            
    // Via $this->db kan ik vanalles op de database querien
            
    echo "SchaapPlugin wordt uitgevoerd!";
        }
    }

    $plugins = array();
    $plugins[] = new BlaatPlugin();
    $plugins[] = new SchaapPlugin();

    foreach( 
    $plugins as &$plugin )
    {
        
    $plugin->execute();
    }
    ?>


    Uitvoer:

    1
    2
    BlaatPlugin wordt uitgevoerd!
    SchaapPlugin wordt uitgevoerd!
    pi_62010895
    in ieder geval bedankt voor het antwoord, het stukje over de isset() ga ik nog wel even ergens nalezen
    Ik zeg altijd maar zo, met drie wielen heb je nog geen auto.
    pi_62011952
    Zo heb ik het ook opgelost in het plugin systeem een CMS van mijn stage.
    Elke plugin had een map met de naam met alle bestanden, zoals templates enzo.

    En dan is ook nog een PluginManager die alles uitleest.
    pi_62016978
    Dat snap ik, maar stel ik wil plugins gebruiken op bepaalde plaatsen, bv om content te veriferen, of data uit te lezen, dan is het niet handig om het zo te executen..

    Ik heb zelf nog weer een poging gedaan om hier wat over te vinden qua stof om te lezen maar helaas
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62019035
    Je zou dan zo iets kunnen doen?

    1
    2
    3
    4
    <?php
    $plugin 
    $pluginManager->getPluginInstance("VerifyContent");
    $content $plugin->execute($content);
    ?>


    In getPluginInstance laad je de betreffende plugin in met een include, en return je een instance van de betreffende class.
    pi_62019076
    Even een MySQL vraagje..
    Ik heb een tabel met verkoop aantallen, sales. die heeft de volgende kolommen:
    - keyword
    - clicks
    - accounts
    - trials
    - sales

    In de tabel zitten inmiddels meer dan 500.000 records. In keyword staan de keywords, behorende bij de sales. Er zijn per keyword meerdere entries. Ik wil een overzicht krijgen van unieke keywords, met bijbehorende sales aantallen. Dus alle clicks (en accounts, trials en trials) opgeteld per uniek keyword. Deze probeer ik te filteren door de volgende query uit te voeren:

    1
    2
    3
    4
    5
    6
    7
    8
    $query = "SELECT 
    DISTINCT(keyword) as keyword, 
    SUM(clicks) AS clicks, 
    SUM(accounts) AS accounts,  
    SUM(trials) AS trials,  
    SUM(sales) AS sales 
    FROM sales 
    ORDER BY sales ASC;";


    Maar het werkt niet. Ik krijg maar een result. Wat doe ik fout?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
      dinsdag 30 september 2008 @ 11:11:00 #145
    32768 DionysuZ
    Respect my authority!
    pi_62019268
    SUM() is een group by functie. Als je deze zonder GROUP BY gebruikt krijg je uiteraard 1 resultaat terug
    □ Reality is merely an illusion,albeit a very persistent one-A.Einstein
    ■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
    □ The war is not meant to be won.It is meant to be continuous-G.Orwell
    pi_62019319
    GROUP BY keyword dan?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
      dinsdag 30 september 2008 @ 11:13:33 #147
    32768 DionysuZ
    Respect my authority!
    pi_62019331
    probeer eens

    1SELECT keyword, SUM(clicks) as clicks, SUM(accounts) AS accounts, SUM(trials) AS trials, SUM(sales) AS sales FROM sales GROUP BY sales ORDER BY sales
    □ Reality is merely an illusion,albeit a very persistent one-A.Einstein
    ■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
    □ The war is not meant to be won.It is meant to be continuous-G.Orwell
    pi_62019433
    quote:
    Op dinsdag 30 september 2008 11:11 schreef DionysuZ het volgende:
    SUM() is een group by functie. Als je deze zonder GROUP BY gebruikt krijg je uiteraard 1 resultaat terug
    thanks het werkt
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_62021218
    quote:
    Op dinsdag 30 september 2008 09:18 schreef Chandler het volgende:
    Dat snap ik, maar stel ik wil plugins gebruiken op bepaalde plaatsen, bv om content te veriferen, of data uit te lezen, dan is het niet handig om het zo te executen..

    Ik heb zelf nog weer een poging gedaan om hier wat over te vinden qua stof om te lezen maar helaas
    Daar voor heb je de manager. Als ik thuis ben zal ik eens een voorbeeld posten.
    En probeer zelf ook eens wat uit intussen
    pi_62026388
    quote:
    Op dinsdag 30 september 2008 11:00 schreef GVRuud het volgende:
    Je zou dan zo iets kunnen doen?
    [ code verwijderd ]

    In getPluginInstance laad je de betreffende plugin in met een include, en return je een instance van de betreffende class.
    Dat zou ik idd kunnen doen, denk dat ik wordpress maar eens ga doornemen qua code, deze gebruikt namelijk ook plugins die echt overal in te gebruiken zijn
    quote:
    Op dinsdag 30 september 2008 12:51 schreef super-muffin het volgende:
    Daar voor heb je de manager. Als ik thuis ben zal ik eens een voorbeeld posten.
    En probeer zelf ook eens wat uit intussen
    Als je dat eens wilt doen, super!

    Ik vond nog een link op Internet

    http://codingforums.com/showthread.php?t=85051 alleen bestaat de source niet meer

    [ Bericht 10% gewijzigd door Chandler op 30-09-2008 16:54:51 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 30 september 2008 @ 21:17:10 #151
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62034721
    elke mysql query voorzien van addslashes() (magic quotes kan dan op off toch), verhelpt dat het gehele mysql injectie probleem? Of zijn er nog meer dingen om rekening mee te houden?
    pi_62035078
    mysql_real_escape_string ligt trouwens wel aan je PHP versie

    Verder is dit een leuke tutoriaal, verplichte leesvoer zegmaar
    http://www.phphulp.nl/php/tutorials/3/244/

    [ Bericht 13% gewijzigd door Chandler op 30-09-2008 21:41:16 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62035723
    quote:
    Op dinsdag 30 september 2008 21:17 schreef Likkende_Lassie het volgende:
    elke mysql query voorzien van addslashes() (magic quotes kan dan op off toch), verhelpt dat het gehele mysql injectie probleem? Of zijn er nog meer dingen om rekening mee te houden?
    Bij het doorgeven van id's vooraf controleren of het daadwerkelijk een getal is, is al een prima oplossing.
    hula
    pi_62036040
    quote:
    Op dinsdag 30 september 2008 21:48 schreef NikkelCobalt het volgende:

    [..]

    Bij het doorgeven van id's vooraf controleren of het daadwerkelijk een getal is, is al een prima oplossing.
    Als je weet dat ergens een getal in moet dan kun met idd met bijvoorbeeld intval() zorgen dat er een getal in gaat. Maar als ergens een string in moet dan heb je mysql_real_escape_string nodig. Als je strings niet controleert maakt het nauwelijks nog uit hoe goed je integers controleert, een ketting maar zo sterk als de zwakste schakel.
    pi_62036103
    quote:
    Op dinsdag 30 september 2008 21:17 schreef Likkende_Lassie het volgende:
    elke mysql query voorzien van addslashes() (magic quotes kan dan op off toch), verhelpt dat het gehele mysql injectie probleem? Of zijn er nog meer dingen om rekening mee te houden?
    Nee, blind addslashes() gebruiken is niet genoeg. Dat helpt alleen bij strings, niet bij numerieke waarden.

    Je kan beter geparameteriseerde query's gebruiken, bijvoorbeeld met behulp van PDO.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      dinsdag 30 september 2008 @ 22:10:47 #156
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62036521
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    PHP
    function quote_smart($value$type false$NULL false) {
       if (
    $NULL AND (!$value OR $value == '')){
          return 
    NULL;
       }else{
          if (
    $type == 'num'){
             if (
    is_numeric($value)){
                return 
    $value;
             }else{
                return 
    '';
             }
          }else{
             if (
    get_magic_quotes_gpc()) {
                
    $value stripslashes($value);
             }
             if(
    version_compare(phpversion(),"4.3.0") == "-1") {
                return 
    mysql_escape_string($value);
             } else {
                return 
    mysql_real_escape_string($value);
             }
          }
       }
    }
    ?>


    Is dit al wat? , is het hier 100% mee veilig, als ik het als volgt gebruik?

    1
    2
    3
    <?php
    mysql_query
    ("INSERT INTO blabla ('name') VALUES ('".quote_smart($_POST['name'])."')");
    ?>


    EN:

    1
    2
    3
    <?php
    mysql_query
    ("SELECT name FROM blabla WHERE id = '".quote_smart($id'num')."' LIMIT 1");
    ?>


    [ Bericht 57% gewijzigd door Likkende_Lassie op 01-10-2008 09:49:45 ]
    pi_62036688
    quote:
    Op dinsdag 30 september 2008 21:56 schreef Light het volgende:

    [..]

    Als je weet dat ergens een getal in moet dan kun met idd met bijvoorbeeld intval() zorgen dat er een getal in gaat. Maar als ergens een string in moet dan heb je mysql_real_escape_string nodig. Als je strings niet controleert maakt het nauwelijks nog uit hoe goed je integers controleert, een ketting maar zo sterk als de zwakste schakel.
    Ik zeg ook niet dat je strings niet moet controleren. Als je het verhaal gelezen had wat ik quotte dan stond daar ook in dat hij naar meer aanvullingen zocht bovenop het escapen.

    Overigens zijn mijn ervaringen met databasegestuurde applicaties zijn dat in 90% van de gevallen je gegevens ophaalt (!) aan de hand van een id.
    hula
      dinsdag 30 september 2008 @ 22:50:42 #158
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62037756
    Ik kom er net achter als je ipv:

    1
    2
    3
    <?php
    function quote_smart($value$type$NULL) {
    ?>


    1
    2
    3
    <?php
    function quote_smart($value$type false$NULL false) {
    ?>


    doet, dit stukkennnn sneller is
    pi_62037808
    quote:
    Op dinsdag 30 september 2008 22:15 schreef NikkelCobalt het volgende:

    Overigens zijn mijn ervaringen met databasegestuurde applicaties zijn dat in 90% van de gevallen je gegevens ophaalt (!) aan de hand van een id.
    True. Maar je moet die gegevens er ook een keer instoppen.
    pi_62043603
    Idd, en je dient gewoon de input te controlleren, je weet namelijk niet wat iedere gebruiker van plan is met je website!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      woensdag 1 oktober 2008 @ 09:48:30 #161
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62043971
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    PHP
    function quote_smart($value$type false$NULL false) {
       if (
    $NULL AND (!$value OR $value == '')){
          return 
    NULL;
       }else{
          if (
    $type == 'num'){
             if (
    is_numeric($value)){
                return 
    $value;
             }else{
                return 
    '';
             }
          }else{
             if (
    get_magic_quotes_gpc()) {
                
    $value stripslashes($value);
             }
             if(
    version_compare(phpversion(),"4.3.0") == "-1") {
                return 
    mysql_escape_string($value);
             } else {
                return 
    mysql_real_escape_string($value);
             }
          }
       }
    }
    ?>


    Is dit al wat? , is het hier 100% mee veilig, als ik het als volgt gebruik?

    1
    2
    3
    <?php
    mysql_query
    ("INSERT INTO blabla ('name') VALUES ('".quote_smart($_POST['name'])."')");
    ?>


    EN:

    1
    2
    3
    <?php
    mysql_query
    ("SELECT name FROM blabla WHERE id = '".quote_smart($id'num')."' LIMIT 1");
    ?>
      woensdag 1 oktober 2008 @ 11:10:04 #162
    75592 GlowMouse
    l'état, c'est moi
    pi_62045719
    Waarom zet je in je tweede query een integer tussen quotes? En bij 'num' verwacht je een integer terug te krijgen, maar krijg je soms een lege string terug.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_62046074
    Omdat dat de type moet weergeven als in de functie die er boven staat weergegeven
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62046484
    quote:
    Op woensdag 1 oktober 2008 11:25 schreef Chandler het volgende:
    Omdat dat de type moet weergeven als in de functie die er boven staat weergegeven
    Als ik verwacht een numerieke waarde terug te krijgen, verwacht ik geen lege string.
      woensdag 1 oktober 2008 @ 11:44:21 #165
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62046524
    Zo beter?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    PHP
    function quote_smart($value$type false$NULL false) {
       if (
    $NULL AND (!$value OR $value == '')){
          return 
    NULL;
       }else{
          if (
    $type == 'num'){
             if (
    is_numeric($value)){
                return 
    $value;
             }else{
                return 
    0;
             }
          }else{
             if (
    get_magic_quotes_gpc()) {
                
    $value stripslashes($value);
             }
             if(
    version_compare(phpversion(),"4.3.0") == "-1") {
                return 
    mysql_escape_string($value);
             } else {
                return 
    mysql_real_escape_string($value);
             }
          }
       }
    }
    ?>


    Is dit al wat? :) , is het hier 100% mee veilig, als ik het als volgt gebruik?

    1
    2
    3
    <?php
    mysql_query
    ("INSERT INTO blabla ('name') VALUES ('".quote_smart($_POST['name'])."')");
    ?>


    EN:

    1
    2
    3
    <?php
    mysql_query
    ("SELECT name FROM blabla WHERE id = '".quote_smart($id'num')."' LIMIT 1");
    ?>
      woensdag 1 oktober 2008 @ 11:47:24 #166
    75592 GlowMouse
    l'état, c'est moi
    pi_62046591
    quote:
    Op woensdag 1 oktober 2008 11:10 schreef GlowMouse het volgende:
    Waarom zet je in je tweede query een integer tussen quotes?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      woensdag 1 oktober 2008 @ 12:06:08 #167
    187069 slacker_nl
    Sicko pur sang
    pi_62047007
    quote:
    Op woensdag 1 oktober 2008 11:25 schreef Chandler het volgende:
    Omdat dat de type moet weergeven als in de functie die er boven staat weergegeven :)
    Het gaat om dit blokje code:

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
          
    if ($type == 'num'){
             if (
    is_numeric($value)){
                return 
    $value;
             }else{
                return 
    '';
             }
    ?>


    Ik zou een trigger_error gebruiken, aangezien er duidelijk wat mis is als je een integer verwacht, maar het er geen is.

    En je mag een integer gewoon binnen quotes plaatsen, dus op zich is er niks aan de hand.

    Overigens zou ik PDO gebruiken voor dit soort shit, maar iedereen leest gewoon over SR's post heen. Dan heb je een deel van deze code niet nodig..

    Ik zou je functie zo schrijven..
    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
    <?php
    function quote_smart($value$type false$NULL false) {
            
    $value trim($value);

            if (
    strlen($value)) {
                    
    # We have something
                    
    if ($type == 'num'){
                            if (
    is_numeric($value)){
                                    return 
    $value;
                            } else {
                                    
    trigger_error(sprintf("%s: '%s' is not a number!"__FUNCTION__$value), E_USER_ERROR);
                                    return 
    null;
                            }
                    }
            } else {
                    if (
    $NULL) {
                            return 
    null;
                    }
            }
            return 
    $value;

    }

    var_dump(quote_smart(0'num'true)); # Hier breekt je huidige code blok op
    var_dump(quote_smart("Bla"'string'true));
    var_dump(quote_smart(" "'string'));
    var_dump(quote_smart("Bla"'num'true)); # Error
    ?>


    https://devzone.zend.com/(...)revent-SQL-Injection
    http://www.phpro.org/tutorials/Introduction-to-PHP-PDO.html

    In reactie op je nieuwe code, ipv if is_numeric else return 0, dan kan je gelijk intval gebruiken, zie de documentatie hiervan: The integer value of var on success, or 0 on failure.
    In theory there is no difference between theory and practice. In practice there is.
    pi_62047114
    quote:
    Op woensdag 1 oktober 2008 11:44 schreef Likkende_Lassie het volgende:
    Zo beter?
    [...]
    De functie heet "quote_smart", maar er wordt niets ge-quote. Het is een encoding functie.
    De $type parameter heeft alleen betekenis voor 'num', of ongelijk 'num'. Het lijkt me logischer om verschillende functies voor verschillende datatypes te maken.
    Dat de functie NULL terug kan geven heeft denk ik weinig nut. Als je de functie zo maakt dat de string inclusief quotes wordt teruggegeven of indien leeg de string NULL, dan kan je 'm wel makkelijk in een sql string gebruiken.
    Als een parameter numeriek hoort te zijn maar dat niet is wil ik gewoon een error krijgen. Zo maar omzetten naar 0 kan ook vervelende dingen opleveren.

    Geparameteriseerde query's blijf ik een mooiere oplossing vinden
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      woensdag 1 oktober 2008 @ 12:56:10 #169
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62048010
    Je hebt gelijk, een foutmelding zou het moeten zijn.
    Een oude functie die ik gebruikte, 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
    <?php
    function secureValue($value$html){

       if (!
    $html){
         
    $value strip_tags($value'<b>,<a>,<i>,<u>,<img>');
       }else{
          
    $value htmlnumericentities($value);
       }
       if (!
    $value){
          
    $value NULL;
       }

       switch (
    gettype($value)) {
          case 
    'boolean':
             return 
    $value '1' '0';
          case 
    'integer':
          case 
    'double':
             return (string)
    $value;
          case 
    'string':
             return 
    "'".addslashes($value)."'";
          case 
    'array':
          case 
    'object':
             return 
    "'".addslashes($value)."'";
          default:
             
    //'resource', 'NULL', 'unknown type'
             
    return 'NULL';
             die();
       }
    }
    ?>
    pi_62054533
    quote:
    Op woensdag 1 oktober 2008 12:06 schreef slacker_nl het volgende:

    Ik zou een trigger_error gebruiken, aangezien er duidelijk wat mis is als je een integer verwacht, maar het er geen is.
    Niet alleen integers zijn numeriek. Ook floats zijn dat, om eens een voorbeeld te noemen.
    quote:
    En je mag een integer gewoon binnen quotes plaatsen, dus op zich is er niks aan de hand.
    Dat het mag en dat het werkt wil niet zeggen dat het good programming practice is en ook niet dat we er geen opmerkingen over mogen maken.
    quote:
    Overigens zou ik PDO gebruiken voor dit soort shit, maar iedereen leest gewoon over SR's post heen. Dan heb je een deel van deze code niet nodig..
    Goed punt. Al vraag ik me af of alle hosters PDO ondersteunen.
    quote:
    Ik zou je functie zo schrijven..
    [ code verwijderd ]

    https://devzone.zend.com/(...)revent-SQL-Injection
    http://www.phpro.org/tutorials/Introduction-to-PHP-PDO.html

    In reactie op je nieuwe code, ipv if is_numeric else return 0, dan kan je gelijk intval gebruiken, zie de documentatie hiervan: The integer value of var on success, or 0 on failure.
    Wat doe je dan bij een float?
      woensdag 1 oktober 2008 @ 17:21:29 #171
    187069 slacker_nl
    Sicko pur sang
    pi_62055059
    quote:
    Op woensdag 1 oktober 2008 17:01 schreef Light het volgende:
    Niet alleen integers zijn numeriek. Ook floats zijn dat, om eens een voorbeeld te noemen.
    Dan gebruik je is_int().. of je retouneert intval($value);
    quote:
    Dat het mag en dat het werkt wil niet zeggen dat het good programming practice is en ook niet dat we er geen opmerkingen over mogen maken.
    Dit punt vervalt als je PDO gebruikt (en dat gebruik ik alleen maar icm prepared statements). Of ik nou id = '1' of id = 1 invul, zal me verder jeuken.. En je mag er wat van zeggen, maar ik mag toch ook zeggen dat het niet zo hinderlijk is als iemand het doet aangezien het gewoon verwerkt wordt (zonder warning of wat dan ook..).
    quote:
    Goed punt. Al vraag ik me af of alle hosters PDO ondersteunen.
    Andere hoster zoeken die wel met de tijd meegaat.
    quote:
    Wat doe je dan bij een float?
    Zie hierboven, desnoods breidt is z'n functie uit zodat ie alle verschillende datatypes kan checken..

    Verder kan je met PDO ook definieren wat een bepaald ding moet zijn:

    1
    2
    $sth->bindParam(':calories', $calories, PDO::PARAM_INT);
    $sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
    In theory there is no difference between theory and practice. In practice there is.
    pi_62074530
    Weet iemand een tootlje om 2 databases met elkaar te vergelijken en dan de verschillen in een statement kan zetten die ik kan gebruiken om een database aan te passen?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 2 oktober 2008 @ 13:16:57 #173
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_62074883
    quote:
    Op donderdag 2 oktober 2008 13:05 schreef Chandler het volgende:
    Weet iemand een tootlje om 2 databases met elkaar te vergelijken en dan de verschillen in een statement kan zetten die ik kan gebruiken om een database aan te passen?
    Oe.. dat zou wel flex wezen.. Ben ik ook wel benieuwd naar..
      donderdag 2 oktober 2008 @ 13:58:19 #174
    187069 slacker_nl
    Sicko pur sang
    pi_62076234
    In theory there is no difference between theory and practice. In practice there is.
    pi_62099147
    dat is idd ongeveer wat ik bedoel maar dan nu liefst gratis
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62134256
    Ik weet niet of het om de inhoud van de tabel of om de structuur gaat, maar ik heb ver in het verleden deze wel eens gebruikt:

    http://www.mysqldiff.org/index.php
      zondag 5 oktober 2008 @ 00:05:19 #177
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_62139040
    quote:
    Op zaterdag 4 oktober 2008 20:21 schreef spaceninjapirate het volgende:
    Ik weet niet of het om de inhoud van de tabel of om de structuur gaat, maar ik heb ver in het verleden deze wel eens gebruikt:

    http://www.mysqldiff.org/index.php
    Ik ben altijd wel huiverig met software waarbij de laatste release datum al erg lang geleden is..
    quote:
    Version 1.5.0 (10/01/2004)
      zondag 5 oktober 2008 @ 00:20:18 #178
    75592 GlowMouse
    l'état, c'est moi
    pi_62139414
    quote:
    Op zondag 5 oktober 2008 00:05 schreef ursel het volgende:

    [..]

    Ik ben altijd wel huiverig met software waarbij de laatste release datum al erg lang geleden is..
    [..]

    http://mirrors.kernel.org/gnu/patch/

    Als het doet wat het moet doen, is er weinig reden om het versienummer maar te verhogen om maar een nieuwe versie te hebben.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_62139526
    quote:
    Op zondag 5 oktober 2008 00:20 schreef GlowMouse het volgende:

    [..]

    http://mirrors.kernel.org/gnu/patch/

    Als het doet wat het moet doen, is er weinig reden om het versienummer maar te verhogen om maar een nieuwe versie te hebben.
    Je kunt je natuurlijk afvragen of het nog wel doet wat het moet doen. MySQL is in de afgeloen vier jaar ook behoorlijk veranderd.
    pi_62149477
    Ik zal het volgende week even testen en dan hier raporteren hoe het werkte!!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62160177
    Een vraagje... waarop ik geen antwoord kon vinden op internet maar is het werken met objecten of array's sneller?
    pi_62161981
    Volgens http://aggregation.novaak.net/?q=node/227 maakt het in PHP5 niet zoveel uit.

    Overigens ben ik van mening dat er maar weinig PHP scripts zullen zijn waar deze performanceverschillen zullen uitmaken. Ga liever voor begrijpelijke code (bij objecten weet je dmv properties wat er in zit, bij arrays is het altijd gissen)
      maandag 6 oktober 2008 @ 00:22:43 #183
    12221 Tijn
    Powered by MS Paint
    pi_62163070
    quote:
    Op dinsdag 30 september 2008 21:58 schreef SuperRembo het volgende:

    [..]

    Nee, blind addslashes() gebruiken is niet genoeg. Dat helpt alleen bij strings, niet bij numerieke waarden.

    Je kan beter geparameteriseerde query's gebruiken, bijvoorbeeld met behulp van PDO.
    Als je PDO gebruikt, moet je dan nog dingen als mysql_real_escape_string gebruiken?
    pi_62164276
    quote:
    Op maandag 6 oktober 2008 00:22 schreef Tijn het volgende:

    [..]

    Als je PDO gebruikt, moet je dan nog dingen als mysql_real_escape_string gebruiken?
    Als je zelf een sql string aan elkaar zou plakken dan moet dat nog steeds. Maar met PDO kan je ook geparameteriseerde query's gebruiken, en dan wordt de waarde die je aan de parameter geeft automatisch op de juiste manier verwerkt.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_62175433
    Ik heb een inzichts probleem en vraag jullie hulp.

    Stel ik wil in een database bijhouden op welke pagina's een bepaalde gebruiker is geweest, echter wil ik niet meer dan 25 pagina's onthouden van de gebruiker (dus de laatste 25). Nu vraag ik mij af hoe ik dit het beste in een ontwerp kan plaatsen. Ik gebruik per gebruiker/referer een appart ID (ID voor ip en ID voor referer) maar aangezien MySQL niet kan deleten vanaf een aantal regels moet ik hiervoor een andere opzet bedenken!.

    Anyone?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62182753
    je kan ook gewoon alle referers bijhouden, en dagelijks met een cronjob alles deleten is wat niet bij de nieuwste 25 zit?... en in de weergave gewoon een limit erop

    Om dit tijdens het schrijven bij te houden heb je extra queries nodig denk ik (ik zou niet weten hoe anders... ook met REPLACE INTO / INSERT.. ON DUPLICATE KEY ga je er niet uitkomen?), en dat lijkt me "zonde" om op iedere pageload te doen
    pi_62185450
    INSERT ON DUPLICATE gebruik ik idd nu, maar vind het nogal stom dat die limiet niet vanaf een aantal te gebruiken is voor een delete actie..
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62188519
    Wat je wel kunt doen is transactions gebruiken (en dus innodb tables). Autocommit moet dan uiteraard uit. Eerst met een select kijken hoeveel rijen er zijn, als er 25 (of meer) zijn het laagste id deleten. Daarna kun je altijd weer een rij toevoegen, en daarna de commit doen.

    Nadeel is wel dat als je eenmaal meer dan 25 rijen hebt voor een user, je dat dan ook houdt.

    Maar waarom zou je niet gewoon alles opslaan? Je kunt bij het tonen wel instellen dat alleen de 25 laatste entries worden getoond. Als iemand z'n cookies weggooit (om wat voor reden dan ook) is je telling toch in de war. Tenzij je ook alles gaat wissen op basis van leeftijd, bijvoorbeeld alles ouder dan een week.

    Extra voordeel van alles bewaren is dat je er ook weer leuke statistiekjes uit kunt halen over welke pagina's veel worden bezocht enzo.
    pi_62189024
    Hallo allemaal.

    Sinds kort heb ik een forum gemaakt: www.legotechnicfans.nl. Nu wil ik de forums aanmaken alleen worden deze niet zichtbaar op de site. Iemand een idee hoe dit op te lossen is?

    En nog iets: Hoe krijg ik die letters 'proFormell' uit mijn banner?

    Dank je wel.
    pi_62189593
    quote:
    Op maandag 6 oktober 2008 22:39 schreef Light het volgende:
    Wat je wel kunt doen is transactions gebruiken (en dus innodb tables). Autocommit moet dan uiteraard uit. Eerst met een select kijken hoeveel rijen er zijn, als er 25 (of meer) zijn het laagste id deleten. Daarna kun je altijd weer een rij toevoegen, en daarna de commit doen.
    Ik ben niet zo bekend met transactions, maar zijn dit niet heel veel extra (en onnodige) handelingen per pagina? Op zich is een extra query per pagina niet zo'n ramp natuurlijk, maar je wilt ook niet teveel onnodige dingen gaan doen op iedere pageload
    quote:
    Op maandag 6 oktober 2008 22:39 schreef Light het volgende:
    Maar waarom zou je niet gewoon alles opslaan? Je kunt bij het tonen wel instellen dat alleen de 25 laatste entries worden getoond. Als iemand z'n cookies weggooit (om wat voor reden dan ook) is je telling toch in de war. Tenzij je ook alles gaat wissen op basis van leeftijd, bijvoorbeeld alles ouder dan een week.

    Extra voordeel van alles bewaren is dat je er ook weer leuke statistiekjes uit kunt halen over welke pagina's veel worden bezocht enzo.
    Ja, dat dus
    Maar dat is de vraag niet, en dat is lang niet zo'n interessante discussie
    pi_62189624
    quote:
    Op maandag 6 oktober 2008 22:52 schreef AC4WHEELS.NL het volgende:
    Hallo allemaal.

    Sinds kort heb ik een forum gemaakt: www.legotechnicfans.nl. Nu wil ik de forums aanmaken alleen worden deze niet zichtbaar op de site. Iemand een idee hoe dit op te lossen is?

    En nog iets: Hoe krijg ik die letters 'proFormell' uit mijn banner?

    Dank je wel.
    Zie je de forums als admin wel? Zo ja, zijn ze alleen zichtbaar voor ingelogde leden bijvoorbeeld?
    Beetje meer info mag wel

    Die letters weghalen zal niet simpel wezen, kan je niet een ander logo regelen?
    pi_62189773
    quote:
    Op maandag 6 oktober 2008 23:10 schreef Xcalibur het volgende:

    [..]

    Zie je de forums als admin wel? Zo ja, zijn ze alleen zichtbaar voor ingelogde leden bijvoorbeeld?
    Beetje meer info mag wel

    Die letters weghalen zal niet simpel wezen, kan je niet een ander logo regelen?
    Die letters zijn er in 'gepojecteerd'. De forums zijn nu zichtbaar, waren toch verkeerde instellingen,.
    pi_62189855
    Oh, ik zie het al ja... die tekst is het logo, die over de achtergrond heenstaat kennelijk...

    Kan je het logo niet vervangen (vanuit het admin deel wellicht, of anders gewoon het bestand) met een transparante GIF of PNG? Dan is ie nog steeds clickable maar wel onzichtbaar
    pi_62189880
    quote:
    Op maandag 6 oktober 2008 23:18 schreef Xcalibur het volgende:
    Oh, ik zie het al ja... die tekst is het logo, die over de achtergrond heenstaat kennelijk...

    Kan je het logo niet vervangen (vanuit het admin deel wellicht, of anders gewoon het bestand) met een transparante GIF of PNG? Dan is ie nog steeds clickable maar wel onzichtbaar
    Ik ga gewoon het script eruit knallen
    pi_62189907
    quote:
    Op maandag 6 oktober 2008 23:08 schreef Xcalibur het volgende:

    [..]

    Ik ben niet zo bekend met transactions, maar zijn dit niet heel veel extra (en onnodige) handelingen per pagina? Op zich is een extra query per pagina niet zo'n ramp natuurlijk, maar je wilt ook niet teveel onnodige dingen gaan doen op iedere pageload
    Het levert wel extra overhead op, al was het maar door de extra queries. En door transactions te gebruiken wordt het als atomair blok behandeld, maar dat wil ook zeggen dat de volgende query moet wachten tot de vorige klaar is. In dat opzicht kan het nog vertragend werken ook (maar daar heb je vast niet veel last van met maar weinig bezoekers tegelijkertijd).
    quote:
    Ja, dat dus
    Maar dat is de vraag niet, en dat is lang niet zo'n interessante discussie
    True. Maar er is niets mis met meedenken. En zeker als iets lastig uitvoerbaar is, moet je je afvragen of het wel wenselijk en de beste optie is.
    pi_62193203
    dus eingelijk is het beste om geen delete te doen per view maar een x aantal keer per dag oid?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62199729
    Database en IPV6 opslag? hebben jullie hier al ervaring mee? gebruiken jullie varchar of is er nog een andere mogelijkheid?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 7 oktober 2008 @ 13:36:18 #198
    75592 GlowMouse
    l'état, c'est moi
    pi_62200579
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_62205023
    [3 Oct 20:32] Konstantin Osipov
    IPV6 support was added to MySQL v.6.0

    Helaas draai ik nog 5.2 oid maar andere vraag dan want die zag ik niet beantwoord worden, zal dezelfde functie INET_ATON ook gaan werken voor IPV6?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62210709
    quote:
    Op dinsdag 7 oktober 2008 16:22 schreef Chandler het volgende:
    [3 Oct 20:32] Konstantin Osipov
    IPV6 support was added to MySQL v.6.0

    Helaas draai ik nog 5.2 oid maar andere vraag dan want die zag ik niet beantwoord worden, zal dezelfde functie INET_ATON ook gaan werken voor IPV6?
    Dan ben je best uniek. MySQL 5.2 bestaat helemaal niet
    En MySQL 6.0 is nog alpha, dus dat ze het daar toevoegen heb je nu nog helemaal niets aan.
    pi_62224321
    Volgens mij haal ik PHP en MYSQL door elkaar

    MySQL v5.0.51 en dus is het maar afwachten hoe MySQL er straks mee om gaat?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62237162
    Okay

    Ik heb een site template, gesliced en wel, netjes in div'jes

    Vroeger, deed ik dan altijd een bepaalde php code, waardoor je tekstbestanden in de betreffende template kon laden, terwijl je gewoon op index.php bleef

    De URL werd dan wel langer met index.php?id=debetreffendefile

    PHP Include ofzo, het was een heel simpel stukje code, maar ik ben het kwijt!


    heb m

    [ Bericht 13% gewijzigd door HarryVanDeTap op 08-10-2008 18:15:38 ]
    Dr staat een paard in de gang!
    pi_62249469
    Vraagje,

    Zit er verschil in de methode om plaatjes te uploaden wanneer dit lokaal of naar op een ftp server gebeurt?
    Lokaal werkt mijn script namelijk wel, op mn ftp zijn alle bestanden indentiek, maar hier kan ik niet uploaden..

    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
    <?php
    function UploadImage($file$to_url$allowed_types NULL$allowed_ext NULL$sizes NULL)
    {
        
    $lastid DAL_VraagAanbod::GetLastID();
        
        if(
    is_uploaded_file($file["tmp_name"]))
        {                                                                
                                        
            list(
    $x$y$image_type) = getimagesize($file["tmp_name"]);
            list(
    $gx$gy$ctype) = $sizes;
            
    $split_name explode("."$file["name"]);        
            
    $split_name[0] = $lastid->vra_id//veranderen naar laatste Id      
            
    $file_name "vra_".$split_name[0] . "." $split_name[1];
            
            
    //in else ifs splitten om foutmelding mee te sturen
            
    if((($sizes == NULL) || (($ctype == MAX_SIZE) && (($x <= $gx) && ($y <= $gy))) || (($ctype == MIN_SIZE) && (($x >= $gx) && ($y >= $gy))) || (($ctype == EXACT_SIZE) && (($x == $gx) && ($y == $gy)))) && (($allowed_types == NULL) || (array_search($image_type$allowed_typestrue) !== false)) && (($allowed_ext == NULL) || (array_search(strtolower($split_name[count($split_name) - 1]), $allowed_ext) !== false)))
            {     
                
    move_uploaded_file($file["tmp_name"], ($to_url $file_name));
                return 
    $file_name;
            }
            
        }
        return 
    false;    
        
    }

    //IN DE CONTROLLER

    $insertedID DAL_VraagAanbod::GetLastID();
                            
            
    define("MAX_SIZE"1);
            
    define("MIN_SIZE"2);
            
    define("EXACT_SIZE"3);
                            
            
    $allowed_types = array(IMAGETYPE_GIFIMAGETYPE_JPEGIMAGETYPE_PNGIMAGETYPE_JPG); // array(types van: http://nl3.php.net/manual/nl/function.exif-imagetype.php)
            
    $allowed_ext = array("jpg""png""gif""jpeg""JPG""PNG""GIF""JPEG"); // array(ext1, ext2, ext3)
             
    $path "Images/"// Str: waar die geupload moet worden.
             
    $global $_FILES["vra_image"]; // De global.
                            
            
    if($filename UploadImage($global$path$allowed_types$allowed_ext$sizes))
            {   
                    
                
    $split_name explode("."$_FILES["vra_image"]["name"]);        
                
    $split_name[0] = $insertedID->vra_id//veranderen naar laatste Id
                    
    $file_name "vra_".$split_name[0] . "." $split_name[1];
                            
                   
    $Merged->vra_image $file_name;
                            
                   
    DAL_VraagAanbod::Insert($Merged);
                
    $lastId=DAL_VraagAanbod::LastId();
                
    $obj=DAL_VraagAanbod::GetByPK($lastId);
                
    $msg=array();
                
    $msg[]=GetMessage('VRAAGAANBOD','SAVEOK');
                
    $crit=array('vra_id'=>$obj->id);
                            
                
    GUI_VraagAanbod::ShowReadOnly($obj,$msg);
            }
    ?>


    [ Bericht 6% gewijzigd door Sjoe538 op 09-10-2008 00:26:04 ]
    pi_62249537
    quote:
    Op donderdag 9 oktober 2008 00:15 schreef Sjoe538 het volgende:
    Vraagje,

    Zit er verschil in de methode om plaatjes te uploaden wanneer dit lokaal of naar op een ftp server gebeurt?
    Lokaal werkt mijn script namelijk wel, op mn ftp zijn alle bestanden indentiek, maar hier kan ik niet uploaden..
    [ code verwijderd ]
    Btw, plaatje wordt wel met de juiste bestandsnaam in de database opgeslagen.. lokaal werkt alles zoals ik vermelde
    pi_62249571
    Tip: zet je php-code tussen [php] [ /php]. Dan krijg je leuke kleurtjes, leest makkelijk
    pi_62249724
    quote:
    Op donderdag 9 oktober 2008 00:19 schreef Light het volgende:
    Tip: zet je php-code tussen [php] [ /php]. Dan krijg je leuke kleurtjes, leest makkelijk
    Done
    pi_62249950
    quote:
    Op donderdag 9 oktober 2008 00:15 schreef Sjoe538 het volgende:
    Vraagje,

    Zit er verschil in de methode om plaatjes te uploaden wanneer dit lokaal of naar op een ftp server gebeurt?
    Lokaal werkt mijn script namelijk wel, op mn ftp zijn alle bestanden indentiek, maar hier kan ik niet uploaden..
    [ code verwijderd ]
    Lokaal is op een Windows systeem, en de server is een Linux-systeem? Zo te zien heb je een hoofdletter in de mapnaam waar alles naar toe gaat (Images/). Dat werkt wel, maar 'k zou voor de zekerheid alleen kleine letters gebruiken. Daarbij moet je wel de rechten hebben om in die directory te mogen schrijven (da's niet van toepassing in Windows, wel in Linux). En voor de zekerheid zou ik altijd een absoluut pad gebruiken. Kijk eens naar
    1
    2
    3
    <?php
    dirname
    (__FILE__);
    ?>
    pi_62252225
    Ik gok in dit geval op het ontbreken van schrijfrechten op de images map
    Absolute paden hebben in mijn ervaring weinig toegevoegde waarde...?
    pi_62256411
    quote:
    Op donderdag 9 oktober 2008 00:40 schreef Light het volgende:

    [..]

    Lokaal is op een Windows systeem, en de server is een Linux-systeem? Zo te zien heb je een hoofdletter in de mapnaam waar alles naar toe gaat (Images/). Dat werkt wel, maar 'k zou voor de zekerheid alleen kleine letters gebruiken. Daarbij moet je wel de rechten hebben om in die directory te mogen schrijven (da's niet van toepassing in Windows, wel in Linux). En voor de zekerheid zou ik altijd een absoluut pad gebruiken. Kijk eens naar
    [ code verwijderd ]
    Ik had idd geen schrijfrechten toegekend, nu wel, maar het werkt nog steeds niet..

    Mappenstructuur is als volgt:

    (hostname)->(projectnaam)->(images)
    de index file staat in de projectnaam map, link is dan ook hostname.projectnaam.net,
    path: images/ wordt dan vanuit de root, in dit geval projectnaam map gehaald right? dat is namelijk wel de bedoeling..
    pi_62256733
    500 'SITE CHMOD 600 Images': command not understood
    pi_62256968
    Nevermind, Nitroserve ondersteund geen CHMOD maar heeft een anonieme access bepaling via hun confi scherm.

    Bedankt voor de hulp iig
      vrijdag 10 oktober 2008 @ 10:02:02 #212
    187069 slacker_nl
    Sicko pur sang
    pi_62280606
    Overigens is 600 niet de juiste permissie om in een directory te mogen schrijven (is het wel, maar je zal nooit die direcory inkunnen): chmod 700 is de juiste optie.
    In theory there is no difference between theory and practice. In practice there is.
      zaterdag 11 oktober 2008 @ 20:38:19 #213
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62315827
    Ik wil via memcache sessies gaan bijhouden, en kwam de volgende site tegen: http://forums.devshed.com(...)sessions-509015.html
    Maar helaas geen antwoord daar

    Wat is een betere methode?
    pi_62318317
    wat heb je zelf al geprobeerd?
    het ziet er niet zo ingewikkeld uit, dus even een performance test bouwen lijkt me niet zo ingewikkeld?
    pi_62339641
    Heeft iemand ervaring met het beveiligen van code waar veel uurtjes in gestoken zijn? Iets van een stukje wat bijhoud waar / wanneer het gebruikt word is makkelijk te maken, maar nog makkelijker te kraken door iemand die er ook maar een beetje verstand van heeft...

    Ik heb eigenlijk niet zoveel trek om alle bestanden te encrypten met zend guard of dat soort dingen, maar kan momenteel niet op iets beters komen. Iemand een idee of er nog andere mogelijkheden zijn?
    pi_62339696
    Op je eigen server hosten waar verder niemand bijkan?
    Ik heb altijd een beetje hetzelfde probleem... beveiligingen zijn er door iemand met een beetje verstand van zaken altijd vrij eenvoudig uit te halen...
      maandag 13 oktober 2008 @ 01:01:51 #217
    187069 slacker_nl
    Sicko pur sang
    pi_62341252
    quote:
    Op zondag 12 oktober 2008 23:31 schreef spaceninjapirate het volgende:
    Heeft iemand ervaring met het beveiligen van code waar veel uurtjes in gestoken zijn? Iets van een stukje wat bijhoud waar / wanneer het gebruikt word is makkelijk te maken, maar nog makkelijker te kraken door iemand die er ook maar een beetje verstand van heeft...

    Ik heb eigenlijk niet zoveel trek om alle bestanden te encrypten met zend guard of dat soort dingen, maar kan momenteel niet op iets beters komen. Iemand een idee of er nog andere mogelijkheden zijn?
    Niet vrijgeven cq laten gebruiken...
    In theory there is no difference between theory and practice. In practice there is.
      maandag 13 oktober 2008 @ 09:02:26 #218
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_62343409
    quote:
    Op zaterdag 11 oktober 2008 22:46 schreef Xcalibur het volgende:
    wat heb je zelf al geprobeerd?
    het ziet er niet zo ingewikkeld uit, dus even een performance test bouwen lijkt me niet zo ingewikkeld?
    Bijde heb ik geprobeerd, maar de laatste (korte) optie werkt niet.
    Wie weet zit daar een fout in, maar als die optie goed zou zijn dan kies ik daar liever voor
    pi_62345382
    Ondersteunt jouw server die laatste optie wel?

    Ik weet niet precies hoe dat werkt, maar ik kan me voorstellen dat je een of andere memcache extentie nodig hebt ofzo. Gevoelsmatig is dit wel de beste / snelste oplossing idd
      maandag 13 oktober 2008 @ 14:55:17 #220
    187069 slacker_nl
    Sicko pur sang
    pi_62351696
    In theory there is no difference between theory and practice. In practice there is.
    pi_62368936
    Ik zit met een opzet probleem en zal het uitleggen als volgt.

    Een systeem dat ik gebouwd heb moet gaan werken met apparte modules, deze modules hebben allemaal een configuratie echter is de ene qua configuratie uitgebreider dan de andere. Ik schets een voorbeeld;

    Module 1: Kleur, Gegeven
    Module 2: Gegeven
    Module 3: Kleur, gegeven 1, gegeven 2, gegeven 3

    Nu wil ik in het huidige systeem een module kunnen kiezen en daarvan de configuratie instellen maar heb werkelijk waar geen flauw idee waar ik moet beginnen, hoe de opzet in elkaar gezet moet worden en hoe ik per module kan bepalen welke gegevens ik moet (laten) instellen. Heeft iemand een idee hoe ik dit moet aan pakken?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 14 oktober 2008 @ 12:42:40 #222
    137676 TommyGun
    Stik er maar in!
    pi_62374354
    Heren,

    Ik wil een systeem opzetten voor het bijhouden uren registratie, waarbij ik jullie hulp (advies) nodig heb. Het moet eigenlijk relatief simpel worden. (Wel met 'n database uiteraard). Namelijk: een tabel met afdelingen, een tabel met werknemers, een tabel met specificaties en een tabel met info (uren/opmerkingen/call nr). De invoer is als volgt:

    De persoon die het formulier invult selecteert zijn naam, (bijv Tommy), de afdeling (bijv Medical), de specificatie (bijv LINUX, Windows) en moet dus ook de mogelijkheid hebben om het aantal uren, het call nr en eventuele opmerkingen in te vullen welke dus ook opgeslagen worden met een relatie zodat deze aan de juiste gegevens komen te hangen.

    Daarnaast moet hier een rapport van gedraaid kunnen worden maar dat is voor later, wat mij ook nog wel zou lukken waarschijnlijk. Idem voor werknemers toevoegen enzo. Het hele invoer / relatie gebeuren betreffende de urenverantwoording gaat mij echter net wat te boven, vooral omdat ik van scratch moet beginnen en ik beter ben in het aanpassen van bestaande code.

    Nu heb ik natuurlijk wel wat gezocht en bijvoorbeeld http://www.achievo.org/ komt aardig in de buurt maar dit is weer veel te uitgebreid. Mijn zoektocht heeft verder helaas vrij weinig opgeleverd. Ik ben niet op zoek naar systemen voor billing, time cards, counters die je uren clocken of wat dan ook, maar om simpelweg in te vullen wat je gedaan hebt, waarvoor, en hoeveel tijd dit gekost heeft.

    Alle tips zijn welkom. B.v.d
    pi_62407732
    Hoe kan ik met alleen mysql alle records opvragen, behalve de laatste?
    pi_62411251
    quote:
    Op woensdag 15 oktober 2008 16:13 schreef boskameel het volgende:
    Hoe kan ik met alleen mysql alle records opvragen, behalve de laatste?
    1
    2
    3
    4
    SELECT * FROM table
    WHERE id NOT IN (
        SELECT MAX(id) FROM table;
    )
    Dan ga ik er wel vanuit dat max(id) het laatste record oplevert. En 'k heb getest of het werkt, niet of het efficient is/efficienter kan.
      woensdag 15 oktober 2008 @ 18:27:24 #225
    75592 GlowMouse
    l'état, c'est moi
    pi_62411458
    Wanneer zou je dat willen?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_62411837
    quote:
    Op woensdag 15 oktober 2008 18:27 schreef GlowMouse het volgende:
    Wanneer zou je dat willen?
    ik heb lang zitten denken.. maar kan niks bedenken
    Ik zeg altijd maar zo, met drie wielen heb je nog geen auto.
      woensdag 15 oktober 2008 @ 20:36:48 #227
    62215 qu63
    ..de tijd drinkt..
    pi_62414864
    Ah, hier zijn jullie

    Niet een echt specifieke PHP-vraag, maar ik ben op zoek naar een soort portfolio script (eventueel een plugin voor Wordpress). Welke gebruiken jullie (als je er een gebruikt dan..)?
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_62415693
    portfolio is nogal een ruim begrip? Wat wil je precies laten zien?
    Ik zeg altijd maar zo, met drie wielen heb je nog geen auto.
      woensdag 15 oktober 2008 @ 21:01:48 #229
    62215 qu63
    ..de tijd drinkt..
    pi_62415781
    quote:
    Op woensdag 15 oktober 2008 21:00 schreef aardappel het volgende:
    portfolio is nogal een ruim begrip? Wat wil je precies laten zien?
    Verschillende documenten voor school (projecten e.d.). Geen websites of leuke foto's dus.

    Het zullen vooral Word en Excel documenten zijn, of ik moet ze leuk om kunnen zetten in HTML
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_62425371
    quote:
    Op woensdag 15 oktober 2008 18:19 schreef Light het volgende:

    [..]
    [ code verwijderd ]

    Dan ga ik er wel vanuit dat max(id) het laatste record oplevert. En 'k heb getest of het werkt, niet of het efficient is/efficienter kan.
    Ah, op die manier dus. Danke sjeun .
      donderdag 16 oktober 2008 @ 12:00:28 #231
    187069 slacker_nl
    Sicko pur sang
    pi_62430402
    quote:
    Op woensdag 15 oktober 2008 18:19 schreef Light het volgende:

    [..]
    [ code verwijderd ]

    Dan ga ik er wel vanuit dat max(id) het laatste record oplevert. En 'k heb getest of het werkt, niet of het efficient is/efficienter kan.
    Ik zou gewoon voor een oplossing in php gaan.. De laatste entry negeren is ook makkelijk
    In theory there is no difference between theory and practice. In practice there is.
    pi_62434752
    Zou iemand een reactie willen geven op mijn post?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62435047
    quote:
    Op donderdag 16 oktober 2008 14:45 schreef Chandler het volgende:
    Zou iemand een reactie willen geven op mijn post?
    ok:

    WTF waar heb je het over?
      donderdag 16 oktober 2008 @ 15:31:27 #234
    84926 WyriHaximus
    Release the hounds smithers!
    pi_62435985
    Heeft iemand hier ook authenticatie met active directory gedaan? Ben voor me werk er mee bezig maar lukt niet echt. Iemand een voorbeeldje hoe hij/zij het gedaan heeft?
    phluphy for president!
    pi_62440348
    quote:
    Op donderdag 16 oktober 2008 12:00 schreef slacker_nl het volgende:

    [..]

    Ik zou gewoon voor een oplossing in php gaan.. De laatste entry negeren is ook makkelijk
    Helemaal mee eens.
      donderdag 16 oktober 2008 @ 20:46:19 #236
    183595 Lente_ninja
    They never saw it coming
    pi_62443921
    Ik ben bezig met een opdracht voor een cursus PHP, en er zit 'ergens' een fout in de code (ik ben al uren bezig en hij doet het maar niet ). Welke dappere fokker geeft deze schone dame bijles?

    http://pastebin.com/m687847b8

    http://pastebin.com/dbf0788c

    Uitleg zou ik trouwens wel waarderen. Ik moet m'n fout wel begrijpen, anders schiet ik er nog niets mee op
    pi_62444183
    Heb je ook een foutmelding en een regelnummer ofzo?
    Het is nogal een lap code, en ik ga niet alles zitten lezen in de hoop een foutje te ontdekken namelijk

    Dat is les 1 van de bijles: geef een duidelijke omschrijving van het probleem
    Met "hij doet het niet" kunnen we niks...
      donderdag 16 oktober 2008 @ 21:08:57 #238
    75592 GlowMouse
    l'état, c'est moi
    pi_62444520
    En probeer die hele lap code van vraag 1 t/m 19 eens met een for-loop af te handelen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      donderdag 16 oktober 2008 @ 21:14:04 #239
    183595 Lente_ninja
    They never saw it coming
    pi_62444623
    Ik krijg geen foutmelding, alleen een leeg scherm (wel met de juiste achtergrondkleur) als de vragenlijst verstuurd is. Ik zou een dank-je bericht moeten krijgen, en de gegevens (persoonlijk en antwoorden op enquete) zouden toegevoegd moeten worden aan de database, maar dat doet 'ie dus niet.

    Er staat wel iets in de opdracht over een 'loop', maar dat is alleen voor gevorderden, whehehe
      donderdag 16 oktober 2008 @ 21:33:08 #240
    75592 GlowMouse
    l'état, c'est moi
    pi_62445079
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      donderdag 16 oktober 2008 @ 21:36:28 #241
    12221 Tijn
    Powered by MS Paint
    pi_62445156
    quote:
    Op donderdag 16 oktober 2008 21:14 schreef Lente_ninja het volgende:

    Er staat wel iets in de opdracht over een 'loop', maar dat is alleen voor gevorderden, whehehe
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    for($i=1;$i<=19;$i++)
    {
        
    $statementcode $i;
        
    $score $_POST[$i];
        
    $query "INSERT INTO rating VALUES ( '$statementcode', '$participantcode', '$score');";
        
    mysql_query($query);
    }
    ?>


    Voila, je bent gevorderd
      donderdag 16 oktober 2008 @ 21:41:28 #242
    75592 GlowMouse
    l'état, c'est moi
    pi_62445282
    Het genereren van de vragenlijst kan ook nog met een loop als je de vragen in een array zet
    1
    2
    3
    4
    5
    6
    7
    <?php
    $vraag
    [1] = 'asdf';
    $vraag[2] = 'ghjkl';
    for(
    $i=1$i<=2$i++) {
      echo 
    "Vraag $i is $vraag[$i] <br />";
    }
    ?>
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_62445731
    quote:
    Op donderdag 16 oktober 2008 21:14 schreef Lente_ninja het volgende:
    Ik krijg geen foutmelding, alleen een leeg scherm (wel met de juiste achtergrondkleur) als de vragenlijst verstuurd is. Ik zou een dank-je bericht moeten krijgen, en de gegevens (persoonlijk en antwoorden op enquete) zouden toegevoegd moeten worden aan de database, maar dat doet 'ie dus niet.
    Dan moet je even
    1
    2
    3
    <?php
    error_reporting
    (E_ALL E_NOTICE);
    ?>

    bovenaan in je php-code zetten. Bij voorkeur zo dat er niets verandert in de regelnummering :)
      vrijdag 17 oktober 2008 @ 10:56:43 #244
    187069 slacker_nl
    Sicko pur sang
    pi_62454894
    quote:
    Op donderdag 16 oktober 2008 21:57 schreef Light het volgende:
    Persoonlijk zou ik dit gebruiken als je aan het devven bent:

    error_reporting(E_ALL | E_STRICT);
    In theory there is no difference between theory and practice. In practice there is.
    pi_62458669
    quote:
    Op donderdag 16 oktober 2008 14:55 schreef mcDavid het volgende:

    [..]

    ok:

    WTF waar heb je het over?
    Ik zal die post eens wat verduidelijken (niet nu).

    Een andere vraag.

    Ik heb een array van tijden die een bepaald script bezig is met sql queries, deze querie tijden wil ik bewaren in een CSV bestand voor checks, nu heb ik de volgende code

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
            
    function rondaf(&$value, &$id)
            {
                
    $value round($value5);
            }

            
    $benchFile "bench/bench" date("Ymd") . ".csv";

            if (
    is_dir("./bench"))
            {
                
    $fd fopen($benchFile"a+");
                if (
    filesize($benchFile) == 0)
                {
                    
    fputs($fdimplode(";"array_keys($GLOBALS['stat'])) . "\n");
                }
                
    fputs($fdimplode(";"array_walk($GLOBALS['stat'], "rondaf")) . "\n");
                
    fclose($fd);
            }
    ?>


    echter worden de getallen niet afgerond en krijg ik dit als uitkomst

    10;230x30;0.0150310993195;4.52320289612;0.00122690200806;4.50191783905;0.000737905502319;0;4.10079956055E-5;0.000967979431152;0.000454902648926;0.000838041305542;0.000427007675171;0;0;0;0;0;0;0;0;0.000248908996582;0;0;0;0.0115349292755


    en eingelijk wil ik alle getallen met een punt (afkorten tot 6 cijfers na de punt). Hoe los ik dit op?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 17 oktober 2008 @ 13:41:24 #246
    12880 CraZaay
    prettig gestoord
    pi_62459035
    quote:
    Op vrijdag 17 oktober 2008 13:28 schreef Chandler het volgende:

    en eingelijk wil ik alle getallen met een punt (afkorten tot 6 cijfers na de punt). Hoe los ik dit op?
    Wat dacht je van round()

    edit: Doe je al zo te zien, geen idee dan. Bah... $GLOBALS.
    pi_62459374
    @CraZaay; waarom bah $GLOBALS? als je geen classes gebruikt hoe wil je dan al die info overal in functies gebruiken?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62459749
    quote:
    Op vrijdag 17 oktober 2008 10:56 schreef slacker_nl het volgende:

    [..]

    Persoonlijk zou ik dit gebruiken als je aan het devven bent:

    error_reporting(E_ALL | E_STRICT);
    Ja, maar in het geval van de post waar ik op reageerde niet. Het gaat er mij dan vooral om dat we niet worden overspoeld met notices.
    pi_62459783
    quote:
    Op vrijdag 17 oktober 2008 13:28 schreef Chandler het volgende:

    en eingelijk wil ik alle getallen met een punt (afkorten tot 6 cijfers na de punt). Hoe los ik dit op?
    Afronden bij weergeven?
    1
    2
    3
    <?php
    printf
    ('%.6f'$myfloat);
    ?>


    [ Bericht 0% gewijzigd door Light op 17-10-2008 14:38:28 ]
    pi_62460969
    Dat werkt idd, tnx Light, echter werkt het niet als ik Array Walk probeer maar wel als ik zelf een foreach doe...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 17 oktober 2008 @ 16:29:36 #251
    187069 slacker_nl
    Sicko pur sang
    pi_62463624
    quote:
    Op vrijdag 17 oktober 2008 14:47 schreef Chandler het volgende:
    Dat werkt idd, tnx Light, echter werkt het niet als ik Array Walk probeer maar wel als ik zelf een foreach doe...
    array_map wellicht?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    for ($i 0$i 5; ++$i) {
        
    $arr[] = 0.111111111111;
    }


    function 
    rondaf(&$val) {
        
    $val sprintf("%.6f"$val);
    }

    array_walk($arr"rondaf");

    /* Of 
    function rondaf($val) {
        return sprintf("%.6f", $val);
    }

    $arr = array_map("rondaf", $arr);
    */
    ?>


    [ Bericht 45% gewijzigd door slacker_nl op 17-10-2008 16:43:25 ]
    In theory there is no difference between theory and practice. In practice there is.
    pi_62473227
    Ik heb een vraagje. Ik ben bezig met een UBB-parser en voordat ik me ga verdiepen in stackbased parsen heb ik jullie hulp nodig bij het escapen van smilies uit ubb-tags met attributen. Voorbeeld:
    1
    2
    3
    4
    <?php
      
    //[url=(http://blaat.nl)]Website[/url]
      // :/ is dus een smilie en wordt vervangen door de afbeelding
    ?>


    Hoe moet ik dit aanpakken.
    pi_62473355
    quote:
    Op vrijdag 17 oktober 2008 23:00 schreef Pelgrim het volgende:
    Ik heb een vraagje. Ik ben bezig met een UBB-parser en voordat ik me ga verdiepen in stackbased parsen heb ik jullie hulp nodig bij het escapen van smilies uit ubb-tags met attributen. Voorbeeld:
    [ code verwijderd ]

    Hoe moet ik dit aanpakken.
    Je zou kunnen overwegen om :/ geen smilie te maken. Andere optie is om met preg_replace aan de slag te gaan en :/ niet te vervangen als er een / achter staat.
      zaterdag 18 oktober 2008 @ 10:47:04 #254
    187069 slacker_nl
    Sicko pur sang
    pi_62479605
    quote:
    Op donderdag 16 oktober 2008 15:31 schreef WyriHaximus het volgende:
    Heeft iemand hier ook authenticatie met active directory gedaan? Ben voor me werk er mee bezig maar lukt niet echt. Iemand een voorbeeldje hoe hij/zij het gedaan heeft?
    Ja, http://www.euronet.nl/users/wesleys/dig/ADOnline.php
    In theory there is no difference between theory and practice. In practice there is.
      zondag 19 oktober 2008 @ 19:34:20 #255
    74523 BaggerUser
    ModderFokker!
    pi_62510303
    Hoi ik ben net met cakePHP begonnen echter is het een beetje een geworstel omdat niet alles netjes is gedocumenteerd. Nu ben ik tegen een probleem aangelopen waarvan ik niet snap hoe ik het moet oplossen, of dat ik het juist anders moet aanpakken.

    De situatie is als volgt:


    nu wil ik dus op de pagina:

    http://localhost/subcategories/view/1 informatie ophalen uit de tabel categories. Ik wil namelijk de naam weten die bij het id 1 van categories hoort. Hoe moet ik dit nu oplossen? en kan (hoort) het wel op deze manier?

    ps het zijn tabellen geen apparte databases
    De enige echte BaggerUser!
    Riemen
    fiets kopen
      zondag 19 oktober 2008 @ 23:03:19 #256
    12880 CraZaay
    prettig gestoord
    pi_62516361
    quote:
    Op zondag 19 oktober 2008 19:34 schreef BaggerUser het volgende:
    Hoi ik ben net met cakePHP begonnen echter is het een beetje een geworstel omdat niet alles netjes is gedocumenteerd. Nu ben ik tegen een probleem aangelopen waarvan ik niet snap hoe ik het moet oplossen, of dat ik het juist anders moet aanpakken.

    De situatie is als volgt:
    [ afbeelding ]

    nu wil ik dus op de pagina:

    http://localhost/subcategories/view/1 informatie ophalen uit de tabel categories. Ik wil namelijk de naam weten die bij het id 1 van categories hoort. Hoe moet ik dit nu oplossen? en kan (hoort) het wel op deze manier?

    ps het zijn tabellen geen apparte databases
    Heeft niet echt met Cake te maken Wanneer een subcategorie in principe hetzelfde is als een categorie, dan zou ik ze in 1 tabel zetten met ene veld parent_id waarin je bij subcategorieën het id van de hoofdcategorie zet (en bij een hoofdcategorie gewoon NULL).

    Los daarvan zie ik het probleem niet echt: "Ik wil namelijk de naam weten die bij het id 1 van categories hoort. Hoe moet ik dit nu oplossen?". Wat dacht je van een query als "SELECT FROM categories WHERE id = 1"
      maandag 20 oktober 2008 @ 12:39:18 #257
    37634 wobbel
    Da WoBBeL King
    pi_62525803
    Ik heb een array die er zo uitziet:

    1
    2
    3
    <?php
    $array 
    = array ( "a""b""c""d""e""f""g""h""i" );
    ?>


    Nu wil ik deze in een foreach gooien, maar ik wil alleen de eerste 4 uit deze array in de foreach hebben.

    En hoe maak ik een foreach voor de 5e t/m 8e uit deze array?

    1e foreach heeft als output:
    a
    b
    c
    d
    e

    2e foreach heeft als output:
    f
    g
    h
    i
      maandag 20 oktober 2008 @ 12:44:52 #258
    12880 CraZaay
    prettig gestoord
    pi_62525910
    quote:
    Op maandag 20 oktober 2008 12:39 schreef wobbel het volgende:
    Ik heb een array die er zo uitziet:
    [ code verwijderd ]

    Nu wil ik deze in een foreach gooien, maar ik wil alleen de eerste 4 uit deze array in de foreach hebben.

    En hoe maak ik een foreach voor de 5e t/m 8e uit deze array?
    Waarom niet in één foreach en de eerste 5 aan $var1 hangen en de rest aan $var2?
      maandag 20 oktober 2008 @ 12:50:07 #259
    37634 wobbel
    Da WoBBeL King
    pi_62526037
    quote:
    Op maandag 20 oktober 2008 12:44 schreef CraZaay het volgende:

    [..]

    Waarom niet in één foreach en de eerste 5 aan $var1 hangen en de rest aan $var2?
    Je bedoelt een counter maken, en als de counter boven een bepaald getal uitkomt dat je dan het aan een andere $var gaat toewijzen?
    pi_62526114
    quote:
    Op maandag 20 oktober 2008 12:39 schreef wobbel het volgende:
    Ik heb een array die er zo uitziet:
    [ code verwijderd ]

    Nu wil ik deze in een foreach gooien, maar ik wil alleen de eerste 4 uit deze array in de foreach hebben.

    En hoe maak ik een foreach voor de 5e t/m 8e uit deze array?

    1e foreach heeft als output:
    a
    b
    c
    d
    e

    2e foreach heeft als output:
    f
    g
    h
    i
    Een foreach pakt per definitie de hele array. Om de eerste 5 elementen te pakken kun je het volgende doen:
    1
    2
    3
    4
    5
    6
    <?php
    for($i 0$i 5$i++) {
        
    $a $array[$i];
        ... 
    doe hier vanalles
    }
    ?>
      maandag 20 oktober 2008 @ 13:38:04 #261
    12880 CraZaay
    prettig gestoord
    pi_62527181
    quote:
    Op maandag 20 oktober 2008 12:50 schreef wobbel het volgende:

    [..]

    Je bedoelt een counter maken, en als de counter boven een bepaald getal uitkomt dat je dan het aan een andere $var gaat toewijzen?
    Juist, of zoals Light zegt een for() gebruiken.
    pi_62532214
    Snap een rewrite rule even niet meer, misschien dat een van jullie het aan me kan uitleggen

    ik wil dat www.site.nl/test herschreven wordt naar www.site.nl/?blaat=1

    nu heb ik de volgende 3 geprobeerd:
    1
    2
    3
    RewriteRule ^test$ ?blaat=1
    RewriteRule ^test$ /?blaat=1
    RewriteRule ^test$ index.php?blaat=1


    maar dat komt uit op:
    www.site.nl/test?blaat=1

    Hoe moet ik dit wel doen? -O-
      maandag 20 oktober 2008 @ 17:16:32 #263
    12880 CraZaay
    prettig gestoord
    pi_62532792
    Je matcht sowieso 3 keer op "RewriteRule ^test$". Waarom denk je dat 'ie na de eerste match nog iets met die andere twee doet?
      maandag 20 oktober 2008 @ 17:23:42 #264
    187069 slacker_nl
    Sicko pur sang
    pi_62532972
    quote:
    Op maandag 20 oktober 2008 12:39 schreef wobbel het volgende:
    Ik heb een array die er zo uitziet:
    [ code verwijderd ]

    Nu wil ik deze in een foreach gooien, maar ik wil alleen de eerste 4 uit deze array in de foreach hebben.

    En hoe maak ik een foreach voor de 5e t/m 8e uit deze array?

    1e foreach heeft als output:
    a
    b
    c
    d
    e

    2e foreach heeft als output:
    f
    g
    h
    i
    array_slice

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $arr 
    range(0,8);
    $arr_zero2four array_slice($arr0,4);
    $arr_four2end array_slice($arr4,count($arr));

    print_r($arr);
    print_r($arr_zero2four);
    print_r($arr_four2end);

    /* Of array_splice */
    $arr_zero2four array_splice($arr0,4);
    print_r($arr_zero2four);
    print_r($arr);
    ?>


    Dan kan je nu gaan foreach doen over je arrays, of je doet het met for($i = 0; $i < 4; ++$i) achtige loops.

    [ Bericht 28% gewijzigd door slacker_nl op 20-10-2008 17:34:16 ]
    In theory there is no difference between theory and practice. In practice there is.
      maandag 20 oktober 2008 @ 17:27:18 #265
    187069 slacker_nl
    Sicko pur sang
    pi_62533062
    quote:
    Op maandag 20 oktober 2008 16:53 schreef spaceninjapirate het volgende:
    Snap een rewrite rule even niet meer, misschien dat een van jullie het aan me kan uitleggen

    ik wil dat www.site.nl/test herschreven wordt naar www.site.nl/?blaat=1

    nu heb ik de volgende 3 geprobeerd:
    [ code verwijderd ]

    maar dat komt uit op:
    www.site.nl/test?blaat=1

    Hoe moet ik dit wel doen?
    Dit in een ander topic neerzetten. Dit heeft helemaal niks met php of mysql te maken.
    In theory there is no difference between theory and practice. In practice there is.
    pi_62540699
    quote:
    Op maandag 20 oktober 2008 17:16 schreef CraZaay het volgende:
    Je matcht sowieso 3 keer op "RewriteRule ^test$". Waarom denk je dat 'ie na de eerste match nog iets met die andere twee doet?
    Ik heb het ook niet zo in de .htaccess gezet, maar elke regel een keer (los) erin gezet. Ze gaven alle 3 precies het zelfde resultaat. Het leek me beter zo neer te zetten dan 3 code blokken. voor 3 zinnen.
    quote:
    Op maandag 20 oktober 2008 17:27 schreef slacker_nl het volgende:

    [..]

    Dit in een ander topic neerzetten. Dit heeft helemaal niks met php of mysql te maken.
    geef vooral niet aan hoe, wat, nieuw topic of ander topic ...
      dinsdag 21 oktober 2008 @ 00:19:56 #267
    187069 slacker_nl
    Sicko pur sang
    pi_62544376
    Een ander topic, een nieuw topic, een topic waar je kan praten over mod_rewrite. Beetje je best doen
    In theory there is no difference between theory and practice. In practice there is.
    pi_62566005
    Ik was even bezig met een scriptje om te detecteren of iemand een reserved ip adres gebruikt (bv voor lokaal te testen van een site).

    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
    $reservedIpRanges 
    = array(
    ip2long("0.0.0.1")     => ip2long("0.255.255.255"),
    ip2long("10.0.0.0")    => ip2long("10.255.255.255"),
    ip2long("14.0.0.0")    => ip2long("14.255.255.255"),
    ip2long("24.0.0.0")    => ip2long("24.255.255.255"),
    ip2long("127.0.0.0")   => ip2long("127.255.255"),
    ip2long("169.254.0.0") => ip2long("169.254.255.255"),
    ip2long("172.16.0.0")  => ip2long("172.31.255.255"),
    ip2long("192.0.2.0")   => ip2long("192.0.2.255"),
    ip2long("198.18.0.0")  => ip2long("198.19.255.255"),
    ip2long("192.88.99.0") => ip2long("192.88.99.255"),
    ip2long("192.168.0.0") => ip2long("192.168.255.255"),
    ip2long("224.0.0.0")   => ip2long("239.255.255.255"),
    ip2long("240.0.0.0")   => ip2long("247.255.255"),
    );

    $ip "192.168.1.21";
    foreach (
    $reservedIpRanges AS $from => $to)
    {
       if (
    $from <= ip2long($ip) && $to >= ip2long($ip))
       {
           echo 
    $ip ' in de range van ' $from " tot " $to;
       }
    }
    ?>


    Mis ik nog een IP adres range? anyone?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_62566628
    quote:
    Op dinsdag 21 oktober 2008 21:40 schreef Chandler het volgende:
    Ik was even bezig met een scriptje om te detecteren of iemand een reserved ip adres gebruikt (bv voor lokaal te testen van een site).
    [ code verwijderd ]

    Mis ik nog een IP adres range? anyone?
    Ik ken niet al die ranges uit m'n hoofd, maar je hebt iig een behoorlijke lijst
    Overigens kun je 25 aanroepen van ip2long() uitsparen door die aanroep buiten de foreach() { } te plaatsen.
    pi_62568565
    Ja idd, dat scheelt ook weer wat preformance!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      woensdag 22 oktober 2008 @ 18:13:28 #271
    12221 Tijn
    Powered by MS Paint
    pi_62588876
    Ik ben bezig met een PHP-applicatietje voor m'n urenregistratie en heb een probleempje waar ik nu al een tijdje over aan het puzzelen ben, maar er niet zo 123 uit kom.

    Ik wil graag van m'n activiteiten het aantal uren per dag bij houden wat ik aan deze activiteiten heb gespendeerd. Dit sla ik op in een MySQL database, waarvoor ik een tabel heb waar bijvoorbeeld het volgende in staat:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    id | activiteit_id | timestamp  | hours
    ----------------------------------------
    1  | 1             | 1224453600 | 8
    2  | 1             | 1224626400 | 9
    3  | 1             | 1224712800 | 5
    4  | 1             | 1224799200 | 8
    5  | 2             | 1224453600 | 8
    6  | 2             | 1224540000 | 6
    7  | 2             | 1224626400 | 5
    8  | 2             | 1224799200 | 7


    Hier kun je zien op welke dag (timestamp) ik hoeveel uur (hours) aan welke activiteit (activiteit_id) heb besteed.

    Nu wil ik hier graag dmv PHP per week een overzichtje van tonen in een webpagina. Ik doe dan een query waarbij ik alle resultaten opvraag die binnen een timestamp op maandag en een timestamp op vrijdag vallen. Dit wil ik dan graag als volgt weergeven:

    1
    2
    3
    4
    activiteit | 1224453600 | 1224540000 | 1224626400 | 1224712800 | 1224799200
    ---------------------------------------------------------------------------
    1          | 8          |            | 9          | 5          | 8
    2          | 8          | 6          | 5          |            | 7


    Hier heb ik dus de activiteit en de timestamps van maandag t/m vrijdag op de eerste regel geplaatst en daaronder ingevuld welke activiteit ik hoeveel uur op welke dag heb gedaan.

    Is er een manier van querien dat de data al op deze manier uit de database komt rollen? En zo niet, wat zou dan een handige constructie zijn om in PHP deze data op de juiste manier weer te laten geven?

    Ik heb al veel zitten proberen, maar ik eindig elke keer met een puinzooi van ontzettend veel geneste loops waar geen touw meer aan vast te knopen is en dat moet vast beter kunnen.
    pi_62589439
    quote:
    Op woensdag 22 oktober 2008 18:13 schreef Tijn het volgende:

    Nu wil ik hier graag dmv PHP per week een overzichtje van tonen in een webpagina. Ik doe dan een query waarbij ik alle resultaten opvraag die binnen een timestamp op maandag en een timestamp op vrijdag vallen. Dit wil ik dan graag als volgt weergeven:
    [ code verwijderd ]

    Hier heb ik dus de activiteit en de timestamps van maandag t/m vrijdag op de eerste regel geplaatst en daaronder ingevuld welke activiteit ik hoeveel uur op welke dag heb gedaan.

    Is er een manier van querien dat de data al op deze manier uit de database komt rollen? En zo niet, wat zou dan een handige constructie zijn om in PHP deze data op de juiste manier weer te laten geven?

    Ik heb al veel zitten proberen, maar ik eindig elke keer met een puinzooi van ontzettend veel geneste loops waar geen touw meer aan vast te knopen is en dat moet vast beter kunnen.
    Ik denk dat je niet helemaal aan geneste loops ontkomt.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?php
    $days 
    = array(12244536001224540000etc); // timestamps die in het overzicht staan
    $query 'SELECT * FROM table WHERE timestamp BETWEEN begin AND  eind'//zelf aanpassen
    $result mysql_query($query);
    while(
    $row mysql_fetch_assoc($result) {
      
    // uitlezen database
      
    $activiteiten[$row['activiteit_id']][$row['timestamp']] = $row['hours'];
    }
    foreach(
    $activiteiten as $id => $activiteit) {
      echo 
    '<tr><td>'.$id.'</td>';
      foreach(
    $days as $day) {
        echo 
    '<td>';
        if(isset(
    $activiteit[$day])) {
          echo 
    $activiteit[$day];
        } else {
          echo 
    '&nbsp;'
        
    }
        echo 
    '</td>';
      }
      echo 
    '</tr>';
    }
    ?>

    Zoiets dan. Niet getest, zitten vast fouten in, de output moet sowieso verbeterd worden. (<tr> zonder <table> is niet echt de bedoeling enzo, maar daar red je je vast wel mee.)
    pi_62593784
    Ik heb geen antwoord maar wel een vraag erover

    Waarom sla je je datum als timestamp op, en niet als datum?
    En welk moment op de dag is je timestamp? Altijd 9:00 's ochtends, of het moment waarop je ergens aan begint? of wat? Het lijkt mij knap onhandig om dat op basis van een timestamp te doen als je een datum wilt weten iig
      woensdag 22 oktober 2008 @ 21:02:05 #274
    12221 Tijn
    Powered by MS Paint
    pi_62594133
    Bedankt Light! Ik zal eens even bestuderen wat je precies hebt bedacht
    quote:
    Op woensdag 22 oktober 2008 20:51 schreef Xcalibur het volgende:

    Waarom sla je je datum als timestamp op, en niet als datum?
    En welk moment op de dag is je timestamp? Altijd 9:00 's ochtends, of het moment waarop je ergens aan begint? of wat? Het lijkt mij knap onhandig om dat op basis van een timestamp te doen als je een datum wilt weten iig
    Ik gebruik eigenlijk altijd timestamps als ik ergens de datum en/of tijd van wil opslaan. Voornamelijk omdat ik niet weet hoe de datum-functies van MySQL werken Ik gebruik vervolgens altijd strftime() om de datum weer te geven. Ik zou niet weten hoe ik bv het weeknummer of de dag van de week moest weergeven van een datum als ik het anders dan een timestamp opsla.
    pi_62594984
    niet echt een goede reden dus

    Datums / tijden en timestamps kun je vrij eenvoudig in elkaar omrekenen... ik gebruik liever date of datetime velden, omdat ik dan gewoon zie wat er staat. Bij een timestamp is dat altijd nogal een raadsel
      woensdag 22 oktober 2008 @ 21:26:59 #276
    12221 Tijn
    Powered by MS Paint
    pi_62595047
    quote:
    Op woensdag 22 oktober 2008 21:25 schreef Xcalibur het volgende:

    Datums / tijden en timestamps kun je vrij eenvoudig in elkaar omrekenen...
    Als je nou ook even laat zien hoe, dan heb ik er misschien nog wat aan
    pi_62595243
    quote:
    Op woensdag 22 oktober 2008 21:02 schreef Tijn het volgende:
    Bedankt Light! Ik zal eens even bestuderen wat je precies hebt bedacht
    Ik hoor het wel als het gelukt is (of als het niet lukt)
    quote:
    Ik gebruik eigenlijk altijd timestamps als ik ergens de datum en/of tijd van wil opslaan. Voornamelijk omdat ik niet weet hoe de datum-functies van MySQL werken Ik gebruik vervolgens altijd strftime() om de datum weer te geven. Ik zou niet weten hoe ik bv het weeknummer of de dag van de week moest weergeven van een datum als ik het anders dan een timestamp opsla.
    Op www.mysql.com kun je voldoende documentatie vinden over de datumfuncties. En er is in MySQL ook een functie UNIX_TIMESTAMP() om een DATE naar een timestamp om te zetten. Ik gebruik zelf ook meestal timestamps, maar de datum/tijd dingen in MySQL kunnen best handig zijn.
    pi_62603892
    Vanaf nu zal ik hier ook te vinden zijn , ben begonnen aan een Stage bij een bedrijf die veel PHP en MySQL doet, ben nog een behoorlijke dummy
    Enschede, onze stad! ons domein!
      donderdag 23 oktober 2008 @ 10:13:26 #279
    12880 CraZaay
    prettig gestoord
    pi_62605045
    Ik gebruik altijd DATE of DATETIME. Je wilt toch altijd een data type gebruiken wat zo goed mogelijk het soort data wat je op gaat slaan omschrijft?
      donderdag 23 oktober 2008 @ 10:53:39 #280
    12221 Tijn
    Powered by MS Paint
    pi_62605837
    quote:
    Op donderdag 23 oktober 2008 10:13 schreef CraZaay het volgende:
    Ik gebruik altijd DATE of DATETIME. Je wilt toch altijd een data type gebruiken wat zo goed mogelijk het soort data wat je op gaat slaan omschrijft?
    Ja, ik wil ook niet beweren dat timestamps zo geniaal zijn of dat dat de beste manier is. Het is puur luiheid dat ik de datum-functies van MySQL nooit heb uitgezocht. Als ik zou weten hoe ik met DATE of DATETIME velden kan werken, zou ik dat waarschijnlijk gebruiken.
      donderdag 23 oktober 2008 @ 11:01:28 #281
    12880 CraZaay
    prettig gestoord
    pi_62605976
    quote:
    Op donderdag 23 oktober 2008 10:53 schreef Tijn het volgende:

    Ja, ik wil ook niet beweren dat timestamps zo geniaal zijn of dat dat de beste manier is. Het is puur luiheid dat ik de datum-functies van MySQL nooit heb uitgezocht. Als ik zou weten hoe ik met DATE of DATETIME velden kan werken, zou ik dat waarschijnlijk gebruiken.
    Zie hier je huiswerk voor vanavond
    pi_62608125
    Ook wel een stukje voorkeur lijkt mij. Ik gebruik zelf altijd timestamps.. puur omdat ik het makkelijker vind rekenen. Nu moet bij wat ik maak aardig wat rare dingen met datums gedaan worden en dan is het erg handig dat je gewoon per seconde kan rekenen .

    Kan natuurlijk ook zijn dat ik nooit interesse heb gehad om date/datetime-velden uit te zoeken
      donderdag 23 oktober 2008 @ 12:28:08 #283
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_62608185
    Volgens mij zal het allemaal niet al te veel van elkaar verschillen. Belangrijkste is in ieder geval wel dat je zorgt dat je consequent blijft.

    Gelukkig is dat in ons systeem nooit geweest en was elke ontwikkelaar met zijn eigen voorkeuren bezig..
    Blijft altijd leuk zulke erf-stukken..
      donderdag 23 oktober 2008 @ 13:47:37 #284
    137676 TommyGun
    Stik er maar in!
    pi_62610344
    Ik heb jullie hulp nodig! :) Momenteel heb ik het volgende:

    form.php
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    <?php
    <html>
    <
    body>


    $connect mysql_connect("localhost","root","wachtwoord") or
    die (
    "Could not connect to database.");

    mysql_select_db("urendatabase");

    $query1 mysql_query(
    "SELECT `userid`,
    `voornaam`,
    `achternaam`
    FROM `werknemers`
    ORDER BY `achternaam` ASC"
    ) or die (mysql_error());

    echo 
    "<form name='form1' method='post' action='insert.php'>\n";

    echo 
    "Werknemer: <select name='werknemer'>\n";

    while (
    $data mysql_fetch_assoc($query1))
    {
    echo 
    "<option value='".$data['userid']."'>".$data['voornaam']." ".$data['achternaam']."</option>\n";
    }
    echo 
    "</select> <br><br>\n";

    echo 
    "<table border=\"1\" bordercolor=\"#FFCC00\" style=\"background-color:#FFFFCC\" width=\"100%\" cellpadding=\"3\" cellspacing=\"3\">
        <tr>
            <td>Gerelateerd</td>
            <td>Afdeling</td>
            <td>Tijd gewerkt (hr)</td>
            <td>Call nummer</td>
            <td>Omschrijving</td>
        </tr>
        <tr>
            <td width=\"10%\">"
    ;include("spec.php");echo "</td>
            <td width=\"20%\">"
    ;include("afd.php");echo "</td>
            <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren\" /></td>
            <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr\" /></td>
            <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving\" /></td>
        </tr>
        <tr>
            <td width=\"10%\">"
    ;include("spec.php");echo "</td>
            <td width=\"20%\">"
    ;include("afd.php");echo "</td>
            <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren\" /></td>
            <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr\" /></td>
            <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving\" /></td>
        </tr>
        <tr>
            <td width=\"10%\">"
    ;include("spec.php");echo "</td>
            <td width=\"20%\">"
    ;include("afd.php");echo "</td>
            <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren\" /></td>
            <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr\" /></td>
            <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving\" /></td>
        </tr>
        <tr>
            <td width=\"10%\">"
    ;include("spec.php");echo "</td>
            <td width=\"20%\">"
    ;include("afd.php");echo "</td>
            <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren\" /></td>
            <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr\" /></td>
            <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving\" /></td>
        </tr>
        <tr>
            <td width=\"10%\">"
    ;include("spec.php");echo "</td>
            <td width=\"20%\">"
    ;include("afd.php");echo "</td>
            <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren\" /></td>
            <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr\" /></td>
            <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving\" /></td>
        </tr>
    </table>"
    ;

    echo 
    "<br>";

    echo 
    "<input type='submit' name='submit' value='Submit'>\n";

    echo 
    "</form>\n";


    </
    body>
    </
    html>
    ?>


    insert.php
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    $con 
    mysql_connect("localhost","root","wachtwoord");
    if (!
    $con)
      {
      die(
    'Could not connect: ' mysql_error());
      }

    mysql_select_db("urendatabase"$con);

    $sql="INSERT INTO uren (userid, specid, afdelingid, uren, omschrijving, callnr)
    VALUES ('$_POST[werknemer]','$_POST[afdeling]','$_POST[uren]','$_POST[specificatie]','$_POST[omschrijving]','$_POST[callnr]')"
    ;

    if (!
    mysql_query($sql,$con))
      {
      die(
    'Error: ' mysql_error());
      }
    echo 
    "1 record added";

    mysql_close($con)
    ?>


    Wat dit doet moge duidelijk zijn. Echter; enkel de 5e regel wordt aan de database toegevoegd, ipv alle 5. Hoe kan ik dit oplossen?

    B.v.d
    pi_62610447
    <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren[]\" /></td>
    <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr[]\" /></td>
    <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving[]\" /></td>
    </tr>

    En dan de array doorlopen/php leren
      donderdag 23 oktober 2008 @ 13:52:44 #286
    12880 CraZaay
    prettig gestoord
    pi_62610475
    quote:
    Op donderdag 23 oktober 2008 12:25 schreef Mordreth het volgende:
    Ook wel een stukje voorkeur lijkt mij. Ik gebruik zelf altijd timestamps.. puur omdat ik het makkelijker vind rekenen.
    Wat ursel zegt. Jij werkt niet in een ontwikkelteam neem ik aan?
    pi_62610837
    quote:
    Op donderdag 23 oktober 2008 13:52 schreef CraZaay het volgende:

    [..]

    Wat ursel zegt. Jij werkt niet in een ontwikkelteam neem ik aan?
    Jawel . Hier maken we gebruik van timestamps om datum / tijden op te slaan. Maar heb het dan ook over als je in je 1tje progt. Dus idd wat Ursel zegt .
    pi_62616183
    Waar moet ik ook alweer op zoeken als ik met php steeds een foto wil laten veranderen? Dus dat er bij een afbeelding steeds een andere afbeelding komt.
      donderdag 23 oktober 2008 @ 17:12:49 #289
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_62616298
    quote:
    Op donderdag 23 oktober 2008 17:07 schreef hello_moto1992 het volgende:
    Waar moet ik ook alweer op zoeken als ik met php steeds een foto wil laten veranderen? Dus dat er bij een afbeelding steeds een andere afbeelding komt.
    Rand misschien..

    Snap niet zozeer waar je nu echt op doelt..
      donderdag 23 oktober 2008 @ 17:59:40 #290
    84926 WyriHaximus
    Release the hounds smithers!
    pi_62617226
    quote:
    Tof thanks, maar eens proberen van het weekend .
    phluphy for president!
    pi_62617416
    quote:
    Op donderdag 23 oktober 2008 17:12 schreef ursel het volgende:

    [..]

    Rand misschien..

    Snap niet zozeer waar je nu echt op doelt..
    Het werd ook wel eens in het ajax-topic gebruikt.

    De afbeelding "foto.php" wordt gewoon geladen. Maar er wordt gewoon steeds een andere afbeelding gebruikt. Dus bij een F5 is het weer een ander plaatje etc.
      donderdag 23 oktober 2008 @ 18:24:17 #292
    62215 qu63
    ..de tijd drinkt..
    pi_62617659
    quote:
    Op vrijdag 17 oktober 2008 23:05 schreef Light het volgende:

    [..]

    Je zou kunnen overwegen om :/ geen smilie te maken. Andere optie is om met preg_replace aan de slag te gaan en :/ niet te vervangen als er een / achter staat.
    of (netzoals bij fok denk ik) pas omzetten naar een smiley als de code voorafgegaan wordt door een spatie
    1
    2
    :/ wel parsen
    http:// niet parsen omdat ie niet voorafgegaan wordt door een spatie
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_62617839
    quote:
    Op donderdag 23 oktober 2008 18:10 schreef hello_moto1992 het volgende:

    [..]

    Het werd ook wel eens in het ajax-topic gebruikt.

    De afbeelding "foto.php" wordt gewoon geladen. Maar er wordt gewoon steeds een andere afbeelding gebruikt. Dus bij een F5 is het weer een ander plaatje etc.
    Dat script ken ik niet, maar een random element uit een array plukken is niet zo lastig. Zie bijvoorbeeld rand() en array_rand(). Het lezen en doorgeven van een bestand kan bijvoorbeeld met readfile().
    pi_62617842
    Gewoon een php scriptje dat uit een database of een text file of het script zelf een array met filenames haalt, er dan een random pickt en dan gewoon die file doorpassen. Dit doe je zo:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    // We'll be outputting a PDF
    header('Content-type: application/pdf');

    // It will be called downloaded.pdf
    header('Content-Disposition: attachment; filename="downloaded.pdf"');

    // The PDF source is in original.pdf
    readfile('original.pdf');
    ?>


    Alleen dan met mime type image/jpeg en andere filenames.
    "Reality is an illusion created by a lack of alcohol."
      donderdag 23 oktober 2008 @ 20:16:31 #295
    12880 CraZaay
    prettig gestoord
    pi_62620660
    Of gewoon heel simpel 10 (of ander aantal) plaatjes nummeren van 1 t/m 10 en <img src="plaatje<?= rand(0, 10) ?>.jpg" alt="" /> gebruiken.
    pi_62621243
    Ja maar dan kun je hem niet meer embedden, ging erom om een dynamische avatar te maken.
    "Reality is an illusion created by a lack of alcohol."
      donderdag 23 oktober 2008 @ 21:12:32 #297
    12880 CraZaay
    prettig gestoord
    pi_62622499
    quote:
    Op donderdag 23 oktober 2008 20:36 schreef Dzy het volgende:
    Ja maar dan kun je hem niet meer embedden, ging erom om een dynamische avatar te maken.
    Ah, dat kreeg ik niet mee

    Dan idd een filestream doorpompen met de juiste header.
      donderdag 23 oktober 2008 @ 22:25:00 #298
    137676 TommyGun
    Stik er maar in!
    pi_62625306
    quote:
    Op donderdag 23 oktober 2008 13:51 schreef Darkomen het volgende:
    <td width=\"10%\"><input type=\"text\" size=\"5\" name=\"uren[]\" /></td>
    <td width=\"10%\"><input type=\"text\" size=\"10\" name=\"callnr[]\" /></td>
    <td width=\"50%\"><input type=\"text\" size=\"90\" name=\"omschrijving[]\" /></td>
    </tr>

    En dan de array doorlopen/php leren
    Het lukt me niet Ben uren aan het kloten geweest, zie ook http://forums.devshed.com(...)ws-array-565778.html

    Hulp is welkom. Ben bereid een kleine betaling te doen
      donderdag 23 oktober 2008 @ 22:28:46 #299
    75592 GlowMouse
    l'état, c'est moi
    pi_62625488
    Kijk eens naar een print_r($_POST)
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      vrijdag 24 oktober 2008 @ 00:27:13 #300
    12880 CraZaay
    prettig gestoord
    pi_62629067
    quote:
    Op donderdag 23 oktober 2008 22:28 schreef GlowMouse het volgende:
    Kijk eens naar een print_r($_POST)
    Ik blijf me erover verbazen dat zo weinig mensen kaas hebben gegeten van debuggen. Niet om deze specifieke vraag te bashen; ik merk het ook dagelijks in de beroepspraktijk.
    pi_62629161
    Aangezien hij die constructie met [] ook niet kende zal hij het nog wel niet zo lang doen, dus ook een vrij grote kans dat hij nog maar net begonnen is met programmeren, dan is dat allemaal nog niet zo vanzelfsprekend.
    "Reality is an illusion created by a lack of alcohol."
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')