abonnement Unibet Coolblue
  zondag 26 juli 2009 @ 23:52:42 #1
75592 GlowMouse
l'état, c'est moi
pi_71353744

cd niet bijgeleverd

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

Vorige delen:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,

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
  • eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      zondag 26 juli 2009 @ 23:53:23 #2
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71353760
    quote:
    Op zondag 26 juli 2009 23:19 schreef Roönaän het volgende:

    [..]

    Bedenk even dat je de boel ook nog door time() moet halen..
    Ow jee, denk dat ik nu heel veel moet lezen...
    Een ballonvaarder die door de mand valt is nooit grappig...
      maandag 27 juli 2009 @ 00:15:30 #3
    75592 GlowMouse
    l'état, c'est moi
    pi_71354249
    quote:
    Op zondag 26 juli 2009 23:53 schreef F4T4L_3RR0R het volgende:

    [..]

    Ow jee, denk dat ik nu heel veel moet lezen...
    Je kunt het natuurlijk ook gewoon hier vragen!
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_71354293
    tvp
      maandag 27 juli 2009 @ 00:24:54 #5
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71354425
    quote:
    Op maandag 27 juli 2009 00:15 schreef GlowMouse het volgende:

    [..]

    Je kunt het natuurlijk ook gewoon hier vragen!
    Bij deze!

    Ik hoef niet alles voorgekauwd te hebben hoor, maar een duwtje in de goede richting kan geen kwaad.

    $string = "bla bla bla bla 13:12 bla bla bla"

    Hoe vis ik daar de tijd uit zonder te exploden of substr te gebruiken?
    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71354476
    quote:
    Op maandag 27 juli 2009 00:17 schreef LeNick het volgende:
    tvp
      maandag 27 juli 2009 @ 00:31:01 #7
    84926 WyriHaximus
    Release the hounds smithers!
    pi_71354531
    quote:
    Op maandag 27 juli 2009 00:24 schreef F4T4L_3RR0R het volgende:

    [..]

    Bij deze!

    Ik hoef niet alles voorgekauwd te hebben hoor, maar een duwtje in de goede richting kan geen kwaad.

    $string = "bla bla bla bla 13:12 bla bla bla"

    Hoe vis ik daar de tijd uit zonder te exploden of substr te gebruiken?
    Succes: http://nl2.php.net/manual/en/book.pcre.php
    phluphy for president!
      maandag 27 juli 2009 @ 00:37:00 #8
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71354663
    Kan het ook met sscanf of strtotime in plaats van regex?
    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71356574
    tvp
    Just say hi!
      maandag 27 juli 2009 @ 08:02:02 #10
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_71356661
    quote:
    Op maandag 27 juli 2009 00:27 schreef DirkZz het volgende:

    [..]
    pi_71361863
    Ik ook maar weer ff
      maandag 27 juli 2009 @ 12:45:01 #12
    84244 Scorpie
    Abject en infaam!
    pi_71361991
    tvp
    Op dinsdag 13 augustus schreef Xa1pt:
    Neuh, fraude mag best aangepakt worden. Maar dat het de maatschappij meer oplevert of beter is voor de samenleving, is nog maar de vraag.
    Op donderdag 25 juni 2015 schreef KoosVogels:
    Klopt. Ik ben een racist.
      maandag 27 juli 2009 @ 17:49:05 #13
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71371138
    Kan iemand mij verder op pad helpen met de tijd uit een $ halen en in een nieuwe $ te zetten? (zonder gebruik te maken van regex)
    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71373563
    quote:
    Op maandag 27 juli 2009 17:49 schreef F4T4L_3RR0R het volgende:
    Kan iemand mij verder op pad helpen met de tijd uit een $ halen en in een nieuwe $ te zetten? (zonder gebruik te maken van regex)
    Dus zonder regex, zonder explode en zonder substr?
      maandag 27 juli 2009 @ 19:27:22 #15
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71373661
    quote:
    Op maandag 27 juli 2009 19:24 schreef Roönaän het volgende:

    [..]

    Dus zonder regex, zonder explode en zonder substr?
    Juist.

    Sscanf en strtotime zijn al aangedragen als mogelijke oplossingen, maar ik kom daar niet uit.
    Een ballonvaarder die door de mand valt is nooit grappig...
      maandag 27 juli 2009 @ 20:12:23 #16
    85514 ralfie
    !Yvan eht nioj
    pi_71375129
    geen regex kan ik me voorstellen, maar waarom zou je in godesnaam geen explode of zelfs substr willen gebruiken ??
      maandag 27 juli 2009 @ 20:15:30 #17
    75592 GlowMouse
    l'état, c'est moi
    pi_71375216
    Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      maandag 27 juli 2009 @ 20:35:32 #18
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71375865
    quote:
    Op maandag 27 juli 2009 20:12 schreef ralfie het volgende:
    geen regex kan ik me voorstellen, maar waarom zou je in godesnaam geen explode of zelfs substr willen gebruiken ??
    De datum kan 1-1-2009 zijn maar soms ook 01-01-2009. Zelfde met de tijd, deze kan 9:00 of 09:00 zijn. Substr is dan niet mogelijk.
    Een ballonvaarder die door de mand valt is nooit grappig...
      FOK!-Schrikkelbaas maandag 27 juli 2009 @ 20:36:00 #19
    1972 Swetsenegger
    Egocentrische Narcist
    pi_71375879
    1
    2
    3
    4
    5
    6
    <?php
    if($price<$artikel[$row['artId']]['prijs'] || !isset($artikel[$row['artId']]['prijs'])){
       
    $artikel[$row['artId']]['prijs']=$price;
    }
    echo 
    $row['artId'].' '.$price.'&nbsp;'.$artikel[$row['artId']]['prijs'].'<br />';
    ?>


    1
    2
    3
    4
    1 19,99 19,99
    3 14,95 14,95
    3 9,95  9,95
    3 14,95 14,95


    wtf ik verwacht

    1
    2
    3
    4
    1 19,99 19,99
    3 14,95 14,95
    3 9,95  9,95
    3 14,95 9,95
    pi_71379073
    Tja dit is blijkbaar een stukje uit een loop waar ergens wat fout gaat. Moeilijk te zeggen zonder de hele loop erbij. Ik gok dat $artikel ergens overschreven wordt waar jij het blijkbaar niet verwacht.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      FOK!-Schrikkelbaas maandag 27 juli 2009 @ 22:51:54 #21
    1972 Swetsenegger
    Egocentrische Narcist
    pi_71380230
    nee, blijkbaar gaat het vergelijken van een float in een string niet goed. Omdat ik het in de database toch als centen opsla, laat ik de number_format er nu pas na het vergelijk op los en dat werkt zoals verwacht.

    995 is blijkbaar wel kleiner dan 1495, maar 9,95 is blijkbaar niet kleiner dan 14,95.
    pi_71380525
    quote:
    Op maandag 27 juli 2009 20:15 schreef GlowMouse het volgende:
    Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems.
    Maar wat Fatal_error wil, kan heel goed met een regex. En dat wordt dan geen ingewikkelde regex.
    pi_71380633
    quote:
    Op maandag 27 juli 2009 22:51 schreef Swetsenegger het volgende:
    nee, blijkbaar gaat het vergelijken van een float in een string niet goed. Omdat ik het in de database toch als centen opsla, laat ik de number_format er nu pas na het vergelijk op los en dat werkt zoals verwacht.

    995 is blijkbaar wel kleiner dan 1495, maar 9,95 is blijkbaar niet kleiner dan 14,95.
    Als die eerste twee (995 en 1495) getallen zijn, dan klopt het dat 995 < 1495. En die laatste twee zijn vast strings, dan is 9 > 1 en dus 9,95 > 14,95.
    pi_71381516
    quote:
    Op maandag 27 juli 2009 22:51 schreef Swetsenegger het volgende:
    nee, blijkbaar gaat het vergelijken van een float in een string niet goed.
    Ja dan vraag je ook wel om problemen eigenlijk
    Altijd eerst berekeningen uitvoeren, en pas op het allerlaatst omzetten naar tekst.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      maandag 27 juli 2009 @ 23:33:51 #25
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71381526
    quote:
    Op maandag 27 juli 2009 23:00 schreef Light het volgende:

    [..]

    Maar wat Fatal_error wil, kan heel goed met een regex. En dat wordt dan geen ingewikkelde regex.
    Heb op aanraden (don't ask why) al zoveel mogelijk regex vervangen door alternatieven.

    Maar ben toch benieuwd naar de regex oplossing.

    Is het trouwens ook mogelijk om met een simpele regex de eerste 2 en de laatste regel (newline) uit een $ te halen? Heb nu dit, wat best wel ingewikkeld is en uit "veel" regels bestaat:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
            
    function striphtml($trimmed)
            {
            
    $arrhtml explode("\n"$trimmed);
            
    $resulthtml = array();

            for (
    $ihtml 2$sizehtml count($arrhtml); $ihtml < ($sizehtml 1); $ihtml++) {
                
    $resulthtml[] = $arrhtml[$ihtml];
                }

            return 
    $resulthtml;
            }

            
    $clean implode("\n"striphtml($trimmed));
    ?>
    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71381694
    quote:
    Op maandag 27 juli 2009 23:33 schreef F4T4L_3RR0R het volgende:

    [..]

    Heb op aanraden (don't ask why) al zoveel mogelijk regex vervangen door alternatieven.

    Maar ben toch benieuwd naar de regex oplossing.
    1
    2
    3
    <?php
    $regex 
    '/(\d{1,2})-(\d{1,2})-(\d{4})\s+(\d{1,2}):(\d{2})/';
    ?>

    1 of 2 cijfers voor dag, 1 of 2 cijfers voor maand, 4 cijfers voor jaar, dan ten minste 1 spatie (of tab), 1 of 2 cijfers voor uur en 2 cijfers voor minuten.
      maandag 27 juli 2009 @ 23:49:26 #27
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71382000
    De datum heb ik niet nodig he.
    Een ballonvaarder die door de mand valt is nooit grappig...
      dinsdag 28 juli 2009 @ 01:52:42 #28
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71384333
    Heb het toch maar met explode en substr gedaan...
    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71385317
    Bizar die newline code.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
            function striphtml($trimmed)
            {
            $arrhtml = explode("\n", $trimmed);
            $resulthtml = array();

            for ($ihtml = 2, $sizehtml = count($arrhtml); $ihtml < ($sizehtml - 1); $ihtml++) {
                $resulthtml[] = $arrhtml[$ihtml];
                }

            return $resulthtml;
            }

            $clean = implode("\n", striphtml($trimmed));
    ?>

    Kan toch gewoon als
    1
    2
    3
    4
    5
    6
    7
    <?php
            function striphtml($trimmed) {
               return array_slice(explode("\n", $trimmed), 2);
            }

            $clean = implode("\n", striphtml($trimmed));
    ?>

    Raar ook dat een striphtml geen tags weghaald of iets anders html gerelateerds doet.

    Voor de tijd:

    1
    2
    3
    4
    5
    6
    <?php
    if(preg_match('/([01]?[0-9]|2[0-4]):[0-5][0-9]/', $string, $m)) {
       $time = $m[0];
    } else {
      // geen tijd gevonden
    }
      FOK!-Schrikkelbaas dinsdag 28 juli 2009 @ 08:14:36 #30
    1972 Swetsenegger
    Egocentrische Narcist
    pi_71385610
    quote:
    Op maandag 27 juli 2009 23:33 schreef SuperRembo het volgende:

    [..]

    Ja dan vraag je ook wel om problemen eigenlijk
    Altijd eerst berekeningen uitvoeren, en pas op het allerlaatst omzetten naar tekst.
    Ja dat bedacht ik me ook toen ik de vreemde resultaten zag
    pi_71386545
    quote:
    Op dinsdag 28 juli 2009 07:21 schreef Roönaän het volgende:

    Voor de tijd:
    [ code verwijderd ]
    Die is nog netter inderdaad
    pi_71398976
    Ook ik heb weer een vraagje; ik zal eerst de opzet van mijn database even laten zien.

    1
    2
    3
    4
    5
    6
    7
    user_id - top_id - nummer - getal
    0         -      55    -     15    - 1
    0         -      55    -     25    - 2
    0         -      55    -     35    - 3
    0         -      55    -     45    - 4
    0         -      55    -     55    - 5
    1         -      55    -     35    - 7


    Nu ben ik bezig om een query te maken die het volgende kan uitlezen.

    Alles van gebruiker 1 en 0 alleen als gegevens van gebruiker 1 bestaat moet dat van gebruiker 0 niet zichtbaar zijn. (verduidelijking in voorbeeld).

    Uitkomst van de query moet dus zijn
    1
    2
    3
    4
    5
    6
    0         -      55    -     15    - 1
    0         -      55    -     25    - 2

    0         -      55    -     45    - 4
    0         -      55    -     55    - 5
    1         -      55    -     35    - 7


    Daar waar je een witte enter ziet zie je het verschil.

    Ik gebruik nu deze query
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT *
    FROM testtabel
    WHERE confectie_id = '" . substr($_POST['test'], 1, strlen($_POST['maat']) -1) . "'
    AND  (user_id      = '" . $_POST['user'] . "'
    OR    user_id      = '0')
    AND nummer IN ('" . implode("','", array_keys($noemers)) . "')
    GROUP BY user_id, nummer
    ORDER BY user_id


    Anyone?
    Just say hi!
      dinsdag 28 juli 2009 @ 16:10:14 #33
    75592 GlowMouse
    l'état, c'est moi
    pi_71399349
    n/m
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_71400286
    Ik snap niet wat je bedoelt Chandler
    pi_71407077
    Kan je niet gewoon sorteren en dan een limit 1 toevoegen?
    pi_71417819
    Omg, wat ben ik toch slecht in uitleggen

    @Roonaan; helaas dat werkt niet, wel als ik zou limieten op het aantal stuks. Wat ik wel kan doen is gewoon alles uitlezen van gebruiker 0 en eventueel de geselecteerde gebruiker en dan alles wat er wel bestaat voor de geselecteerde gebruiker gebruiken ipv wat er staat voor gebruiker 0.

    Ik zal deze ochtend even beter nadenken over hoe ik het beter kan uitleggen!
    Just say hi!
    pi_71435915
    Wat is "gebruiker 0", zijn dat je default setting oid?
      woensdag 29 juli 2009 @ 19:07:54 #38
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71436586
    quote:
    Op dinsdag 28 juli 2009 07:21 schreef Roönaän het volgende:
    Bizar die newline code.
    [ code verwijderd ]

    Kan toch gewoon als
    [ code verwijderd ]

    Raar ook dat een striphtml geen tags weghaald of iets anders html gerelateerds doet.

    Voor de tijd:
    [ code verwijderd ]
    Die voor de tijd werkt voortreffelijk! Wat gebeurd er trouwens als er 2 keer een tijdvermelding in staat? Net getest, dan geeft hij de eerst gevonden tijd door. Maar dit kan geen fouten veroorzaken?

    Is er ook iets waardoor hij 123:45 of 12:345 niet als tijd mag herkennen? Een : achter de tijd moet juist wel weer kunnen: 12:34:56, waarbij hij 12:34 moet weergeven.

    Die newline code is onderdeel van een soort HTML parser. Het script krijgt een e-mail te verwerken, en moet daar de plain text gedeelte uithalen.

    Wat overblijft is:
    quote:
    charset="iso-8859-1"
    Content-Transfer-Encoding: 8bit

    Inhoud mailtje

    ----NextPart_048F8BC8A2197DE2036A
    Daar moet hij de eerste twee regels en de laatste regel verwijderen.

    Dat doe ik nu dus met het volgende:

    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
        
    if (stripos($headers"boundary=") !== false) {

            
    $splitplain explode("Content-Type: text/plain;"$message);
            
    $splithtml explode("Content-Type: text/html;"$splitplain[1]);
            
    $trimmed trim($splithtml[0]);

            function 
    striphtml($trimmed)
            {
            
    $arrhtml explode("\n"$trimmed);
            
    $resulthtml = array();

            for (
    $ihtml 2$sizehtml count($arrhtml); $ihtml < ($sizehtml 1); $ihtml++) {
                
    $resulthtml[] = $arrhtml[$ihtml];
                }

            return 
    $resulthtml;
            }

            
    $clean implode("\n"striphtml($trimmed));

        } else {

            
    $clean $message;
        }

            
    $body trim(str_replace(array("=\n""=20""=3D"), array("""""="), $clean));
    ?>


    Als er "boundary=" in de headers staat, is het mailtje in HTML opgemaakt en moet deze schoongemaakt worden.

    Eerst split hij 'm op "Content-Type: text/plain;". Alles wat daaronder zit moet ik hebben.
    Vervolgens split hij 'm op "Content-Type: text/html;". Alles wat doorboven zit moet ik hebben.
    Vervolgens trim ik het resultaat.

    Daarna ga ik met het for-loopje de inhoud splitten op newlines. De array geeft de inhoud, met uitzondering van de eerste 2 regels en de laatste regel terug.

    Dan implode ik de array met de inhoud die ik over wil houden.

    Als er geen "boundary=" in de headers staan, dan is het mailtje in plain text opgesteld en hoeft er niets te worden schoongemaakt.

    [ Bericht 2% gewijzigd door F4T4L_3RR0R op 29-07-2009 22:02:16 ]
    Een ballonvaarder die door de mand valt is nooit grappig...
      woensdag 29 juli 2009 @ 22:23:28 #39
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71442759
    Toevoeging:

    Dat array_slice werkt ook voortreffelijk.

    Moest wel een kleine aanpassing doen:
    quote:
    function striphtml($trimmed) {
    return array_slice(explode("\n", $trimmed), 2, -1);
    }

    $clean = implode("\n", striphtml($trimmed));
    (-1 toegevoegd)
    Een ballonvaarder die door de mand valt is nooit grappig...
      woensdag 29 juli 2009 @ 22:52:08 #40
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71443869
    Heb de "html parser" nu zo:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <?php
        
    if (stripos($headers"boundary=") !== false) {

            
    $splitplain explode("Content-Type: text/plain;"$message);
            
    $splithtml explode("Content-Type: text/html;"$splitplain[1]);
            
    $trimmed trim($splithtml[0]);
            
    $slicedmail array_slice(explode("\n"$trimmed), 2, -1);
            
    $clean implode("\n"$slicedmail);

        } else {

            
    $clean $message;
        }

            
    $body trim(str_replace(array("=\n""=20""=3D"), array("""""="), $clean));
    ?>


    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71444957
    Is het niet handiger om met een van de mime classes te werken uit de PEAR repository, of zit daar geen multipart mime parser tussen?
      woensdag 29 juli 2009 @ 23:43:15 #42
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71445581
    Geen idee, vind het zo prima werken.

    Zojuist weer een regel code minder, door $trimmed weg te laten en de trim elders toe te passen:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
        
    if (stripos($headers"boundary=") !== false) {

            
    $splitplain explode("Content-Type: text/plain;"$message);
            
    $splithtml explode("Content-Type: text/html;"$splitplain[1]);
            
    $slicedmail array_slice(explode("\n"trim($splithtml[0])), 2, -1);
            
    $clean implode("\n"$slicedmail);

        } else {

            
    $clean $message;
        }

            
    $body trim(str_replace(array("=\n""=20""=3D"), array("""""="), $clean));
    ?>
    Een ballonvaarder die door de mand valt is nooit grappig...
    pi_71448868
    quote:
    Op woensdag 29 juli 2009 18:42 schreef Roönaän het volgende:
    Wat is "gebruiker 0", zijn dat je default setting oid?
    Je moet het zien als dat er allemaal vaste gegevens zijn per top_id/nummer, als een gebruiker een van deze gegevens aanpast wil ik alle 'vaste' gegevens die niet veranderd zijn maar ook de gegevens die wel veranderd zijn. En na dit alles wil ik de veranderde gegevens met het zelfde nummer (top_id/nummer) overschrijven over de top_id/nummer van gebruiker 0, zodat deze wegvalt.

    vb:
    1
    2
    3
    4
    5
    6
    0 - 10 - 1 - 100
    1 - 10 - 1 - 101
    0 - 10 - 2 - 100
    0 - 10 - 3 - 100
    0 - 10 - 4 - 100
    1 - 10 - 4 - 99


    nu moet ik dus een query maken die het volgende uitleest. (ALLES VAN gebruiker 0 OF 1 maar 1 overschrijft data van gebruiker 0)

    1
    2
    3
    4
    1 - 10 - 1 - 101
    0 - 10 - 2 - 100
    0 - 10 - 3 - 100
    1 - 10 - 4 - 99


    hopelijk is het iets duidelijker! :D
    Just say hi!
    pi_71472726
    Ik moet voor mijn website een text (ingevuld in een form) vergelijken met woorden in een database. De database heeft best een aardige lijst met woorden en een text kan eventueel best aardig van formaat worden. Het opbreken van de tekst in losse woorden en deze 1 voor 1 afzetten tegen de database is even de enige methode die ik kan bedenken om dit te doen. Het lijkt me echter niet echt een efficiente methode. Iemand een idee hoe dit sneller/efficienter kan?
    ウプピエ 八十三 &lt;&lt; u-pu-pi-e hachi-ju-san, ik denk ik zeg het er maar ff bij :P
      donderdag 30 juli 2009 @ 22:09:07 #45
    75592 GlowMouse
    l'état, c'est moi
    pi_71472948
    SELECT count(*) FROM tbl WHERE woord IN( 'woord in tekst', 'ander woord in tekst', ..)

    Index op woord en kijken of de snelheid acceptabel is.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      vrijdag 31 juli 2009 @ 01:01:50 #46
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71478292
    Is het mogelijk om de volgende code aan meer eisen te laten voldoen?

    1
    2
    3
    <?php
    preg_match
    ('/([01]?[0-9]|2[0-4]):[0-5][0-9]/'$string$m)
    ?>


    Wat ik graag wil, is dat er een spatie voor de tijd moet staan, en een spatie of : achter de tijd moet staan. De spaties of : mogen echter niet in $m gezet worden.
    Een ballonvaarder die door de mand valt is nooit grappig...
      vrijdag 31 juli 2009 @ 01:06:31 #47
    75592 GlowMouse
    l'état, c'est moi
    pi_71478372
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      vrijdag 31 juli 2009 @ 01:24:15 #48
    110933 F4T4L_3RR0R
    R.I.P. webicon ;(
    pi_71478604
    quote:
    Op vrijdag 31 juli 2009 01:06 schreef GlowMouse het volgende:
    Ja hoor, dat is mogelijk. Zie http://nl3.php.net/manual/en/reference.pcre.pattern.syntax.php
    Dat is helemaal nieuw voor mij, wel even slikken.

    De verplichte spatie heb ik nu zo gedaan:

    1
    2
    3
    <?php
    preg_match
    ('/\s([01]?[0-9]|2[0-4]):[0-5][0-9]\s/'$body$m);
    ?>


    Edit: maar dan neemt hij de spaties wel mee in $m.

    Nu nog even uitzoeken hoe ik de : toe kan voegen als verplichting (als er geen spatie staat) aan het einde van de tijd.
    Een ballonvaarder die door de mand valt is nooit grappig...
      vrijdag 31 juli 2009 @ 01:37:13 #49
    75592 GlowMouse
    l'état, c'est moi
    pi_71478761
    Gebruik haakjes en kijk wat het effect is op print_r($m).
    En het is óf een spatie óf een :, en voor de of is er ook een regex meta-character.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_71480154
    quote:
    Op vrijdag 31 juli 2009 01:24 schreef F4T4L_3RR0R het volgende:

    [..]

    Dat is helemaal nieuw voor mij, wel even slikken.

    De verplichte spatie heb ik nu zo gedaan:
    [ code verwijderd ]

    Edit: maar dan neemt hij de spaties wel mee in $m.

    Nu nog even uitzoeken hoe ik de : toe kan voegen als verplichting (als er geen spatie staat) aan het einde van de tijd.
    Moet je even $m[1] gebruiken ipv $m[0].
      vrijdag 31 juli 2009 @ 22:02:03 #51
    74523 BaggerUser
    ModderFokker!
    pi_71502199
    Database vraagje..

    Ik heb een database met simpel gezegd

    medewerkers (500+/-)
    afdelingen (60 +/-)
    melding (stuk of 10 +/-)

    een meldingen kan voor 1 of meerdere afdeling gelden en dus ook bekeken worden via verschillende afdelingen.

    een buitenstaander kan via elke afdeling een melding zien via een medewerker (een melding is verder niet gekoppeld aan een gebruiker, alleen op het moment van bekijken wordt er een getal opgehoogd bij de medewerker.)

    Nu wil ik per dag gaan bijhouden hoe vaak een melding is bekeken door een buitenstaander gekoppeld aan de gebruiker en via welke afdeling (dus dat ik van de afgelopen 7 dagen, en als het haalbaar is van de afgelopen maand hoevaak dat is)

    nu komt de grap, zo'n melding kan soms wel 50.000 keer op een dag bekeken worden per gebruiker. Hoe krijg ik dat een beetje normaal in de database?
    De enige echte BaggerUser!
    Riemen
    fiets kopen
    abonnement Unibet Coolblue
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')