abonnement Unibet Coolblue Bitvavo
pi_45892530

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

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

    En we gaan weer verder!

    Laatste post
    quote:
    Op donderdag 1 februari 2007 19:18 schreef Chandler het volgende:
    Ooit eens 1 progie mee gemaakt om de scherm mode naar mode 13 te veranderen maaruh voor mij te hoog gegrepen, want je moet bij iedere JMP, MOV, AS etc etc etc gaan nadenken over wat het allemaal voor consequenties zou kunnen hebben..
  • The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 1 februari 2007 @ 20:19:28 #2
    12880 CraZaay
    prettig gestoord
    pi_45894829
    tvp dan maar.
    pi_45900082
    Tieten in een envelop.
    pi_45905365
    uhhh, kun je met php console opdrachten enzo uitvoeren?

    ofwel: kun je met een linux, lamp en tex installatie latex bestandjes compileren?
      vrijdag 2 februari 2007 @ 09:15:09 #5
    18008 hornage
    FOK! Movie Trivia-Prijsmeester
    pi_45908303
    quote:
    Op vrijdag 2 februari 2007 01:01 schreef the_disheaver het volgende:
    uhhh, kun je met php console opdrachten enzo uitvoeren?

    ofwel: kun je met een linux, lamp en tex installatie latex bestandjes compileren?
    Volgens mij kan dat hiermee:
    http://nl2.php.net/manual/nl/migration5.cli-cgi.php
    Test je filmkennis! Speel mee met FOK! Movie Trivia en win prijzen!
    pi_45910688
    pi_45911554
    http://nl2.php.net/manual/nl/ref.exec.php

    daar kan je volgens mij een heel eindje mee komen.
    Die is toCh vEt aAngEk0ekt J0nguHh..
    pi_45912300
    Ik heb al een simpele class geschreven
    Zie alleen nog niet het echte voordeel er van in, maar het staat wel stoer, Object Georiënteerd Programmeren
      vrijdag 2 februari 2007 @ 14:13:41 #9
    12221 Tijn
    Powered by MS Paint
    pi_45916210
    Kan iemand me uitleggen hoe ik werk met DATETIME in MySQL? Ik heb een tabel gemaakt waarin elk record o.a. zo'n veld heeft, en daar staan dus dingen in als "2007-02-01 22:35:30". Prima.

    Maar hoe krijg ik nu bv alle resultaten van gisteren? Of alle resultaten tussen 10 en 11 uur?
    pi_45916307
    quote:
    Op vrijdag 2 februari 2007 11:59 schreef super-muffin het volgende:
    Ik heb al een simpele class geschreven
    Zie alleen nog niet het echte voordeel er van in, maar het staat wel stoer, Object Georiënteerd Programmeren
    Ach, dat is tegenwoordig standaard.

    Anyway: tvp.
    pi_45916393
    quote:
    Op vrijdag 2 februari 2007 14:13 schreef Tijn het volgende:
    Kan iemand me uitleggen hoe ik werk met DATETIME in MySQL? Ik heb een tabel gemaakt waarin elk record o.a. zo'n veld heeft, en daar staan dus dingen in als "2007-02-01 22:35:30". Prima.

    Maar hoe krijg ik nu bv alle resultaten van gisteren? Of alle resultaten tussen 10 en 11 uur?
    UNIX_TIMESTAMP van de datum maken en dan de datum van gisteren als parameter in de where meegeven oid...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 2 februari 2007 @ 14:20:24 #12
    12221 Tijn
    Powered by MS Paint
    pi_45916448
    quote:
    Op vrijdag 2 februari 2007 14:18 schreef Chandler het volgende:

    [..]

    UNIX_TIMESTAMP van de datum maken en dan de datum van gisteren als parameter in de where meegeven oid...
    Ah, de UNIX_TIMESTAMP() functie. Dat ziet er inderdaad veel belovend uit En die kan ik ook handig in de date() functie van PHP stoppen.

    Waarom zou ik m'n data dan eigenlijk nog als datetime opslaan en niet gelijk als timestamp?
    pi_45916460
    quote:
    Op vrijdag 2 februari 2007 11:59 schreef super-muffin het volgende:
    Ik heb al een simpele class geschreven
    Zie alleen nog niet het echte voordeel er van in, maar het staat wel stoer, Object Georiënteerd Programmeren
    Leuk. Heb zelf nog niet zo heel veel Object Georieënteerd geprogrammeerd in PHP, simpelweg omdat ik het nog niet vaak nodig heb gehad gezien functions meestal the job done krijgen voor wat ik maak.
    pi_45916471
    Tijn: Ik zou inderdaad ook overschakelen naar UNIX timestampts. Vind ik persoonlijk veel flexibeler...
      vrijdag 2 februari 2007 @ 14:25:48 #15
    12221 Tijn
    Powered by MS Paint
    pi_45916597
    quote:
    Op vrijdag 2 februari 2007 14:21 schreef Tuvai.net het volgende:
    Tijn: Ik zou inderdaad ook overschakelen naar UNIX timestampts. Vind ik persoonlijk veel flexibeler...
    Loop je natuurlijk wel tegen het Y2K38 probleem aan, maar okay, dat lossen we dan wel weer op
    pi_45916675
    Dat is nog 31 jaar verder. Dan is zelfs PHP denk ik al jaren uit 'de mode' en zitten we allemaal met een drag & drop programming programma te werken die bestuurd worden door middel van hersengolven.
      vrijdag 2 februari 2007 @ 14:34:06 #17
    85514 ralfie
    !Yvan eht nioj
    pi_45916844
    quote:
    Op vrijdag 2 februari 2007 14:13 schreef Tijn het volgende:
    Kan iemand me uitleggen hoe ik werk met DATETIME in MySQL? Ik heb een tabel gemaakt waarin elk record o.a. zo'n veld heeft, en daar staan dus dingen in als "2007-02-01 22:35:30". Prima.

    Maar hoe krijg ik nu bv alle resultaten van gisteren? Of alle resultaten tussen 10 en 11 uur?
    bijv

    1
    2
    SELECT * FROM xxx WHERE date > UNIX_TIMESTAMP("2005-1-1");
    SELECT FROM_UNIXTIME(date,"%d %m %y") FROM xxx WHERE date BETWEEN UNIX_TIMESTAMP("2005-1-1") AND UNIX_TIMESTAMP("2006-1-1");
    Uiteraard kun je de timestamp ook in php genereren, maar dat kan problemen opleveren als je met verschillende tijdzones gaat werken

    EDIT: ik ben wel errug laat hiero. TVP dan maar enzo
      vrijdag 2 februari 2007 @ 14:34:47 #18
    18008 hornage
    FOK! Movie Trivia-Prijsmeester
    pi_45916865
    quote:
    Op vrijdag 2 februari 2007 14:13 schreef Tijn het volgende:
    Kan iemand me uitleggen hoe ik werk met DATETIME in MySQL? Ik heb een tabel gemaakt waarin elk record o.a. zo'n veld heeft, en daar staan dus dingen in als "2007-02-01 22:35:30". Prima.

    Maar hoe krijg ik nu bv alle resultaten van gisteren? Of alle resultaten tussen 10 en 11 uur?
    voor alles van gisteren:
    1
    2
    3
    SELECT *
    FROM blaat
    WHERE date = GETDATE() - 1

    waarin date dus een field is van het type datetime

    voor alles tussen 10 en 11 uur (dus ook andere dagen):
    1
    2
    3
    SELECT *
    FROM blaat
    WHERE HOUR(date) BETWEEN '10' AND '11'


    meer mysql functies die met datum en tijd te maken hebben:
    http://dev.mysql.com/doc/(...)-time-functions.html
    Test je filmkennis! Speel mee met FOK! Movie Trivia en win prijzen!
      vrijdag 2 februari 2007 @ 14:40:09 #19
    12221 Tijn
    Powered by MS Paint
    pi_45917034
    Bedankt mensen Zo kom ik er wel uit
      vrijdag 2 februari 2007 @ 14:50:53 #20
    12221 Tijn
    Powered by MS Paint
    pi_45917369
    Oh, nu ik hier toch ben, ik heb nog een vraagje over MySQL trouwens, want ik ben best wel een databasekneus

    Wat is de handigste manier om het aantal verschillende entries in een field te bepalen? Ik heb een tabel met daarin een field waarin IP-nummers worden onthouden en ik wil graag het aantal verschillende IP-adressen weten wat erin staat.

    Hoe ik het nu heb opgelost is een query die alle IP-adressen binnenhaalt en daarna met PHP een while-lus die de verschillende telt, maar ik heb het idee dat het efficienter kan met een goede query.
      vrijdag 2 februari 2007 @ 14:55:50 #21
    12880 CraZaay
    prettig gestoord
    pi_45917492
    quote:
    Op vrijdag 2 februari 2007 14:50 schreef Tijn het volgende:
    Oh, nu ik hier toch ben, ik heb nog een vraagje over MySQL trouwens, want ik ben best wel een databasekneus

    Wat is de handigste manier om het aantal verschillende entries in een field te bepalen? Ik heb een tabel met daarin een field waarin IP-nummers worden onthouden en ik wil graag het aantal verschillende IP-adressen weten wat erin staat.

    Hoe ik het nu heb opgelost is een query die alle IP-adressen binnenhaalt en daarna met PHP een while-lus die de verschillende telt, maar ik heb het idee dat het efficienter kan met een goede query.
    GROUP BY?
      vrijdag 2 februari 2007 @ 14:57:35 #22
    85514 ralfie
    !Yvan eht nioj
    pi_45917545
    select count(distinct(kolomnaam)) from tabelnaam
    pi_45917615
    distinct idd.
      vrijdag 2 februari 2007 @ 15:19:02 #24
    12221 Tijn
    Powered by MS Paint
    pi_45918194
    quote:
    Op vrijdag 2 februari 2007 14:57 schreef ralfie het volgende:
    select count(distinct(kolomnaam)) from tabelnaam
    Ah cool, dit werkt ook heel goed.

    Bedankt weer
      vrijdag 2 februari 2007 @ 16:03:16 #25
    107951 JortK
    Immer kwaliteitsposts
    pi_45923670
    Ik heb een vraag over http://nl2.php.net/manual/nl/function.setcookie.php

    Nu wil ik op een website bv www.website.nl een cookie zetten maar deze cookie moet ook uitgelezen kunnen worden op subdomein.website.nl, hoe kan ik dit realiseren?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_45925174
    Het vierde optionele argument van setcookie() is een directory/path.
    pi_45925820
    correct, maar het pad is het zelfde... alleen de subdomeinen zijn verschillend en ik heb vele argumenten geprobeerd maar helaas blijven deze niet leven op een subdomein
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_45925936
    Is gewoon een kwestie van de goeie path en domain invullen. Lees anders dit eens door: http://ific.uv.es/informa(...)ction.setcookie.html

    path
    The path on the server in which the cookie will be available on.

    If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in.


    domain
    The domain that the cookie is available.

    To make the cookie available on all subdomains of example.com then you'd set it to '.example.com'. The . is not required but makes it compatible with more browsers. Setting it to www.example.com will make the cookie only available in the www subdomain. Refer to tail matching in the spec for details.
    pi_45928257
    je hebt inderdaad gelijk, denk dat ik eerder een foutieve setcookie heb gebruikt

    setcookie("website", "value", time() + 3600, '/', 'website.nl');

    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_45928797
    quote:
    Op vrijdag 2 februari 2007 14:25 schreef Tijn het volgende:

    [..]

    Loop je natuurlijk wel tegen het Y2K38 probleem aan, maar okay, dat lossen we dan wel weer op
    Ergens in de komende 30 jaar kun je je data vast wel omzetten naar 64 bit. Dan heb je voorlopig geen problemen meer.
    pi_45936450
    Ik wil met een while functie uit 2 tabellen gegevens uithalen en deze in een tabel zetten.
    Nu heb ik uit tabel 1 alles uitgelezen (artikelcodes) en wil ik uit de 2e tabel de naam van die artikelcodes erbij halen.

    Zo zien de tabellen er uit:

    extra
    Artikelcode
    Extra

    artikel
    Artikelcode
    Omschrijving
    ...

    De Extra uit de tabel extra staat dus ook in de tabel artikel als Artikelcode

    de code die ik totdusver heb ik:

    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
      
    //Alle extra's uitlezen
      
    $query "SELECT * FROM extra WHERE Artikelcode='$acode'";
      
    $result mysql_query($query);

      
    //in tabel zetten
      
    echo "<table cellspacing='3'>";
      echo 
    "<tr><td colspan='100'></td></tr>";
            echo 
    "<tr>
                <td><b>Artikelcode</b></td>
                <td><b>Omschrijving</b></td>
                <tr><td colspan='100'></td></tr>"
    ;
                
    while (
    $row mysql_fetch_array($result))
      {
         
    extract($row);

          echo 
    "<tr>
               <td>$Extra</td>
               <td>$Omschrijving</td>
               </tr>n"
    ;
               

      }
      echo 
    "</table>";
    ?>


    Resultaat

    Dus hoe kan ik die omschrijving van de bijbehorende artikelcodes ook uitlezen en waar precies in de code neer te zetten..ik zit dan steeds in de war met een dubbele while en kom er niet uit..
    It's time to kick ass and chew bubble gum... and I'm all out of bubble gum
    pi_45936981
    Na wat gepuzzel is het gelukt!
    It's time to kick ass and chew bubble gum... and I'm all out of bubble gum
    pi_45937012
    quote:
    Op zaterdag 3 februari 2007 10:22 schreef Xtr3mE het volgende:
    Na wat gepuzzel is het gelukt!
    En wat is de oplossing dan?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_45937064
    Een JOIN gebruiken in de query dus.
    MySQL documentatie JOIN.
    pi_45990582
    Leuk een PHP topic!
    pi_46030591
    Weet iemand hoe je in php thumbnail kan maken die niet wazig zijn? Ik gebruik gewoon imagecopyresampled en ImageCreateTrueColor, maar de kwaliteit is echt beroerd.

    Het veschil tussen photoshop en php
    ..///
    pi_46030802
    Met het volgende script, uitgaande dat je afbeeldigen in JPG formaat zijn. Let er op dat de folder van de afbeeldingen die je probeert te verkleinen, voldoende CHMOD rechten heeft.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    // Breedte thumbnail (in pixels)
    $thumb_x=100;
    // Hoogte thumbnail (in pixels)
    $thumb_y=100;
    // path van jouw originele afbeelding
    $normaalplaatje="directory/jouwplaatje.jpg";
    // path van de te maken thumbnail
    $verkleindplaatje="directory/jouwplaatje_klein.jpg";
    // kwaliteit plaatje (0 tot 100)
    $kwaliteit=100;

    $afmetingen=getimagesize($normaalplaatje);
    $image=imagecreatefromjpeg($normaalplaatje);
    $destination=imagecreatetruecolor($thumb_x,$thumb_y);
    imagecopyresampled($destination,$image,0,0,0,0,$thumb_x,$thumb_y,$afmetingen[0],$afmetingen[1]);
    imagejpeg($destination,$verkleindplaatje,$kwaliteit);
    imagedestroy($image); 
    imagedestroy($destination);
    ?>
    pi_46030968
    Ja dat is dus precies wat ik gebruik. Je moet wel verder lezen dan "Weet iemand hoe je in php thumbnail kan maken ..."
    ..///
    pi_46031642
    Um, dat scriptje wat ik gepost heb doet anders precies wat je wilt hoor.

    Sowieso krijg je bij het verkleinen van afbeeldingen nooit een haarscherpe afbeelding. Of je moet een zogenaamde 'niet-intelligente' verkleining gebruiken maar dan krijg je meestal een misvormde afbeelding.
    pi_46032517
    quote:
    Op dinsdag 6 februari 2007 09:03 schreef Tuvai.net het volgende:
    Um, dat scriptje wat ik gepost heb doet anders precies wat je wilt hoor.
    Ja het verkleint een afbeelding, alleen zodanig onscherp dat ik een andere methode zoek.
    quote:
    Sowieso krijg je bij het verkleinen van afbeeldingen nooit een haarscherpe afbeelding.
    Jawel hoor, kijk maar naar mijn afbeelding php vs photoshop.
    ..///
    pi_46032887
    quote:
    Op dinsdag 6 februari 2007 09:53 schreef wipes66 het volgende:

    [..]

    Ja het verkleint een afbeelding, alleen zodanig onscherp dat ik een andere methode zoek.
    [..]

    Jawel hoor, kijk maar naar mijn afbeelding php vs photoshop.
    En heb je in je eigen scriptje de kwaliteit wel op 100 staan? De voorbeeldafbeelding die je post is dusdanig onscherp dat ik wel zeker weet dat er een compressiepercentage op gebruikt is. D'r zitten zelfs vlekken kleurverschil in het witte van de achtergrond.
      dinsdag 6 februari 2007 @ 10:16:40 #43
    12221 Tijn
    Powered by MS Paint
    pi_46033017
    quote:
    Op dinsdag 6 februari 2007 04:07 schreef wipes66 het volgende:
    Weet iemand hoe je in php thumbnail kan maken die niet wazig zijn? Ik gebruik gewoon imagecopyresampled en ImageCreateTrueColor, maar de kwaliteit is echt beroerd.

    Het veschil tussen photoshop en php
    [afbeelding]
    Je zou in plaats van GD ook Image Magick eens kunnen proberen, als dat op je server geinstalleerd is. De imagick_resize() functie heeft een blur-argument, waarmee je je plaatje scherper of blurrier kunt maken. Wie weet krijg je het daarmee wel goed.
    pi_46034053
    quote:
    Op dinsdag 6 februari 2007 10:10 schreef Tuvai.net het volgende:

    [..]

    En heb je in je eigen scriptje de kwaliteit wel op 100 staan? De voorbeeldafbeelding die je post is dusdanig onscherp dat ik wel zeker weet dat er een compressiepercentage op gebruikt is. D'r zitten zelfs vlekken kleurverschil in het witte van de achtergrond.
    hij stond op 75, maar als ik het op 100 zet maakt het nog niet veel uit.
    ..///
    pi_46034497
    quote:
    Op dinsdag 6 februari 2007 10:16 schreef Tijn het volgende:

    [..]

    Je zou in plaats van GD ook Image Magick eens kunnen proberen, als dat op je server geinstalleerd is. De imagick_resize() functie heeft een blur-argument, waarmee je je plaatje scherper of blurrier kunt maken. Wie weet krijg je het daarmee wel goed.
    Ja magick schijnt een stuk beter te zijn, maar het staat helaas niet op mijn server
    ..///
    pi_46034986
    Beetje offtopic maar wel weer ontopic ivm subdomeinen.

    Weet iemand een heel klein DNS servertje die ik thuis kan draaien om te kunnen werken met subdomeinen op mijn localhost zonder dat ik voor ieder 'test' domein een apparte regel aan mijn HOSTS bestand hoef toe te voegen? anyone?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 6 februari 2007 @ 11:51:30 #47
    52200 ViPeRII
    It's a good day to die
    pi_46035520
    -- ViPeRII --
      dinsdag 6 februari 2007 @ 12:46:04 #48
    5637 koekiemonster
    Goede reaktie ------------>
    pi_46037122
    Ik heb onderstaande string door middel van een post-actie doorgegeven, hoe kan ik de string omzetten naar een werkende array?
    Ik heb inmiddels al verschillende dingen geprobeerd, maar ik krijg het niet vor elkaar. moet niet extreem moeilijk zijn, maar ik kom er niet meer uit:

    de string:
    quote:
    sub_list[]=17&sub_list[]=6&sub_list[]=3&sub_list[]=4&sub_list[]=18&sub_list[]=20&sub_list[]=19
    Zou eigenlijk, zoiets moeten kunnen
    echo $sub_list[0]; zou moeten geven 17
    koekje erbij?
    pi_46037215
    Probeer de post string anders eens te parsen als bijvoorbeeld:
    17,6,3,4,18,29,19

    Of met waardes gescheiden door een ander teken in plaats van een komma.

    Op de nieuwe pagina kun je dan door middel van explode() een array maken.
      dinsdag 6 februari 2007 @ 13:10:20 #50
    5637 koekiemonster
    Goede reaktie ------------>
    pi_46037651
    datkan niet, want bovenstaande is hetgeen ik krijg aangeleverd door een ander sript.
    de string dient dus op deze manier omgezet te worden naar array.
    koekje erbij?
    pi_46037771
    1
    2
    3
    4
    <?php
    $sub_list 
    $_GET['sub_list'];
    print_r($sub_list);
    ?>
      dinsdag 6 februari 2007 @ 13:29:14 #52
    5637 koekiemonster
    Goede reaktie ------------>
    pi_46038160
    Doet ik maar als ik $sub_list[0] doe dan krijg ik de gehele array, in plaats van de eerste waarde.
    koekje erbij?
    pi_46038263
    met

    <?php

    $sub_list = $_GET['sub_list'];
    print $sub_list[0];

    ?>


    krijg ik gewoon 17

    En de gehele array > niet alleen de melding dat de string een array is?
      dinsdag 6 februari 2007 @ 14:11:24 #54
    85514 ralfie
    !Yvan eht nioj
    pi_46039469
    ok, dus je wilt die string omzetten (als ik het goed begrijp)? Hier heb je wat voorbeelden
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    $str
    ='sub_list[]=17&sub_list[]=6&sub_list[]=3&sub_list[]=4&sub_list[]=18&sub_list[]=20&sub_list[]=19';

    //methode 1
    parse_str($str);

    var_dump($sub_list);

    //methode 2
    eval('$'.str_replace('&sub_list',';$sub_list',$str).';');

    var_dump($sub_list);

    //methode 3
    preg_match_all("/sub_list[]=(d+)/",$str,$matches);
    $sub_list=$matches[1];

    var_dump($sub_list);
    ?>
    veel plezier
    pi_46040969
    quote:
    Op dinsdag 6 februari 2007 11:51 schreef ViPeRII het volgende:
    @Chandler.. kies er een uit

    http://www.newfreedownloads.com/find/dns-server.html
    Jammer dat ik er geen kan kiezen aangezien ze allemaal $$ kosten en zoek eentje die gratis is!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46046043
    $string = "sub_list[]=17&sub_list[]=6&sub_list[]=3&sub_list[]=4&sub_list[]=18&sub_list[]=20&sub_list[]=19";
    $string = str_replace ("sub_list[]", "", $string);
    $string = str_replace ("&", "", $string);
    $string = substr($string,1,strlen($string));
    $array = explode('=',$string);
    print'<pre>';
    print_r($array);
    print'</pre>';


    Het is niet netjes, maar het werkt
    pi_46047619
    quote:
    Op dinsdag 6 februari 2007 14:11 schreef ralfie het volgende:
    ok, dus je wilt die string omzetten (als ik het goed begrijp)? Hier heb je wat voorbeelden
    [ code verwijderd ]

    veel plezier
    Parse_str() is denk ik wel de mooiste oplossing. Alleen is het wel handig om 'm even in een functie te zetten, om te voorkomen dat er andere variabelen gezet worden dan je eigenlijk wil.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      dinsdag 6 februari 2007 @ 18:31:21 #58
    5637 koekiemonster
    Goede reaktie ------------>
    pi_46047917
    thanx!
    koekje erbij?
      woensdag 7 februari 2007 @ 09:17:36 #59
    107951 JortK
    Immer kwaliteitsposts
    pi_46065849
    Ik heb gisteravond een hele tijd zitten kloten, maar kom er niet uit:

    Ik heb een form gemaakt met drie velden:

    Datum (form input type text)
    Aantal (form input type text)
    Hits (form input type text)

    Nu wil ik deze drie gaan inlezen in me database met de volgende query:

    INSERT INTO statis (vDatum, vAantal, vHits)
    VALUES (Datum, Aantal, Hits)

    Kolommen hebben de volgende data types:

    vDatum = date
    vAantal = numeric
    vHits = numeric

    Nu zegt me form netjes dat die het record heeft aangemaakt, maar met een select zie ik de records niet terug (spreek: me tabel is nog steeds leeg )

    Hoe kan dit...

    Zal het te maken hebben met datatypes verschillen tussen me form en query?

    Ik heb niet de source bij de hand, zit nu op me werk

    Kan iemand mij helpen, voor zover?
      woensdag 7 februari 2007 @ 09:43:11 #60
    18008 hornage
    FOK! Movie Trivia-Prijsmeester
    pi_46066316
    Misschien krijg je tijdens het uitvoeren van je insert query een foutmelding van mysql?
    Voer je je query wel op de volgende manier uit? Zo krijg je tenminste informatie als er iets fout gaat:
    1
    2
    3
    <?php
    mysql_query
    ($query) or die(mysql_error());
    ?>
    Test je filmkennis! Speel mee met FOK! Movie Trivia en win prijzen!
      woensdag 7 februari 2007 @ 09:47:54 #61
    107951 JortK
    Immer kwaliteitsposts
    pi_46066438
    Nee ik voer m zo uit:

    1
    2
    3
    <?php
    mysql_query
    ($query) or die("Kan de Query niet uitvoeren!");
    ?>


    Maar hij gaat gewoon door naar de Echo die eronder staat.

    Deze ga ik vanavond ff proberen..
      woensdag 7 februari 2007 @ 10:08:44 #62
    18008 hornage
    FOK! Movie Trivia-Prijsmeester
    pi_46066891
    naja, als je dus wel een die() uitvoert en je krijgt niet die string te zien dan zal de query ansich wel goed zijn. MMm, misschien benader je dan de gegevens uit de $_POST verkeerd
    Test je filmkennis! Speel mee met FOK! Movie Trivia en win prijzen!
      woensdag 7 februari 2007 @ 10:27:50 #63
    107951 JortK
    Immer kwaliteitsposts
    pi_46068302
    deel 38

    ik heb een mysql vraag..
    ik heb een tabel Itemdata, met hierin ID, ItemID, en CategorieID
    ook heb ik een tabel Items.

    Ik wil een query samenstellen die alle records uit Itemdata trekt waar het ItemID zowel CategorieID 1 als CategorieID 2 heeft, maar alleen de items die voldoen aan beide voorwaarden. Ik kan maar 1 CategorieID per record in Itemdata toevoegen.. dus hij moet 2 records uit Itemdata trekken waarbij ItemID hetzelfde is en CategorieID 1 en CategorieID 2 is.

    is dat n beetje duidelijk?

    Uiteraard in 1 query..
    As a rule, I never touch anything more sophisticated and delicate than myself.
      woensdag 7 februari 2007 @ 11:38:34 #65
    85514 ralfie
    !Yvan eht nioj
    pi_46069267
    dit is een mogelijkheid, weet niet of er een betere is
    select * from itemdata i where i.CategorieID=1 AND CASE WHEN EXISTS(SELECT * FROM itemdata e WHERE e.categorieID=2 AND e.ItemID=i.itemID) THEN 1 ELSE 0 END=1

    zws beetje omslachtig, maar het werkt
      woensdag 7 februari 2007 @ 15:51:54 #67
    37634 wobbel
    Da WoBBeL King
    pi_46076669
    Oke, komt ie

    Ik heb 1 tabel met categorieën en 1 tabel met subcategorieën deze zien er zo uit:

    Tabel: Categorie
    - IdCategorie
    - Categorie

    Waarden bij tabel Categorie
    1 | Koekoeksklokken
    2 | Horloges

    Tabel: Subcategorie
    - IdSubcategorie
    - CategorieId
    - Subcategory

    Waarden bij tabel Subcategorie
    1 | 1 | Met levende vogeltjes
    2 | 1 | Met dode vogeltjes
    3 | 2 | Mooie horloges
    4 | 2 | Lelijke horloges
    5 | 2 | Horloges gestolen door negers

    Hoe zorg ik er nu voor dat ik het zo uit de database kan halen:

    Koekoeksklokken
    - Met levende vogeltjes
    - Met dode vogeltjes
    Horloges
    - Mooie horloges
    - Lelijke horloges
    - Horloges gestolen door negers
    pi_46076840
    SELECT *
    FROM categorie, Subcategorie
    WHERE SubCategorie.Subcategorie = categorie.idCategorie

    Ik had vanmiddag het zelfde, zo werkt het wel ongeveer, nu nog alles netjes in een UL zien te krijgen.
      woensdag 7 februari 2007 @ 16:02:00 #69
    37634 wobbel
    Da WoBBeL King
    pi_46076983
    quote:
    Op woensdag 7 februari 2007 15:57 schreef super-muffin het volgende:
    SELECT *
    FROM categorie, Subcategorie
    WHERE SubCategorie.Subcategorie = categorie.idCategorie

    Ik had vanmiddag het zelfde, zo werkt het wel ongeveer, nu nog alles netjes in een UL zien te krijgen.
    En dat is het probleem, want nu krijg ik:

    Categorienaam
    - Subcategorie
    Categorienaam
    - Subcategorie

    steeds
    pi_46077177
    Dan moet je dit gebruiken (had ik van iemand van Fok! gekregen)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    while($row mysql_fetch_assoc($result)) {

        if(
    $categorie != $row['Categorie']) {
            
    $categorie!= $row['Categorie']
            echo 
    "n<h2>" $row['Categorie'] . "</h2>n<ul>n";
        }
        
        echo 
    $row['Subcategory'] . "<br /> n";

    }
    ?>
      woensdag 7 februari 2007 @ 16:48:17 #71
    37634 wobbel
    Da WoBBeL King
    pi_46078551
    Gelukt

    Als het anders kan (of makkelijker en sneller) gelieve even te posten.

    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
    <?php
    $MySQL_Subcat_Select                                    
    = "SELECT SHOP_Category.Intern,
                                                            SHOP_Subcategory.InternSubcat,
                                                            SHOP_Subcategory.IdSubcategory
                                                            FROM SHOP_Category
                                                            INNER JOIN SHOP_Subcategory
                                                            ON ( SHOP_Subcategory.CategoryId = SHOP_Category.IdCategory )
                                                            ORDER BY SHOP_Category.Intern ASC"
    ;
    $MySQL_Subcat_Query                                        = mysql_query ( $MySQL_Subcat_Select )
                                                            or die (
    $error->MySQL ( __FILE__, $MySQL_Subcat_Select, __LINE__ ) );

    $i                                                        = 0;

    $DropDown                                                = "<select name="Category">";
    $DropDown                                                .= "n";

    while (
    $MySQL_Subcat_Array = mysql_fetch_assoc ( $MySQL_Subcat_Query ) )
    {

        if (
    $MySQL_Subcat_Array['Intern'] != $CategoryIntern )
        {
                    
            if (
    $i > 0 )
            {
            
                
    $DropDown                                    .= "</optgroup>";
                
    $DropDown                                    .= "n";
            
            }        
                        
            
    $DropDown                                        .= "<optgroup label="" . $MySQL_Subcat_Array['Intern'] . "">";
            
    $DropDown                                        .= "n";
            
        }
        
        
    $DropDown                                             .= "<option value="" . $MySQL_Subcat_Array['IdSubcategory'] . "">" . $MySQL_Subcat_Array['InternSubcat'] . "</option>";
        
    $DropDown                                            .= "n";
        
        if (
    $MySQL_Subcat_Array['Intern'] != $CategoryIntern )
        {
        
            
    $CategoryIntern                                    = $MySQL_Subcat_Array['Intern'];
            
        }    
        
        
    $i++;    
        
    }

    $DropDown                                                .= "</optgroup>";
    $DropDown                                                .= "n";
    $DropDown                                                .= "</select>";

    echo
    $DropDown;
    ?>


    [ Bericht 67% gewijzigd door wobbel op 07-02-2007 16:53:48 ]
    pi_46080668
    sjeetje wat een hoop spacing zeg
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 8 februari 2007 @ 07:36:42 #73
    37634 wobbel
    Da WoBBeL King
    pi_46095026
    quote:
    Op woensdag 7 februari 2007 17:51 schreef Chandler het volgende:
    sjeetje wat een hoop spacing zeg
    Ik werk altijd met tabjes enzo en met een template parser (en mijn script had ik ff omgebouwd voor fok zonder template parser)

    Maar het echte script gebruikt veel meer if/else statements, dus dan moeten de inspringen wat meer naar rechts
      donderdag 8 februari 2007 @ 10:51:51 #74
    107951 JortK
    Immer kwaliteitsposts
    pi_46098615
    Ik wordt helemaal leip van die spacing ongelofelijk

    Het is trouwens gelukt met me date inserten, had nog een oud veld in me query staan

    * JortK is lul
      FOK!-Schrikkelbaas donderdag 8 februari 2007 @ 11:44:29 #75
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46100215
    Ordinaire terug vind post
      donderdag 8 februari 2007 @ 11:45:02 #76
    107951 JortK
    Immer kwaliteitsposts
    pi_46106843
    is er een manier om alle records waarvan het ID in een $array staat uit de database te halen?
    zonder dat je moeilijk moet gaan doen met een foreach-loop van de array waarmee je de query samenstelt en uiteindelijk 100x het stukje 'OR ID = #' krijgt?
    As a rule, I never touch anything more sophisticated and delicate than myself.
      donderdag 8 februari 2007 @ 15:21:17 #78
    85514 ralfie
    !Yvan eht nioj
    pi_46107548
    Ja, dat kan met IN
    1Select * from x where id IN (2,4,6,2,1,3,5,6)


    simpel op te bouwen dmv join/implode:
    1
    2
    3
    <?php
    "SELECT * FROM x WHERE id IN (" . join( ',' , $arr ) . ")";
    ?>
    pi_46107844
    OOMGGG.. als ik die JOIN eerder had gekend had ik echt uuuuureeen bespaard..

    zelfde met de IN

    een combinatie van euforie en melancholie.

    tx!
    As a rule, I never touch anything more sophisticated and delicate than myself.
      FOK!-Schrikkelbaas donderdag 8 februari 2007 @ 16:02:18 #80
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46108939
    quote:
    Op donderdag 8 februari 2007 15:30 schreef Desdinova het volgende:
    OOMGGG.. als ik die JOIN eerder had gekend had ik echt uuuuureeen bespaard..

    zelfde met de IN

    een combinatie van euforie en melancholie.

    tx!
    Het is best al regelmatig voorbij gekomen.
    Ik gebruik hem zelf voor een winkelwagentje systeem. Een sessie array met produkt-id's.....
    pi_46109593
    klein probleempje.. heb een tabel gevormd met de resultaten die de database uitpoept. nu wil ik om de rij een variabele weergeven dus zeg maar zo:

    gegevens rij 1
    gegevens rij 2
    variabele
    gegevens rij 3
    gegevens rij 4
    variabele
    enz...

    ik weet dat dit kan met iets als if ($counter % 2){.... } ofzo
    maar dat werkt niet..
    hooeee doe ik dit?
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_46110120
    heb het als volgt opgelost: heel vies:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
       if ($teller % 2){
          echo "<tr>";
       }

    // tabel weergeven

       if ($teller % 2){
       }else{
          echo "</tr>";
       }
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
    pi_46125625
    Ik heb een probleem met MySQL met inladen van een groot csv bestand (100.000+ records) via LOAD DATA. Het inladen an sich werkt, gaat retesnel. Alleen staan de velden in het csv bestand niet op de juiste volgorde en heb ik er een aantal niet nodig in mijn database.

    Dus kan je aan het einde van het LOAD DATA commando de namen van de velden opgeven (col1, col2, ... ) en daar gaat het dus fout. Volgens de MySQL manual kan ik velden benoemen op de volgende manier: (firstname, @val1, lastname, @val2, etc) waarbij de eerste kolom uit de csv dus in de kolom firstname terecht komt, kolom in lastname, etc.

    En daar gaat het dus fout
    Kolommen komen niet op de juiste plek terecht, in plaats van @val2 pakt hij kolom 11 uit de csv bijvoorbeeld, en er lijkt vrij weinig logica in te zitten. Alle velden in de database zijn varchar(255), dus het is niet zo dat de content niet in het veld past ofzo...

    Alle tips zijn welkom
    pi_46126098
    CSV naar SQL is vaak een kutkarwei, sowieso als het aantal velden in het CSV bestand en je SQL database niet overeenkomen. Heb je al eens geprobeerd om de overbodige kolommen in je CSV bestand er uit te halen?

    In PHPMyAdmin zit trouwens ook een ingebouwde functies om CSV bestanden te exporteren. Ik heb hier echter wel weinig goede ervaringen mee.
    pi_46130123
    hoe kan ik makkelijk een kolom uit een csv halen met 100.000+ records? Ik kan het bestand niet eens in z'n geheel in Excel openen.... ik wil het bij voorkeur via LOAD DATA doen, omdat het anders zo lang gaat duren (moet ook dagelijks geautomatiseerd gaan gebeuren).

    Ik ga maar eens om een goed bestand zeuren denk ik
    pi_46130419
    quote:
    Op donderdag 8 februari 2007 16:33 schreef markiemark het volgende:
    heb het als volgt opgelost: heel vies:
    [ code verwijderd ]
    Wat dus ook zo kan:
    1
    2
    3
    4
    5
    6
    7
    8
    9
       if ($teller % 2){
          echo "<tr>";
       }

    // tabel weergeven

       if ($teller !% 2){
          echo "</tr>";
       }

    zo kun je het ook opschrijven :)
    pi_46133103
    1
    2
    3
       if ($teller !% 2){
          echo "</tr>";
       }

    Daar ging ie dus mee op zn bek bij mij... want dat had ik al wel geprobeerd..
    Amsterdam, stad van hash en coke,
    Waar de vrouwen zich vrouwelijk gedragen..
    En de mannen ook..
      vrijdag 9 februari 2007 @ 12:16:03 #88
    85514 ralfie
    !Yvan eht nioj
    pi_46135035
    1if (0 == $teller % 2)
    pi_46146559
    quote:
    Op vrijdag 9 februari 2007 08:28 schreef Xcalibur het volgende:
    hoe kan ik makkelijk een kolom uit een csv halen met 100.000+ records? Ik kan het bestand niet eens in z'n geheel in Excel openen.... ik wil het bij voorkeur via LOAD DATA doen, omdat het anders zo lang gaat duren (moet ook dagelijks geautomatiseerd gaan gebeuren).

    Ik ga maar eens om een goed bestand zeuren denk ik
    Ik zit wel eens in SQL dumps te snuffelen die honderden MBs groot zijn. Duurt effe eer ze geopend zijn, maar zodra 't geladen is kun je aan de slag.

    Moet ik wel bij zeggen dat ik een leuk computersysteempje heb draaien hier.
      vrijdag 9 februari 2007 @ 19:09:57 #90
    65471 SkaterSam
    Lurking Galore
    pi_46149087
    Even vraagje, ben na een tijdje weer bezig met mijn weblogscriptjes, en nu ben ik bezig met de login. Nu geef ik in de login sessie een Fingerprint mee aan elke user, om te controleren of ze het wel zijn. Maar nu ik er naar kijk lijkt het me niet zo veilig meer...

    1
    2
    3
    4
    <?php
    $fingerprint
    = "UNIEKE_TOKEN" . $_SERVER['HTTP_USER_AGENT'];
    $fingerprint = md5($fingerprint);
    ?>

    Dit is de unieke token dat gemaak wordt en telkens gecontroleerd op elke pagina in de Admin. Ik vroeg me af wat jullie er van vonden, en of je tips had wat betreft beveiliging.
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_46150629
    tja waarom maak je geen fingerprint van idd die server + IP oid... veel meer betrouwbaar...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46156030
    quote:
    Op vrijdag 9 februari 2007 19:09 schreef SkaterSam het volgende:
    Even vraagje, ben na een tijdje weer bezig met mijn weblogscriptjes, en nu ben ik bezig met de login. Nu geef ik in de login sessie een Fingerprint mee aan elke user, om te controleren of ze het wel zijn. Maar nu ik er naar kijk lijkt het me niet zo veilig meer...
    [ code verwijderd ]


    Dit is de unieke token dat gemaak wordt en telkens gecontroleerd op elke pagina in de Admin. Ik vroeg me af wat jullie er van vonden, en of je tips had wat betreft beveiliging.
    Zo'n fingerprint is toch niet uniek? IPV md5 kan je natuurlijk iets sterkers gebruiken als sha256.

    Maar verder kan je gewoon het IP versleutelen.
    1
    2
    3
    4
    <?php
    $plain
    = sprintf("%s-%s",$_SERVER['REMOTE_ADDR']."-".$zijninlognaam);
    $fingerprint = base64_encode(hash('sha256',$plain,true));
    ?>


    Allicht zijn er nog andere manieren te verzinnen om het IP aan een sessie te hangen.
    Iets als:

    session.referer_check string
    session.referer_check contains the substring you want to check each HTTP Referer for. If the Referer was sent by the client and the substring was not found, the embedded session id will be marked as invalid. Defaults to the empty string.

    session.cookie_httponly boolean
    Marks the cookie as accessible only through the HTTP protocol. This means that the cookie won't be accessible by scripting languages, such as JavaScript. This setting can effectively help to reduce identity theft through XSS attacks (although it is not supported by all browsers).
    pi_46162020
    Misschien lukt het niet omdat het zo laat is, maar hoe kan ik 2 strings returnen in een functie?
    pi_46166410
    quote:
    Op zaterdag 10 februari 2007 00:59 schreef super-muffin het volgende:
    Misschien lukt het niet omdat het zo laat is, maar hoe kan ik 2 strings returnen in een functie?
    Niet.

    Alleen:

    return array($stringA,$stringB);

    In PHP werkt dit bijv niet: echo foobar()[0];
    Je moet dan iets gebruiken als dit:

    $tmp = foobar();
    echo $tmp[0] // Geeft $stringA
    echo $tmp[1] // Geeft $stringB
    pi_46167610
    quote:
    Op vrijdag 9 februari 2007 21:54 schreef smesjz het volgende:

    [..]

    Zo'n fingerprint is toch niet uniek? IPV md5 kan je natuurlijk iets sterkers gebruiken als sha256.

    Maar verder kan je gewoon het IP versleutelen.
    [ code verwijderd ]
    1
    2
    3
    <?php
    $plain
    = sprintf("%s-%s",$_SERVER['REMOTE_ADDR']."-".$zijninlognaam);
    ?>


    sprintf verwacht daar 2 strings, je geeft er maar 1.
    pi_46167843
    quote:
    Op zaterdag 10 februari 2007 11:54 schreef Light het volgende:

    [..]
    [ code verwijderd ]

    sprintf verwacht daar 2 strings, je geeft er maar 1.
    Oeps, zo dus:

    1
    2
    3
    <?php
    $plain
    = sprintf("%s-%s",$_SERVER['REMOTE_ADDR'],$zijninlognaam);
    ?>
    pi_46169518
    Yep Of gewoon geen sprintf gebruiken in dit geval.
    pi_46178800
    quote:
    Op zaterdag 10 februari 2007 10:55 schreef smesjz het volgende:

    [..]

    Niet.

    Alleen:

    return array($stringA,$stringB);

    In PHP werkt dit bijv niet: echo foobar()[0];
    Je moet dan iets gebruiken als dit:

    $tmp = foobar();
    echo $tmp[0] // Geeft $stringA
    echo $tmp[1] // Geeft $stringB
    oke bedankt
      zaterdag 10 februari 2007 @ 21:31:15 #99
    107951 JortK
    Immer kwaliteitsposts
    pi_46184992
    Ik zit met de volgende uitdaging :)

    Ik wil een stuk tekst op een bepaalde plek een link anchor meegeven.

    Ik heb bijvoorbeeld deze zin:

    1Om meer te lezen, klik hier


    in mijn form vul ik bovenstaande zin in in een veld als volgt

    1Om meer te lezen, <T>klik hier</T>


    Nu wil ik de <T> vervangen door <a href="URL">, en de </T> door </a>

    hoe krijg ik dit op een snelle, cleane manier voor elkaar, ik heb met de str_replace() zitten klooien maar daar kom ik niet helemaal uit :) ?
      zaterdag 10 februari 2007 @ 21:40:36 #100
    85514 ralfie
    !Yvan eht nioj
    pi_46185358
    bijv
    1
    2
    3
    <?php
    $str
    =preg_replace("/<T>(.*?)<\/T>/","<a href=\"URL\">\\1</a>",$str);
    ?>
      zaterdag 10 februari 2007 @ 21:47:45 #101
    107951 JortK
    Immer kwaliteitsposts
      FOK!-Schrikkelbaas zaterdag 10 februari 2007 @ 21:49:11 #102
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46185662
    met dank aan SuperRembo een url parser die zo'n beetje alles parsed

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $regexps = array(
                   // http://foo.net => [url=http://foo.net]http://foo.net[/url]
                   '#(?<![url=)(http://.*?)(?=[.,?:;()<>]*(s|$))#i'   => '[url=1]1[/url]',
                // www.foo.net => [url=www.foo.net]http://www.foo.net[/url]
                '#(?<![url=)(?<!http://)(www..*?)(?=[.,?:;()<>]*(s|$))#i'   => '[url=http://1]1[/url]',
                // [url=http://foo.net]Foo[/url] => <a href="http://foo.net">Foo</a>
                '#[url=(https?://.*?)](.*?)[/url]#i'   => '<a class="main" href="1" target="_new">2</a>',
                // [url=foo.net]Foo[/url] => <a href="http://foo.net">Foo</a>
                '#[url=(.*?)](.*?)[/url]#i'   => '<a class="main" href="http://1" target="_new">2</a>',
                   );

       foreach ($regexps as $search=>$replace) {
             $text = preg_replace($search, $replace, $text);
       }
    pi_46189570
    Helaas heb je er zo niet veel aan omdat alle \\ verneukt zijn

    En de class="main" en target="_new" (wat natuurlijk target="_blank" zou moeten zijn) zijn toevoegingen van swets
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      FOK!-Schrikkelbaas zaterdag 10 februari 2007 @ 23:37:47 #104
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46189754


    Maar het zou wel leuk zijn als die backslash bug eens opgelost wordt in replique
    pi_46197291
    Weet iemand een manier om javascript zaken uit HTML te filteren? zodat ik heerlijk gewoon een wysiwyg editor kan gebruiken voor wat voor site dan ook maar?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zondag 11 februari 2007 @ 12:11:45 #106
    107951 JortK
    Immer kwaliteitsposts
    pi_46197566
    ik zit weer met een nieuwe uitdaging... eens kijken hoever ik kom, en anders horen jullie het van me
    pi_46203136
    vtel! eens!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46203821
    quote:
    Op zondag 11 februari 2007 12:00 schreef Chandler het volgende:
    Weet iemand een manier om javascript zaken uit HTML te filteren? zodat ik heerlijk gewoon een wysiwyg editor kan gebruiken voor wat voor site dan ook maar?
    "om javascript zaken uit HTML te filteren"
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      zondag 11 februari 2007 @ 14:52:06 #109
    107951 JortK
    Immer kwaliteitsposts
    pi_46204021
    quote:
    Op zondag 11 februari 2007 14:46 schreef SuperRembo het volgende:

    [..]

    "om javascript zaken uit HTML te filteren"
    Ja ik snapte hem ook al niet helemaal
      FOK!-Schrikkelbaas zondag 11 februari 2007 @ 14:55:32 #110
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46204137
    dat javascript uit html filteren begreep ik nog, maar het doel... wysiwig editor gebruiken... ontgaat me
      zondag 11 februari 2007 @ 14:57:08 #111
    107951 JortK
    Immer kwaliteitsposts
    pi_46204196
    quote:
    Op zondag 11 februari 2007 14:31 schreef Chandler het volgende:
    vtel! eens! :)
    Nou ik moet iets scripten wat het volgende doet:

    Ik heb een input als volgt:

    1
    2
    3
    4
    5
    6
    7
    <a href="url"><img src="plaatje"></a>
    <BR>
    <a href="url2"><img src="plaatje2"></a>
    <a href="url3"><img src="plaatje3"></a>
    <BR>
    <a href="url4"><img src="plaatje4"></a>
    <BR>


    Kortom... plaatjes met een anchor met in willekeur de <BR> tag (lang leve Imagevenue :) )

    De rauwe code gebruik ik als input in me form.

    Wanneer de input geprocessed wordt, moet het volgende gebeuren:

    * Alle <BR> tags verwijderen.
    * Na iedere vierde afbeelding, dus na iedere vierde </a> moet een <BR> komen.
    * Tussen iedere </a><a tag moet    komen

    En in deze volgorde :)
      FOK!-Schrikkelbaas zondag 11 februari 2007 @ 15:03:12 #112
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46204464
    str_replace waar bij je de <BR> vervangt door een spatie. hoppa, de spaties heb je alvast.
    En een tellertje mee laten lopen en als die op 4 staat een <br /> parsen
    pi_46204795
    Ik doel dus op het volgende

    Er zijn vele varianten van <script> in html, en deze wil ik allemaal kunnen verwijderen op het moment dat een pagina wordt opgeslagen (en dat over wysiwyg editor boeit niet )
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46204991
    Gewoon iets als preg_replace($content, '#<script.*</script>#isU', '')?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      zondag 11 februari 2007 @ 15:21:50 #115
    12880 CraZaay
    prettig gestoord
    pi_46205201
    quote:
    Op zondag 11 februari 2007 15:10 schreef Chandler het volgende:
    Ik doel dus op het volgende

    Er zijn vele varianten van <script> in html, en deze wil ik allemaal kunnen verwijderen op het moment dat een pagina wordt opgeslagen (en dat over wysiwyg editor boeit niet )
    Ik zou hier heel erg mee uitkijken. Een onclick bevat ook scripting, en css kan ook scripting bevatten (tenminste: op de plaats waar css hoort te staan javascript uitvoeren). Je zult je aardig moeten verdiepen in de materie om dit allemaal af te vangen.
    pi_46205236
    Is er een manier om alle aanwezige schijfletters op een windows pc te achterhalen? En is het mogelijk om onderscheid te maken tussen vaste (HD) en losse (CD/diskette) schijven?
    Met COM werken is geen bezwaar, maar daar heb ik helaas geen kaas van gegeten
    pi_46205473
    @SuperRembo & CraZaay: klopt, daarom zoek ik er ook iets tegen
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zondag 11 februari 2007 @ 19:16:49 #118
    85514 ralfie
    !Yvan eht nioj
    pi_46213260
    quote:
    Op zondag 11 februari 2007 15:22 schreef Nevermind het volgende:
    Is er een manier om alle aanwezige schijfletters op een windows pc te achterhalen? En is het mogelijk om onderscheid te maken tussen vaste (HD) en losse (CD/diskette) schijven?
    Met COM werken is geen bezwaar, maar daar heb ik helaas geen kaas van gegeten
    ik weet niet of er een betere manier is, maar je kunt in xp iig deze drives uit het register lezen. Bij elke drive staat een vage code die vast ergens voor staat, en waar je waarschijnlijk een hoop informatie uit kan halen, maar ik kom niet verder als de eerste twee karakters, die bij removable hardware altijd '5c' blijken te zijn (bij mij iig). Ze schijnen ook identiek te zijn bij verschillende partities van dezelfde schijf, tis maar dat je het weet. Ik heb zogauw iig niets gevonden over wat de codes precies betekenen.

    1
    2
    3
    4
    5
    6
    <?php
    exec
    ('reg query "HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices"',$output);
    $out=array();
    foreach(
    $output as $x)
            if(
    preg_match("#DosDevices.(\w):.REG_BINARY.([0-9A-Z]{2})#is",$x,$matches)) $out[$matches[1]]=$matches[2]=='5C'?'Removable':'Stuck';
    ?>
    Je krijgt dan een array ($out) met bijv
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    array (
      'C' => 'Stuck',
      'D' => 'Stuck',
      'A' => 'Removable',
      'E' => 'Stuck',
      'F' => 'Stuck',
      'G' => 'Stuck',
      'H' => 'Removable',
      'I' => 'Removable',
      'J' => 'Removable',
    )
    Station J bestaat bij mij niet. Het komt van een usb stokje af, wat er (nu) weer uit is. Het blijkt dat tijdelijke stations voor bijv usb sticks geregistreerd blijven! Let hierop als je er wat mee gaat doen.
    pi_46216387
    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
    <?php
    function getDriveStats($drive)
    {
        if (
    strlen($drive) == 1)
        {
            
    $drive = $drive . ":";
        }
        
        
    $exists = @stat($drive);
        if (
    $exists != false)
        {
            
    $free  = disk_free_space($drive);
            
    $total = disk_total_space($drive);

            
    $driveinfo['space'] = $total;
            
    $driveinfo['used']  = $total;
            
    $driveinfo['free']  = 0;
            
            if (
    $total != 0)
            {
                
    $driveinfo['free'] = $free;
                
    $driveinfo['used'] = $total - $free;
            }

            return
    $driveinfo;
        }
        
        return
    false;
    }

    for (
    $x = 0; $x < 26; $x++)
    {
        
    $info = getDriveStats(chr(65+$x));
        
        echo
    'drive ' . CHR(65+$x);
        
        if (
    $info == false)
        {
            echo
    ' does not exists <br />';
        }
        else
        {
            echo
    ' exists and is ' . $info['space'] . ' bytes big and has ' . $info['free'] . ' bytes free<br />';
        }
    }
    ?>
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zondag 11 februari 2007 @ 22:21:11 #120
    37634 wobbel
    Da WoBBeL King
    pi_46220891
    = verkeerde topic =
    pi_46230415
    klein vraagje:
    ik heb een commandline programma en daarvan wil ik de output op het scherm hebben (of in een variable)
    echter komt de output telkens in mijn errorlog tevoorschijn?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
        
    if(file_exists($row['location'].$row['filename']))
        {
            echo(
    "reading ".$row['location'].$row['filename']."<br><pre>");
            
            
    $last_line passthru("d:/www/ffmpeg/ffmpeg.exe -i ".$row['location'].$row['filename']);
            echo(
    "</pre>");
            
    // Printing additional info
        
    }
    ?>


    output in errorlog:
    quote:
    Seems that stream 0 comes from film source: 23.98 (65535/2733) -> 23.98 (250000/10427)
    Input #0, avi, from 'm:AnimeFate Stay Night[Eclipse] Fate-stay night - 02 (XviD) [FF455508].avi':
    Duration: 00:24:30.0, start: 0.000000, bitrate: 1041 kb/s
    Stream #0.0: Video: mpeg4, yuv420p, 640x368, 23.98 fps(r)
    Stream #0.1: Audio: mp3, 48000 Hz, stereo, 128 kb/s
    Must supply at least one output file
    FFmpeg version SVN-r7215, Copyright (c) 2000-2006 Fabrice Bellard, et al.
    configuration: --enable-memalign-hack
    libavutil version: 49.1.0
    libavcodec version: 51.25.0
    libavformat version: 51.6.0
    built on Dec 3 2006 00:22:39, gcc: 3.4.6
    wie kan me helpen?
      FOK!-Schrikkelbaas maandag 12 februari 2007 @ 11:36:09 #122
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46232393
    regexp vraag

    ik heb dit als source
    1<td Width=200 bgcolor=#9DA9BD>SWETS P.J.                   </td>


    en ik heb dit patern
    1"<td Width=200 bgcolor=#9DA9BD[^>]*>(.*?)</td>"


    en die matched
    1SWETS P.J.                   // let op de whitespace!


    Ik kan geen trim op het result loslaten, dus ik wil graag de regexp aanpassen zodat hij de whitespaces aan het eind negeert. maar uh... hoe :P
    pi_46233425
    quote:
    Op zondag 11 februari 2007 19:16 schreef ralfie het volgende:
    quote:
    Op zondag 11 februari 2007 20:47 schreef Chandler het volgende:
    Bedankt beide! Ik zit tijdelijk even op W2k tot ik XP weer geïnstalleerd heb, dus de eerste oplossing gaat nu niet werken. Het is wel iets netter om het via het register te doen, maar de eerste tijd kan ik tijdelijk Chandlers oplossing gebruiken. Ik kan weer verder, hartelijk dank
    pi_46233783
    quote:
    Op maandag 12 februari 2007 11:36 schreef Swetsenegger het volgende:
    regexp vraag
    [...]
    Ik kan geen trim op het result loslaten, dus ik wil graag de regexp aanpassen zodat hij de whitespaces aan het eind negeert. maar uh... hoe :P
    Dan moet je de whitespace opgeven in je regexp, en wel buiten de haakjes:

    1"<td Width=200 bgcolor=#9DA9BD[^>]*>\s*(.*?)\s*</td>"
    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 12 februari 2007 @ 12:53:28 #125
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46234534
    quote:
    Op maandag 12 februari 2007 12:25 schreef SuperRembo het volgende:

    [..]

    Dan moet je de whitespace opgeven in je regexp, en wel buiten de haakjes:
    [ code verwijderd ]
    Bedankt! zo simpel.
      FOK!-Schrikkelbaas maandag 12 februari 2007 @ 13:35:02 #126
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46235583
    Hmz, waarom matched hij ook vanalles voor en na de TD? Ik wil alleen dat wat tussen de td staat
    pi_46239570
    quote:
    Op maandag 12 februari 2007 12:13 schreef Nevermind het volgende:
    Bedankt beide! Ik zit tijdelijk even op W2k tot ik XP weer geïnstalleerd heb, dus de eerste oplossing gaat nu niet werken. Het is wel iets netter om het via het register te doen, maar de eerste tijd kan ik tijdelijk Chandlers oplossing gebruiken. Ik kan weer verder, hartelijk dank
    Graag gedaan
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46246197
    quote:
    Op maandag 12 februari 2007 13:35 schreef Swetsenegger het volgende:
    Hmz, waarom matched hij ook vanalles voor en na de TD? Ik wil alleen dat wat tussen de td staat :{
    1
    2
    3
    if (preg_match('|<td>(.*?)</td>|i', $html, $matches) {
       $inhoudVanDeTD = $matches[1];
    }


    $matches[1] bevat alles wat tussen de 1e set haakjes staat. Dat zou moeten werken.
    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 12 februari 2007 @ 19:11:53 #129
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46247333
    quote:
    Op maandag 12 februari 2007 18:43 schreef SuperRembo het volgende:

    [..]
    [ code verwijderd ]

    $matches[1] bevat alles wat tussen de 1e set haakjes staat. Dat zou moeten werken.
    Ja precies, ik had hem nodig in ASP en daarmee was het ff zoeken hoe ik de juiste uit de array kon vissen
    Bedankt weer!
    pi_46247934
    Waarom stel je die vraag dan hier en niet in dat APS(.NET) topic? (Waar alleen maar ouwe ASP meuk in staat)
    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 12 februari 2007 @ 19:27:34 #131
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46248030
    quote:
    Op maandag 12 februari 2007 19:25 schreef SuperRembo het volgende:
    Waarom stel je die vraag dan hier en niet in dat APS(.NET) topic? (Waar alleen maar ouwe ASP meuk in staat)
    Omdat een regexp een regexp is en ik weet dat hier mensen zitten die veel weten van regexps
    Ja ik kan het ook niet helpen dat het intranet nog op ASP3.0 draait
    pi_46249141
    ASP.NET heeft minimaal Win2k Pro nodig. Dat lukt toch nog wel mag ik hopen?
    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 12 februari 2007 @ 20:37:10 #133
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46250083
    quote:
    Op maandag 12 februari 2007 19:49 schreef SuperRembo het volgende:
    ASP.NET heeft minimaal Win2k Pro nodig. Dat lukt toch nog wel mag ik hopen?
    Mjah het is geen kwestie van hardware ofzo. Maar het is een gemeente, die veranderen niet zomaar
    pi_46250159
    quote:
    Op maandag 12 februari 2007 19:27 schreef Swetsenegger het volgende:

    [..]

    Omdat een regexp een regexp is en ik weet dat hier mensen zitten die veel weten van regexps
    Ja ik kan het ook niet helpen dat het intranet nog op ASP3.0 draait
    Ik werk overdag en kom er dan niet aan toe om hier mee te lezen
    pi_46252997
    voor alle regex mensen hier: weet iemand vanaf welke Linux / PHP versie de regex ook special characters kan matchen (ë / à / etc.). Ik had een Windows server met PHP 4.3.11 waar het werkte, maar nu ben ik over naar een Linux server met PHP 4.3.11, en daar werkt het niet

    Het gaat dus om regexen als: P{M} enzo

    Edit: ik krijg dus deze error: "Warning: preg_match(): Compilation failed: PCRE does not support L, l, N, P, p, U, u, or X"

    [ Bericht 13% gewijzigd door Xcalibur op 13-02-2007 14:13:35 ]
    pi_46303221
    dat topic loop als een trein, vraag ik wat, gelijk dood
    pi_46321999
    Stel dan geen moeilijke vragen
    pi_46323909
    Ik heb een pagina gemaakt. Als ik via index.php?pagina=home surf, krijg ik de pagina te zien zonder fouten. Anders krijg ik wel fouten en dat komt omdat ik ergens in me code, verder op de pagina het volgende heb: "$pagina = $_GET['pagina'];".

    Als er nou geen inhoud in de var pagina is krijg ik een foutmelding. Hoe zorg ik ervoor dat als er geen inhoud in de var is, dat de pagina url automatisch index.php?pagina=home wordt?

    Ik heb al wat geprobeerd met headers:

    1
    2
    3
    4
    5
    <?php
    if (!$_SERVER['PATH_TRANSLATED'] == "http://localhost/index.php") {
       header("Location: http://localhost/index.php?pagina=home");
    }
    ?>

    Bvd.
    pi_46324064
    1
    2
    3
    4
    5
    <?php
    if($pagina == ''') {
       include(home.php)
    }
    ?>

    Dat dus. Maar ik zou nog wel ergens de invoer van $pagina controleren.
    pi_46324169
    quote:
    Op donderdag 15 februari 2007 10:38 schreef super-muffin het volgende:

    [ code verwijderd ]
    Dat dus. Maar ik zou nog wel ergens de invoer van $pagina controleren.
    En hoe doe ik dat precies?

    if (Empty($pagina)) { ?
    pi_46324311
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php

    $pagina = 'home'; 

    $bekende_paginas = array ('home', 'about', 'contact', 'producten');

    if (isset($_GET['pagina']) && in_array ($_GET['pagina'], $bekende_paginas))
    {
      $pagina = $_GET['pagina'];
    }

    ?>


    Zie ook dit artikeltje op scriptorama.
    pi_46324447
    quote:
    Op donderdag 15 februari 2007 10:48 schreef CaPS_ het volgende:

    [ code verwijderd ]

    Zie ook dit artikeltje op scriptorama.
    Bedankt.
    pi_46324748
    en vergeet en geen else aan te hangen om de gebruiker door te sturen of iig een nette foutmelding te geven, mocht het voorkomen.
    pi_46325315
    quote:
    Op donderdag 15 februari 2007 11:02 schreef super-muffin het volgende:
    en vergeet en geen else aan te hangen om de gebruiker door te sturen of iig een nette foutmelding te geven, mocht het voorkomen.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
       <?php
       include("functies.php");
       $pagina = $_GET['pagina'];
       
       switch ($pagina) {
       default:
       case "home":
           include("home.php");
          break;
       case "telefoonboek":
           include("telefoonboek.php");
          break;
       case "relatiegids":
           include("relatiegids.php");
          break;
       case "admin":
           include("admin.php");
          break;
       }
       ?>
    Dit is wat ik had...
    pi_46325624
    Maar welke ga je nu gebruiken, die van CaPS of die van jou?
    pi_46326044
    quote:
    Op donderdag 15 februari 2007 11:29 schreef super-muffin het volgende:
    Maar welke ga je nu gebruiken, die van CaPS of die van jou?
    Die van mij heeft een bug...
    Heb jij anders een idee hoe ik de bug kan oplossen in mijn script?
    Ik snap niet precies het CaPS script
    Bvd.
    pi_46326356
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?php
       
       
    include("functies.php");
       
    $pagina = $_GET['pagina'];
       
       switch (
    $pagina) {
       case
    "home":
           include(
    "home.php");
          break;
       case
    "telefoonboek":
           include(
    "telefoonboek.php");
          break;
       case
    "relatiegids":
           include(
    "relatiegids.php");
          break;
       case
    "admin":
           include(
    "admin.php");
          break;
       default:
           include(
    "404.php");
       }
       
    ?>


    Bingo, als je nog even een 404.php aanmaakt zou het moeten werken. Je default kun je het beste onderaan gooien
    pi_46326729
    quote:
    Op donderdag 15 februari 2007 11:54 schreef Geqxon het volgende:

    [ code verwijderd ]

    Bingo, als je nog even een 404.php aanmaakt zou het moeten werken. Je default kun je het beste onderaan gooien
    Als er nou geen waarde in de pagina is, dan pakt de switch toch default?
    pi_46326994
    quote:
    Op donderdag 15 februari 2007 11:43 schreef Qunix het volgende:

    [..]

    Die van mij heeft een bug...
    Heb jij anders een idee hoe ik de bug kan oplossen in mijn script?
    Ik snap niet precies het CaPS script
    Bvd.
    Die van CaPS is het makkelijkst.
    hier is zijn script met commentaar:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    $pagina
    = $_GET['pagina'];
    //een lijst met pagina's die geinclude mogen worden
    //aanpassen naar de pagina's die je wilt
    $bekende_paginas = array ('home', 'about', 'contact', 'producten');

    // als $pagina een waarde heeft, en in de waarde daar van in de array staat
    if (isset($pagina) && in_array ($pagina, $bekende_paginas)) {
        
    // include de pagina
        
    include($pagina . ".php");
    }
    // als de statment hierboven false is, controleer of dit wel goed is
    else if($pagina == '') {
        include(
    "home.php");
    }
    // als beide statements false zijn
    else {
        include(
    "404.php");
    }
    ?>


    [ Bericht 4% gewijzigd door super-muffin op 15-02-2007 12:24:31 ]
    pi_46327033
    quote:
    Op donderdag 15 februari 2007 12:07 schreef Qunix het volgende:

    [..]

    Als er nou geen waarde in de pagina is, dan pakt de switch toch default?
    Jij snapt hem
    pi_46327088
    quote:
    Op donderdag 15 februari 2007 12:07 schreef Qunix het volgende:

    [..]

    Als er nou geen waarde in de pagina is, dan pakt de switch toch default? :?
    Klopt, als geen van de cases true is, word de default gepakt.

    wat je ook kunt doen in het script van Geqxon:
    1
    2
    3
    4
    5
    6
    <?php
    $pagina
    = $_GET['pagina'];

    if(
    $pagina = '') $pagina = "home";
    //switch
    ?>


    Zo zie je maar, er leiden meer wegen naar Rome :P
    pi_46327123
    En om de integeriteit van die van CaPS te verbeteren:

    1
    2
    3
    <?php
    if (isset($_GET['pagina']) && in_array ($_GET['pagina'], $bekende_paginas) && file_exists($_GET['pagina'])
    ?>
    pi_46327153
    ik zou er dan van maken:

    1
    2
    3
    <?php
    if (isset($_GET['pagina']) && in_array ($_GET['pagina'], $bekende_paginas) && file_exists($_GET['pagina'] . ".php") //of .html/.htm of wat je ook gebruikt.
    ?>
    pi_46327159
    Verder ben ik van mening dat die isset en de in_array controle een beetje teveel van het goede is, want als hij in de array zit zal hij ook vast wel ge-set is.
    quote:
    Op donderdag 15 februari 2007 12:21 schreef super-muffin het volgende:
    ik zou er dan van maken:
    [ code verwijderd ]
    Wel zo slim
    pi_46327372
    quote:
    Op donderdag 15 februari 2007 12:16 schreef super-muffin het volgende:

    [..]

    Die van CaPS is het makkelijkst.
    hier is zijn script met commentaar:

    [ code verwijderd ]
    Thanks
    pi_46329045
    Als de url "http://localhost/intranet/" is dan krijg ik de volgende foutmelding:
    Notice: Undefined index: pagina in S:Leerbedrijfwwwrootintranetindex.php on line 72

    Lijn 72 tot 73:
    1
    2
    3
    <?php
        $pagina
    = $_GET['pagina'];
    ?>

    Ligt dat aan de php instellingen? Of is het gevaarlijk?
    pi_46329486
    fout is weg
    pi_46329663
    De kans is gering dat het werkt, maar for the sake of safety zou je ook iets als dit even kunnen proberen:

    1
    2
    3
    <?php
    include("http://www.website.nl/content/" . $pagina . ".php");
    ?>


    Dan is het in principe onmogelijk om "gekke" pagina's aan te vragen

    [ Bericht 11% gewijzigd door Geqxon op 15-02-2007 13:48:15 ]
    pi_46330388
    quote:
    Op donderdag 15 februari 2007 13:37 schreef Geqxon het volgende:
    De kans is gering dat het werkt, maar for the sake of safety zou je ook iets als dit even kunnen proberen:


    [ code verwijderd ]

    Dan is het in principe onmogelijk om "gekke" pagina's aan te vragen
    Thanks
    pi_46331903
    -edit-

    [ Bericht 91% gewijzigd door Qunix op 15-02-2007 14:52:52 ]
    pi_46332045
    SELECT *
    FROM tabelnaam1, tabelnaam2

    Misschien heb je wat aan deze site:
    http://www.tizag.com/mysqlTutorial/
    pi_46332137
    quote:
    Op donderdag 15 februari 2007 14:50 schreef super-muffin het volgende:
    SELECT *
    FROM tabelnaam1, tabelnaam2

    Misschien heb je wat aan deze site:
    http://www.tizag.com/mysqlTutorial/
    ik had een spelfout had hem toch goed
    pi_46333415
    Hoe kan ik een variabel op laten tellen binnen een for loop?

    Dus ik heb bijvoorbeeld het variabel $test1 en binnen de for loop moet ie steeds 1 hoger worden, dus je krijgt een $test2 erbij en een $test3, dus eigenlijk $test$i maar dat werkt dus niet.
    Misschien dat ik het met een array kan oplossen maar liever op deze manier als dat gaat.
    -
      donderdag 15 februari 2007 @ 15:43:21 #164
    85514 ralfie
    !Yvan eht nioj
    pi_46333742
    1
    2
    3
    4
    <?php
    $var
    ="test".$i;
    $
    $var="bla";
    ?>
    pi_46334216
    Merci.
    -
      donderdag 15 februari 2007 @ 16:21:19 #166
    12880 CraZaay
    prettig gestoord
    pi_46335307
    Ik vraag me af waarom je dit liever niet met een array wilt doen?
    pi_46335549
    In het kort wil ik het volgende doen:

    Ik heb een object category, die heeft een array $clsChilds.
    Nu wil ik die gaan vullen met waardes uit de database dus ik zeg bijvoorbeeld
    $clsCategory[0]->clsChilds[0]->clsChilds[0]->addChild();

    $clsCategory[0] is de hoofdcategorie en dit is dus een child van een child, bijvoorbeeld:
    electronica (hoofdcategorie) > gsm > nokia

    Maar hoe dieper je komt, des te langer wordt het ->clsChilds[0]->clsChilds[0]-> stukje, dus dat wil ik met een for loop laten opbouwen, maar dat pakt ie niet helemaal merk ik.

    Is er nog een andere oplossing om dit te doen?
    -
      donderdag 15 februari 2007 @ 17:04:08 #168
    18008 hornage
    FOK! Movie Trivia-Prijsmeester
    pi_46336942
    als je in een treestructuur een specifieke node wil hebben kan je die misschien sneller benaderen door er een searchfunctie in te maken en dan direct de methode daarin aan te roepen. Als je met trees werkt is recursie natuurlijk ook het toverwoord
    Test je filmkennis! Speel mee met FOK! Movie Trivia en win prijzen!
      donderdag 15 februari 2007 @ 18:00:38 #169
    85514 ralfie
    !Yvan eht nioj
    pi_46338766
    of gebruik pointers:
    1
    2
    3
    <?php
    $pointer
    =&$clsCategory[0]->clsChilds; //etc
    ?>
    In combinatie met een simpel for loopje natuurlijk helemaal te gek
    pi_46338788
    quote:
    Op donderdag 15 februari 2007 12:22 schreef Geqxon het volgende:
    Verder ben ik van mening dat die isset en de in_array controle een beetje teveel van het goede is, want als hij in de array zit zal hij ook vast wel ge-set is.
    Tja, de standaard PHP configuratie laat je inderdaad toe om de isset() aanroep weg te laten maar ik vind het niet verstandig. Wat ik schreef is logischer, het is immers mogelijk dat de variabele 'pagina' niet is meegegeven in de URL en dat dient dus gecontroleerd te worden voordat je er zomaar gebruik van maakt. Qunix is die situatie zelf ook al tegen gekomen:
    quote:
    Op donderdag 15 februari 2007 13:20 schreef Qunix het volgende:
    Als de url "http://localhost/intranet/" is dan krijg ik de volgende foutmelding:
    Notice: Undefined index: pagina in S:Leerbedrijfwwwrootintranetindex.php on line 72

    Lijn 72 tot 73:
    [ code verwijderd ]

    Ligt dat aan de php instellingen? Of is het gevaarlijk?
    pi_46340187
    dag, zit me teen klein probleempje.
    ben onlangso vergestapt naar een nieuwe php, mysql en apache versie en alles werkt in princiepe
    alleen krijg ik bij sql statements bij sommige nog een foutmelding:

    de foutmelding:

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '


    <?php

    $text = $_POST['text'];
    $id = $_GET['id'];


    $sql = "UPDATE paginas SET content = '$text' WHERE id = '$id'";
    mysql_query($sql) or die("<h1>Er is iets misgegaan</h1><hr>".mysql_error());

    ?>


    ik weet al wel hoe het komt en heb al een workarround maar weet niet hoe ik de statement kan aanpassen zodat het wel nmormaal werkt.
    het probleem is namelijk dat ik een stuk text probeer op te slaan, maar de ' uit de text als bijvoorbeeld ergens komma 's worden gebruikt dan loopt hij daar tegen aan in de statement... dubbele quotes gebruiken is een oplossing maar dat gaat gewoon niet altijd

    iemand een idee hoe ik dit kan verhelpen ?
    De enige echte BaggerUser!
    Riemen
    fiets kopen
    pi_46340446
    1$var1 = "iets" . $var2 . "sdf";


    Is de juiste manier om het te doen. :) Volgens mij lost dat het wel op.

    @hornage, een specifieke node lezen kan ik al wel maar het probleem was om de hele database in te lezen en classes van te maken.
    @ralfie, bedankt dat ga ik eens proberen!
    -
      FOK!-Schrikkelbaas donderdag 15 februari 2007 @ 19:39:58 #173
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46342020
    quote:
    Op donderdag 15 februari 2007 18:46 schreef BaggerUser het volgende:
    dag, zit me teen klein probleempje.
    ben onlangso vergestapt naar een nieuwe php, mysql en apache versie en alles werkt in princiepe
    alleen krijg ik bij sql statements bij sommige nog een foutmelding:

    de foutmelding:

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '


    <?php

    $text = $_POST['text'];
    $id = $_GET['id'];


    $sql = "UPDATE paginas SET content = '$text' WHERE id = '$id'";
    mysql_query($sql) or die("<h1>Er is iets misgegaan</h1><hr>".mysql_error());

    ?>


    ik weet al wel hoe het komt en heb al een workarround maar weet niet hoe ik de statement kan aanpassen zodat het wel nmormaal werkt.
    het probleem is namelijk dat ik een stuk text probeer op te slaan, maar de ' uit de text als bijvoorbeeld ergens komma 's worden gebruikt dan loopt hij daar tegen aan in de statement... dubbele quotes gebruiken is een oplossing maar dat gaat gewoon niet altijd

    iemand een idee hoe ik dit kan verhelpen ? ;(
    mysql_real_escape_string
    En $id hoeft waarschijnlijk niet in tussen enkele quotes, want zal een integer bevatten en je variabelen buiten quotes plaatsen
    1
    2
    3
    <?php
    $sql
    = "UPDATE paginas SET content = '".$text."' WHERE id = ".$id;
    ?>
    pi_46342310
    quote:
    Op donderdag 15 februari 2007 18:00 schreef ralfie het volgende:
    of gebruik pointers:
    [ code verwijderd ]

    In combinatie met een simpel for loopje natuurlijk helemaal te gek
    Ik heb nu:
    1
    2
    $pointer =& $clsObject->clsChild;
    $$var = $pointer->function();


    Dat werkt. Maar ik wil een oneindig aantal clsChilds, wee tje toevallig ook hoe dat moet?
    Dit werkt bijvoorbeeld niet:

    1
    2
    3
    $pointer =& $clsObject->clsChild;
    $pointer2 =& clsChild;
    $$var = $pointer->pointer2->function();
    -
    pi_46344238
    Minivraag

    met dit maak ik van een string een array
    1explode(",", FONTS)


    echter krijg ik dan

    1
    2
    3
    $font[0] = "Arial";
    $font[1] = "Times";
    etc


    maar eingelijk wil ik $font['Arial'] = "Arial" etc.

    Weet iemand hoe ik dat simpel kan realiseren
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46344267
    quote:
    Op donderdag 15 februari 2007 19:39 schreef Swetsenegger het volgende:

    [..]

    mysql_real_escape_string
    En $id hoeft waarschijnlijk niet in tussen enkele quotes, want zal een integer bevatten en je variabelen buiten quotes plaatsen
    [ code verwijderd ]
    Toch zou ik $_GET['id'] ff met is_numeric checken, in case of
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 15 februari 2007 @ 20:44:20 #177
    12880 CraZaay
    prettig gestoord
    pi_46344452
    quote:
    Op donderdag 15 februari 2007 20:38 schreef Chandler het volgende:
    Minivraag

    met dit maak ik van een string een array
    [ code verwijderd ]

    echter krijg ik dan
    [ code verwijderd ]

    maar eingelijk wil ik $font['Arial'] = "Arial" etc.

    Weet iemand hoe ik dat simpel kan realiseren
    explode() en dan array_flip()? En anders even verder kijken dan je neus lang is en http://nl2.php.net/manual/en/ref.array.php eens lezen
    pi_46344885
    CraZaay, array_flip draait gegevens om... maar ik wil niet omdraaien, ik wil dat alle items in deze array dezelfde 'id' als value krijgen.. maar goed, dan maar een paar regels meer

    1
    2
    3
    4
    5
    $fnt = explode(",", FONTS);
        foreach ($fnt as $null => $font)
        {
            $fontArr[$font] = $font;
        }


    en heb die doc op php.net natuurlijk gelezen voordat ik hier ging posten
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 15 februari 2007 @ 21:01:07 #179
    12221 Tijn
    Powered by MS Paint
    pi_46345066
    Waarom zou je willen dat de key hetzelfde is als de value? Wat is dan nog het nut van ze beiden opslaan?
      FOK!-Schrikkelbaas donderdag 15 februari 2007 @ 21:03:34 #180
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46345164
    quote:
    Op donderdag 15 februari 2007 20:39 schreef Chandler het volgende:

    [..]

    Toch zou ik $_GET['id'] ff met is_numeric checken, in case of
    Die discussie is nu al 500 keer gevoerd en het algemene standpunt daarin is ALTIJD USER INPUT CONTROLEREN en dat standpunt blijf ik niet herhalen.

    Uiteraard ga je met is_numeric controleren, hoewel de grotste angel er met mysql_real_escape_STRING AL WEL UIT IS.
      donderdag 15 februari 2007 @ 21:19:26 #181
    12880 CraZaay
    prettig gestoord
    pi_46345767
    quote:
    Op donderdag 15 februari 2007 21:01 schreef Tijn het volgende:
    Waarom zou je willen dat de key hetzelfde is als de value? Wat is dan nog het nut van ze beiden opslaan?
    Dat heeft inderdaad geen enkel nut
      donderdag 15 februari 2007 @ 21:20:23 #182
    12880 CraZaay
    prettig gestoord
    pi_46345795
    quote:
    Op donderdag 15 februari 2007 21:03 schreef Swetsenegger het volgende:

    Uiteraard ga je met is_numeric controleren, hoewel de grotste angel er met mysql_real_escape_STRING AL WEL UIT IS.
    Maar aangezien die er volgens mij geen quotes omheen zet, moet je wel heel zeker weten dat het een integer is.
    pi_46346894
    quote:
    Op donderdag 15 februari 2007 21:03 schreef Swetsenegger het volgende:

    Uiteraard ga je met is_numeric controleren, hoewel de grotste angel er met mysql_real_escape_STRING AL WEL UIT IS.
    Waarom zou je een integer gaan behandelen als een string?

    Als ie de is_numeric passed betekend het toch dat je deze data kan gebruiken voor je SQL query. Al dan niet met een single quote char eromheen.

    mysql_real_escape_string lijkt me voor strings alleen, niet voor een integer.
      FOK!-Schrikkelbaas donderdag 15 februari 2007 @ 22:17:48 #184
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46348273
    quote:
    Op donderdag 15 februari 2007 21:45 schreef slakkie het volgende:

    [..]

    Waarom zou je een integer gaan behandelen als een string?

    Als ie de is_numeric passed betekend het toch dat je deze data kan gebruiken voor je SQL query. Al dan niet met een single quote char eromheen.

    mysql_real_escape_string lijkt me voor strings alleen, niet voor een integer.
    mysql_real_escape_string slasht quotes en voorkomt derhalve sqlinjection. Ook integers als string behandelen is een goed idee, als je eens een keer slipt met je userinput controlle zou er wel eens een 'tje in je 'integer' kunnen staan.
      donderdag 15 februari 2007 @ 23:11:38 #185
    12880 CraZaay
    prettig gestoord
    pi_46350519
    quote:
    Op donderdag 15 februari 2007 22:17 schreef Swetsenegger het volgende:

    [..]

    mysql_real_escape_string slasht quotes en voorkomt derhalve sqlinjection. Ook integers als string behandelen is een goed idee, als je eens een keer slipt met je userinput controlle zou er wel eens een 'tje in je 'integer' kunnen staan.
    Nee, dat kan er dus niet in staan als is_numeric() true is
    pi_46351408
    quote:
    Op donderdag 15 februari 2007 22:17 schreef Swetsenegger het volgende:

    [..]

    mysql_real_escape_string slasht quotes en voorkomt derhalve sqlinjection. Ook integers als string behandelen is een goed idee, als je eens een keer slipt met je userinput controlle zou er wel eens een 'tje in je 'integer' kunnen staan.
    Op zich is het ook een nadeel van mysql dat strings in een numeriek veld kunnen worden geplaatst.
    pi_46351436
    quote:
    Op dinsdag 13 februari 2007 08:50 schreef Xcalibur het volgende:
    voor alle regex mensen hier: weet iemand vanaf welke Linux / PHP versie de regex ook special characters kan matchen (ë / à / etc.). Ik had een Windows server met PHP 4.3.11 waar het werkte, maar nu ben ik over naar een Linux server met PHP 4.3.11, en daar werkt het niet

    Het gaat dus om regexen als: P{M} enzo

    Edit: ik krijg dus deze error: "Warning: preg_match(): Compilation failed: PCRE does not support L, l, N, P, p, U, u, or X"
    niemand die hier nog wat zinnigs over te zeggen heeft?
    pi_46351509
    quote:
    Op donderdag 15 februari 2007 22:17 schreef Swetsenegger het volgende:

    mysql_real_escape_string slasht quotes en voorkomt derhalve sqlinjection. Ook integers als string behandelen is een goed idee, als je eens een keer slipt met je userinput controlle zou er wel eens een 'tje in je 'integer' kunnen staan.
    Ik volg je niet echt..

    Ik zie de gehele reden voor de mysql_real_escape_string niet. Het is een integer, geen string. En zelfs al is het een string, dan heb je die mysql_real_escape_string niet nodig. Een input van '9 moet ie er zoiezo uitfilteren en op barfen, daar hoef je niet nog eens een \'9 van te maken. Dit is immers geen int.

    Ik zat ff te spelen met verschillende manier om te checken of iets een int is.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <?php
    $array 
    = array (
      
    9,
      
    '9',
      
    "9",
      
    "9.9",
      
    "9,9",
      
    "hello9",
      
    "hello world",
      
    "-9.0",
      
    "+99.0",
      
    "-9",
      
    "+9",
      
    "'+9'",
      
    "9.000001",
    );


    foreach (
    $array as $id) {

      echo 
    "$id\n";

      if (
    is_numeric($id) && (!is_float($id) && !is_string($id))) {
        echo 
    "is_nummeric and not float and not string\n";
      }

      if (
    ctype_digit($id)) {
        echo 
    "Is ctype_digit\n";
      }

      
    # -9.000 -9.0 -9 en zelfde voor + maar mag ook zonder ;)
      
    if (preg_match('/^[-+]?\s*d+([.,]0+)?\s*$/'$id)) {
        echo 
    "Is int - regexp\n";
      }
      echo 
    "\n";
    ?>


    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
    9
    is_nummeric and not float and not string
    Is int - regexp

    9
    Is ctype_digit
    Is int - regexp

    9
    Is ctype_digit
    Is int - regexp

    9.9

    9,9

    hello9

    hello world

    -9.0
    Is int - regexp

    +99.0
    Is int - regexp

    -9
    Is int - regexp

    +9
    Is int - regexp

    '+9'

    9.000001


    Zoals je kan zien, heb ik die hele mysql_real_escape_string niet nodig. Die is_numeric is mij te los qua wat ie als integer zit, ik zou hem iig daarvoor nooit gebruiken. Ik zou dus altijd met een regexp checken of het een integer is.

    Wellicht dat intval() ook nog gebruikt kan worden, ik heb ermee getest, maar die vind 9.9 ook een int, en daar ben ik het niet mee eens, dat is een double/float, en valt dus buiten de boot.
    pi_46357065
    Als ik met SQL queries werk, gebruik ik gewoon intval() voor integers en mysql_real_escape_string() voor strings.
    pi_46358195
    quote:
    Op donderdag 15 februari 2007 21:01 schreef Tijn het volgende:
    Waarom zou je willen dat de key hetzelfde is als de value? Wat is dan nog het nut van ze beiden opslaan?
    Zie quote CraZaay
    quote:
    Op donderdag 15 februari 2007 21:19 schreef CraZaay het volgende:
    Dat heeft inderdaad geen enkel nut
    Geheel fout!

    Mijn eigen geschreven parser werkt met values, in een database heb ik een veld waarin ik de naam van het font bewaar. dus niet een ID maar de NAAM!. Mijn parser kan on the fly een option select list maken van een array en tevens de 'geselecteerde' optie selectere aan de hand van de 'ID!' maar in dit geval is het dus geen id maar een 'variabel!'

    dus enigzinds onzinnig om een antwoord te geven op iets waarvan jullie nog niet weten waarvoor het gebruikt is / gaat worden
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 16 februari 2007 @ 17:08:45 #191
    37634 wobbel
    Da WoBBeL King
    pi_46372804
    Is er een bug in PHP 4.3.9 ofzo? (jaja, oude versie ik weet maar ze willen nietu pdaten in de productie omgeving )

    Als ik dit script heb:

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

    $_SESSION['SettleLand'] = 1;

    echo 
    $_SESSION['SettleLand']; // 1 in dit geval

    if ( $_SESSION['SettleLand'] == )
    {

        
    $SettleLand "Nederland"

    }
    elseif
    {

        
    $SettleLand "Belgiieeuuuuh";

    }

    echo 
    $SettleLand// Nederland in dit geval
    echo $_SESSION['SettleLand']; // is ook veranderd in Nederland en niet meer 1 !!!
    ?>


    Als ik $SettleLand zou renamen naar $HeleAndereVariable dan is 't probleem opgelost, maar in PHP 5.2.0 bestaat dit probleem niet namelijk....en in de changelogs kan ik (zo gauw) niks vinden.
    pi_46373042
    Controleer je php.ini eens of register_globals aan staat, die moet uitstaan en in php5 kun je die geloof ik niet eens meer aanzetten, dus dat zou het verklaren.

    register_globals zorgt ervoor dat je een global (session is dit geval) kunt gebruiken alsof het een normaal variable is, dus hij maakt van $_SESSION['SettleLand'] autoatisch al $SettleLand, en die is inderdaad "Nederland" geworden in jou script. Overigens raar dat $_SESSION['SettleLand'] ook nederland wordt maar vooruit, zal de andere kant ook wel zo op werken.
    -
      vrijdag 16 februari 2007 @ 17:17:12 #193
    37634 wobbel
    Da WoBBeL King
    pi_46373065
    quote:
    Op vrijdag 16 februari 2007 17:16 schreef splendor het volgende:
    Controleer je php.ini eens of register_globals aan staat, die moet uitstaan en in php5 kun je die geloof ik niet eens meer aanzetten, dus dat zou het verklaren.

    register_globals zorgt ervoor dat je een global (session is dit geval) kunt gebruiken alsof het een normaal variable is, dus hij maakt van $_SESSION['SettleLand'] autoatisch al $SettleLand, en die is inderdaad "Nederland" geworden in jou script. Overigens raar dat $_SESSION['SettleLand'] ook nederland wordt maar vooruit, zal de andere kant ook wel zo op werken.
    Verbaasde mij ook, want dit vond ik echt wel heel strange

    register_globals = On

    [ Bericht 3% gewijzigd door wobbel op 16-02-2007 17:27:11 (poep in m\'n hoofd) ]
    pi_46375294
    register_globals staat aan in een productieomgeving?
    da's wel heel slecht...
      FOK!-Schrikkelbaas vrijdag 16 februari 2007 @ 18:52:42 #195
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46375870
    quote:
    Op donderdag 15 februari 2007 23:31 schreef slakkie het volgende:

    [..]

    Ik volg je niet echt..

    Ik zie de gehele reden voor de mysql_real_escape_string niet. Het is een integer, geen string. En zelfs al is het een string, dan heb je die mysql_real_escape_string niet nodig. Een input van '9 moet ie er zoiezo uitfilteren en op barfen, daar hoef je niet nog eens een \'9 van te maken. Dit is immers geen int.

    Ik zat ff te spelen met verschillende manier om te checken of iets een int is.
    [ code verwijderd ]


    [ code verwijderd ]

    Zoals je kan zien, heb ik die hele mysql_real_escape_string niet nodig. Die is_numeric is mij te los qua wat ie als integer zit, ik zou hem iig daarvoor nooit gebruiken. Ik zou dus altijd met een regexp checken of het een integer is.

    Wellicht dat intval() ook nog gebruikt kan worden, ik heb ermee getest, maar die vind 9.9 ook een int, en daar ben ik het niet mee eens, dat is een double/float, en valt dus buiten de boot.
    Je gaat er maar vanuit dat je daadwerkelijk de userinput controleert. Zowel mysql als php zijn zo inconsistent als de tyfus met strings en integers, dus is 1 fuck-up voldoende om sql injection toe te staan.

    Ik begrijp jouw weerstand niet tegen een extra safety maatregel als mysql_real_escape_string. Zeker niet in toepassingen zoals de meeste hier maken waar performance geen groot issue is. Want eigenlijk is dat de enige reden die ik kan bedenken voor je aversie tegen een failback systeem

    Naast natuurlijk het feit dat je simpelweg userinput moet controleren.
      FOK!-Schrikkelbaas vrijdag 16 februari 2007 @ 18:53:56 #196
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46375905
    quote:
    Op donderdag 15 februari 2007 23:11 schreef CraZaay het volgende:

    [..]

    Nee, dat kan er dus niet in staan als is_numeric() true is
    quote:
    Op donderdag 15 februari 2007 22:17 schreef Swetsenegger het volgende:
    als je eens een keer slipt met je userinput controlle zou er wel eens een 'tje in je 'integer' kunnen staan.
    pi_46376460
    Is het misschien iets om voor iedereen hier een functie te schrijven die veilig met $_GET's omgaat?

    Ik wil wel een begin geven door mijn voorlopige functie hier neer te zetten, kan iemand anders hem uitbreiden en er over discussiëren tot we een goeie hebben. :)

    1
    2
    3
    4
    function filterGET($getValue) {
       $getValue = trim(htmlspecialchars($getValue));
       return $getValue;
    }


    Misschien een idee dat je aangeeft of het een int, string of beide moet/mag zijn en dat ie daar dan ook op controleert.
    -
      FOK!-Schrikkelbaas vrijdag 16 februari 2007 @ 20:08:02 #198
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46378534
    quote:
    Op vrijdag 16 februari 2007 19:10 schreef splendor het volgende:
    Is het misschien iets om voor iedereen hier een functie te schrijven die veilig met $_GET's omgaat?

    Ik wil wel een begin geven door mijn voorlopige functie hier neer te zetten, kan iemand anders hem uitbreiden en er over discussiëren tot we een goeie hebben.
    [ code verwijderd ]

    Misschien een idee dat je aangeeft of het een int, string of beide moet/mag zijn en dat ie daar dan ook op controleert.
    [php/mysql] SQL Injection, Maqic Quotes genoeg?
    http://www.phpfreakz.nl/artikelen.php?aid=106

    [ Bericht 8% gewijzigd door Swetsenegger op 16-02-2007 20:13:15 ]
      vrijdag 16 februari 2007 @ 20:12:31 #199
    159979 G.Fawkes
    Libera eas de ore leonis!
    pi_46378701
    Ik heb vandaag jinzora installeerd op mijn ubuntu server en hij doet het redelijk. twee foutmeldingen blijven verschijnen:

    1
    2
    3
    4
    5
    Warning: fopen(/var/www/mp3/temp/cache/ac00233293befcafae03b4e82ac8f134.html) [function.fopen]: failed to open stream: Permission denied in /var/www/mp3/frontend/display.php on line 138

    Warning: fwrite(): supplied argument is not a valid stream resource in /var/www/mp3/frontend/display.php on line 139

    Warning: fclose(): supplied argument is not a valid stream resource in /var/www/mp3/frontend/display.php on line 140


    en

    1
    2
    3
    4
    5
    Warning: fopen(/var/www/mp3/temp/cache/e6420d249144468d93a38591f933734d.html) [function.fopen]: failed to open stream: Permission denied in /var/www/mp3/frontend/display.php on line 138

    Warning: fwrite(): supplied argument is not a valid stream resource in /var/www/mp3/frontend/display.php on line 139

    Warning: fclose(): supplied argument is not a valid stream resource in /var/www/mp3/frontend/display.php on line 140


    Is er een bepaalde app die ik nog zou moeten installeren of dergelijke want hij zegt wel permission denied, maar chmod staat iig goed...
    pi_46380027
    -- edit: werkte wel, tiep fout --
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46383886
    quote:
    Op vrijdag 16 februari 2007 18:52 schreef Swetsenegger het volgende:

    Je gaat er maar vanuit dat je daadwerkelijk de userinput controleert. Zowel mysql als php zijn zo inconsistent als de tyfus met strings en integers, dus is 1 fuck-up voldoende om sql injection toe te staan.
    Ik neem niet aan dat de data al gevalideerd is. En in mijn check weet ik dat de data een integer is (in de regexp accepteerd ie ook doubles en floaters). Maar ik weet dat de data correct is en daarna alles met mijn data doen. Het is gechecked, alles wat ik daarna doe is op mijn conto en heeft dan niks meer te maken met users die SQL injection willen doen.

    GUI
    Check and sanatize data
    Do stuff with data and many more.

    Je hoeft in dat geval niet op meerdere plekken je data te valideren, dat is immers al gedaan. Je onderliggende klasses/functies hoeven dan alleen te checken of de input parameters goed zijn. Dwz, ik verwacht een string, en als ik dit niet krijg, error.
    quote:
    Ik begrijp jouw weerstand niet tegen een extra safety maatregel als mysql_real_escape_string. Zeker niet in toepassingen zoals de meeste hier maken waar performance geen groot issue is. Want eigenlijk is dat de enige reden die ik kan bedenken voor je aversie tegen een failback systeem
    Nee, ik begrijp je redenatie achter de safety maatregel. Ik snap alleen niet waarom je dit met een integer doet. Het is namelijk geen string. Dat is mijn enige commentaar.
      FOK!-Schrikkelbaas vrijdag 16 februari 2007 @ 22:41:40 #202
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46383976
    quote:
    Op vrijdag 16 februari 2007 22:38 schreef slakkie het volgende:

    [..]

    Ik neem niet aan dat de data al gevalideerd is. En in mijn check weet ik dat de data een integer is (in de regexp accepteerd ie ook doubles en floaters). Maar ik weet dat de data correct is en daarna alles met mijn data doen. Het is gechecked, alles wat ik daarna doe is op mijn conto en heeft dan niks meer te maken met users die SQL injection willen doen.
    Totdat er een keer niet gechecked is
    quote:
    Nee, ik begrijp je redenatie achter de safety maatregel. Ik snap alleen niet waarom je dit met een integer doet. Het is namelijk geen string. Dat is mijn enige commentaar.
    Tja, volgens php is $a="1" ook een integer, of probeert het in ieder geval als integer te parsen.
    pi_46384606
    quote:
    Op vrijdag 16 februari 2007 22:41 schreef Swetsenegger het volgende:
    Ja, als het niet gechecked wordt is er toch ergens een grove fout gemaakt - die er uitgehaald had moeten worden in de unit test of end-to-end test.

    $a = "1"; $a = intval($a); zou dit volgens mij moeten oplossen, daar heb je geen extra functie voor nodig.
    jij hebt een andere mening hierover dan ik. Laten we het daarbij houden. Heb zo'n idee dat we niet dichter bijelkaar gaan komen.
      FOK!-Schrikkelbaas vrijdag 16 februari 2007 @ 23:04:34 #204
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46384803
    quote:
    Op vrijdag 16 februari 2007 22:58 schreef slakkie het volgende:

    [..]

    Ja, als het niet gechecked wordt is er toch ergens een grove fout gemaakt - die er uitgehaald had moeten worden in de unit test of end-to-end test.

    $a = "1"; $a = intval($a); zou dit volgens mij moeten oplossen, daar heb je geen extra functie voor nodig.
    jij hebt een andere mening hierover dan ik. Laten we het daarbij houden. Heb zo'n idee dat we niet dichter bijelkaar gaan komen.
    We zitten al op 1 lijn. Je moet user input controleren. Maar het wordt wel eens vergeten he, zeker in work in progress. Dus wat is er erg om in elke query een mysql_real_escape_string op te nemen om slips op te vangen? Dat is alles wat ik zeg.

    Je blijft contine maar zeggen dat het niet nodig is als je userinput controleert. Maar dat riep ik al in mijn eerste post waar ik mysql_real_escape_string voorstelde, dus is de hele discussie blijkbaar nutteloos.
    pi_46384895
    quote:
    Op vrijdag 16 februari 2007 22:41 schreef Swetsenegger het volgende:

    Tja, volgens php is $a="1" ook een integer, of probeert het in ieder geval als integer te parsen.
    Ja, php is loosely typed. Dus na $a = "1"; $b = 2 + $a; is $b == 3. En na $a = "1"; $b = 2 . $a; is $b == "21";
    pi_46385141
    Voor het bovenstaande verhaal is een vrij simpele oplossing;
    + Zorg ervoor dat dat je variabelen van het juiste type zijn, eventueel door ze te casten.
    + Prepared statements.
    + Gooi je database vol met constraints.
    + Vang verkeerde user input op met een nette waarschuwing.

    Knappe jongen als je het dan nog weet te verklooien
    pi_46385431
    quote:
    Op vrijdag 16 februari 2007 23:15 schreef JeRa het volgende:
    Hier zijn we het allemaal mee eens denk ik
      vrijdag 16 februari 2007 @ 23:28:35 #208
    12221 Tijn
    Powered by MS Paint
    pi_46385474
    quote:
    Op vrijdag 16 februari 2007 23:15 schreef JeRa het volgende:

    + Vang verkeerde user input op met een nette waarschuwing.
    Ik ben persoonlijk meer fan van een doodsbedreiging en een flinke scheldpartij
      FOK!-Schrikkelbaas vrijdag 16 februari 2007 @ 23:30:15 #209
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46385519
    quote:
    Op vrijdag 16 februari 2007 23:28 schreef Tijn het volgende:

    [..]

    Ik ben persoonlijk meer fan van een doodsbedreiging en een flinke scheldpartij
    "Denk je GODVERDOMME dat ik een mongool ben ofzo met je kut injection!!!!"
    pi_46386943
    Zo had ik vroegâh een IP ban functie gemaakt op m'n site. Zodra je IP gebanned was kreeg je bij een poging m'n site te bekijken een paar popups die zichzelf weer gingen openen, en kreeg je de "You are an idiot" en "Hey everybody, I'm looking at gay porno!" Flash klassiekertjes voor je kiezen.
    pi_46391375
    quote:
    Op vrijdag 16 februari 2007 23:30 schreef Swetsenegger het volgende:

    [..]

    "Denk je GODVERDOMME dat ik een mongool ben ofzo met je kut injection!!!!"
    en dan is het gewoon een tiepfoutje zal die gebruiker raar op kijken
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zaterdag 17 februari 2007 @ 18:30:50 #212
    71919 wonderer
    Hung like a My Little Pony
    pi_46404447
    Is er een makkelijker manier om te controleren of een bepaald record al bestaat dan met een SELECT en daarna een if(mysql_num_rows($result)!=0)(UPDATE) else (INSERT)?
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
    pi_46404844
    quote:
    Op zaterdag 17 februari 2007 18:30 schreef wonderer het volgende:
    Is er een makkelijker manier om te controleren of een bepaald record al bestaat dan met een SELECT en daarna een if(mysql_num_rows($result)!=0)(UPDATE) else (INSERT)?
    INSERT ... ON DUPLICATE KEY UPDATE met een primary key?
    pi_46404914
    quote:
    Op zaterdag 17 februari 2007 18:30 schreef wonderer het volgende:
    Is er een makkelijker manier om te controleren of een bepaald record al bestaat dan met een SELECT en daarna een if(mysql_num_rows($result)!=0)(UPDATE) else (INSERT)?
    Na een Update of een Insert kun je met mysql_affected_rows() opvragen hoeveel rijen er zijn aangepast. Als dat 0 is dan kun je met de andere functie in de herkansing
    pi_46404944
    quote:
    Op zaterdag 17 februari 2007 18:48 schreef JeRa het volgende:

    [..]

    INSERT ... ON DUPLICATE KEY UPDATE met een primary key?
    Die is nog beter Maar pas beschikbaar vanaf MySQL 4.1.

    [ Bericht 5% gewijzigd door Light op 17-02-2007 18:53:59 (Nieuwe functie.) ]
      zaterdag 17 februari 2007 @ 18:57:26 #216
    71919 wonderer
    Hung like a My Little Pony
    pi_46405108
    quote:
    Op zaterdag 17 februari 2007 18:51 schreef Light het volgende:

    [..]

    Die is nog beter Maar pas beschikbaar vanaf MySQL 4.1.
    Mijn server draait 4.1.12 dus dat moet kunnen. Kun je in een tabel meer keys hebben? Ik heb nu de kolom "ID" als key maar ik wil zoeken op een ander veld.
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
    pi_46405176
    quote:
    Op zaterdag 17 februari 2007 18:57 schreef wonderer het volgende:

    [..]

    Mijn server draait 4.1.12 dus dat moet kunnen. Kun je in een tabel meer keys hebben? Ik heb nu de kolom "ID" als key maar ik wil zoeken op een ander veld.
    Dat kan, de ON DUPLICATE KEY clausule is geldig wanneer er een PRIMARY of UNIQUE key overtreden wordt, dus bij een nieuwe PK maar een al bestaande UNIQUE key gaat dat gewoon werken
      zaterdag 17 februari 2007 @ 19:06:11 #218
    71919 wonderer
    Hung like a My Little Pony
    pi_46405329
    Oh, bah, ik bedenk me net dat het een veel op veel relatie is... (karakters in verhalen. Een karakter kan in meerdere verhalen zitten en een verhaal kan meerdere karakters hebben). Dus UNIQUE gaat niet werken. Het moet de combinatie van karakter en verhaal zijn...

    Hm, nou ja, die on duplicate kan ik nog wel voor andere dingen gebruiken. Dus helemaal nutteloos was het niet
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
    pi_46405734
    quote:
    Op zaterdag 17 februari 2007 19:06 schreef wonderer het volgende:
    Oh, bah, ik bedenk me net dat het een veel op veel relatie is... (karakters in verhalen. Een karakter kan in meerdere verhalen zitten en een verhaal kan meerdere karakters hebben). Dus UNIQUE gaat niet werken. Het moet de combinatie van karakter en verhaal zijn...

    Hm, nou ja, die on duplicate kan ik nog wel voor andere dingen gebruiken. Dus helemaal nutteloos was het niet
    Je weet dat je een UNIQUE constraint ook op meerdere velden tegelijk kunt plaatsen? Dus, in jouw geval, een combinatie van karakter en verhaal?
    pi_46405762
    quote:
    Op zaterdag 17 februari 2007 19:06 schreef wonderer het volgende:
    Oh, bah, ik bedenk me net dat het een veel op veel relatie is... (karakters in verhalen. Een karakter kan in meerdere verhalen zitten en een verhaal kan meerdere karakters hebben). Dus UNIQUE gaat niet werken. Het moet de combinatie van karakter en verhaal zijn...

    Hm, nou ja, die on duplicate kan ik nog wel voor andere dingen gebruiken. Dus helemaal nutteloos was het niet
    Een key kan best op meer dan 1 veld slaan.
      zaterdag 17 februari 2007 @ 19:31:33 #221
    71919 wonderer
    Hung like a My Little Pony
    pi_46406059
    quote:
    Op zaterdag 17 februari 2007 19:20 schreef JeRa het volgende:

    [..]

    Je weet dat je een UNIQUE constraint ook op meerdere velden tegelijk kunt plaatsen? Dus, in jouw geval, een combinatie van karakter en verhaal?
    Nee? Leg uit

    Ik heb het nou trouwens veranderd naar een cvs-stukje in een veld dat ik dan bij het ophalen met explode kan doen en dan is het ook klaar. Maar vertel vooral over dat unique gedoe want het komt regelmatig terug.
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
    pi_46406455
    quote:
    Op zaterdag 17 februari 2007 19:31 schreef wonderer het volgende:

    [..]

    Nee? Leg uit

    Ik heb het nou trouwens veranderd naar een cvs-stukje in een veld dat ik dan bij het ophalen met explode kan doen en dan is het ook klaar. Maar vertel vooral over dat unique gedoe want het komt regelmatig terug.
    Je kunt een UNIQUE constraint leggen op één veld (UNIQUE(a)) of op meerdere velden (UNIQUE(a, b)). In dat geval mogen er geen twee records voorkomen waarbij a én b hetzelfde zijn dus dan zijn meerdere records met eenzelfde waarde voor veld a mogelijk, maar dan moet b wel verschillen.
      zaterdag 17 februari 2007 @ 19:55:35 #223
    71919 wonderer
    Hung like a My Little Pony
    pi_46406828
    Ooh, okee, dat doe je in de query en niet in de tabel zelf. Thanks.
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
    pi_46406956
    quote:
    Op zaterdag 17 februari 2007 19:55 schreef wonderer het volgende:
    Ooh, okee, dat doe je in de query en niet in de tabel zelf. Thanks.
    Als je het over die unique constraints hebt: die doe je wel in de tabel zelf
    pi_46412170
    quote:
    Op zaterdag 17 februari 2007 18:48 schreef JeRa het volgende:

    [..]

    INSERT ... ON DUPLICATE KEY UPDATE met een primary key?
    Dat lijkt heel erg op REPLACE. Heeft dat hetzelfde effect?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_46412412
    quote:
    Op zaterdag 17 februari 2007 22:36 schreef SuperRembo het volgende:

    [..]

    Dat lijkt heel erg op REPLACE. Heeft dat hetzelfde effect?
    Replace is eigenlijk een onding. Sowieso doet replace geen update. Als een waarde al bestaat dan wordt'ie doodleuk uit je database gegooid en er vervolgens opnieuw ingezet.
      zondag 18 februari 2007 @ 13:55:03 #227
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_46424104
    hoe kan je in 1 keer met de functie rename alle bestanden die bijvoorbeeld op *.txt eindigen wijzigen?
    Of bestanden die beginnen met een bepaalde tekst... heb '*' al geprobeerd, dat pakt i niet.
    pi_46428265
    Leuke opgave, ben even aan het knutselen geweest :)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    $thisdir
    = dir(getcwd());                                            
    $imagepatern = '.txt$';                                                    

    while((
    $file = $thisdir->read()) !== false) {                        
        if (
    eregi($imagepatern, $file)) {                                
        
        
        
    // Plaats hier de rename functie, met $file pak je het bestand
        
        
    }
    }
    ?>
    pi_46446767
    Kan ik htmlentities() ook weer omkeren?

    Edit: gevonden

    html_entity_decode()
    pi_46447671
    WTF..

    Ik post een formulier naar een andere pagina.
    Als ik echter niets invul, dan zou ie dit moeten doen:
    1
    2
    3
    4
    5
    6
    <?php
    if ($post == "")
    {
        
    $post = "leeg bericht..";
    }
    ?>

    Echter, hij vervangt hierbij de waarde $post dus niet, en het resultaat blijft leeg.


    In dit geval:
    1
    2
    3
    4
    5
    6
    <?php
    if ($post == "bla")
    {
        
    $post = "je typte bla..";
    }
    ?>

    Werkt het wel, als ik bla invoer..

    Hoe kan dit nou?
    pi_46447709
    Probeer eens
    1
    2
    3
    4
    5
    <?php
    if (empty($post)){
    ...
    }
    ?>
    pi_46447747
    Hmm ook niet.. Maar ik heb het nu wel op een andere manier werkend gekregen.
    Of naja.. Geen andere manier, maar door de check eerder in het script uit te laten voeren..

    Toch bedankt!
      maandag 19 februari 2007 @ 02:04:16 #233
    71919 wonderer
    Hung like a My Little Pony
    pi_46447950
    -lamaar-

    [ Bericht 96% gewijzigd door wonderer op 19-02-2007 02:27:43 ]
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
      maandag 19 februari 2007 @ 10:46:35 #234
    37634 wobbel
    Da WoBBeL King
    pi_46451503
    Ik had het al een keer gevraagd, maar kwam er niet echt uit

    Ik heb meerdere producten in een tabel ( in dit geval 3 stuks ) maar nu wil ik dat je de volgorde kan aanpassen. Dat ik bijv. op kolom "Rank" kan sorteren op ASC/DESC bijv.

    Als ik bij de GH2138 op het pijltje omhoog doe dat de GH2138 op nr 2 komt en de GH2122 1tje naar beneden gaat, maar hoe laat ik dat nou mooi werken met PHP en MySQL?

    pi_46451961
    Ik vermoed dat je een rang veld moet toevoegen in je DB.

    GH2108 = 1
    HG2122 = 2
    GH2138 = 3

    Als je op dat pijltje klikt moet je dat veld updaten, en van 3 -> 2 maken, en van 2 -> 3 maken.
      maandag 19 februari 2007 @ 11:11:00 #236
    37634 wobbel
    Da WoBBeL King
    pi_46452090
    quote:
    Op maandag 19 februari 2007 11:05 schreef Siegfried het volgende:
    Ik vermoed dat je een rang veld moet toevoegen in je DB.

    GH2108 = 1
    HG2122 = 2
    GH2138 = 3

    Als je op dat pijltje klikt moet je dat veld updaten, en van 3 -> 2 maken, en van 2 -> 3 maken.
    Krijg ik dan geen problemen als ik bijv. enkele producten verwijder en dan later wil updaten mbv rangs? Dan zou je in sommige gevallen wel + 10 moeten doen....of als ik een product verwijder alle BOVENLIGGENDE (dus hoger dan de rank van het verwijderde product) - 1


    "Als je op dat pijltje klikt moet je dat veld updaten, en van 3 -> 2 maken, en van 2 -> 3 maken. "

    Jah heel leuk, ik kan bij 1 veld wel 2 + 1 = 3 doen, maar hoe moet ik dan die 3 - 1 doen? Gewoon 2 + 1 = 3, dan zoeken waar RANG 3 is en daar - 1?

    En als ik een product toevoeg, moet ik de hoogste rang pakken en daar + 1 he?
    pi_46452411
    Twee producten kunnen toch ook dezelfde rang hebben? Dan sorteer je simpelweg verder op naam
      maandag 19 februari 2007 @ 11:32:47 #238
    85919 Likkende_Lassie
    Doe eens wat aan je ondertitel
    pi_46452629
    quote:
    Op zondag 18 februari 2007 15:42 schreef Geqxon het volgende:
    Leuke opgave, ben even aan het knutselen geweest
    [ code verwijderd ]
    Thanks! (vanwaar die '$' in de string imagepatern? )
    Wat als ik nou alles wil renamen / zien wat begint met iets?

    Edit, nevermind, logisch, gewoon dat in imagepatern zetten...deed ik net ook maar had spelfoutje gemaakt, vandaar
    pi_46452670
    quote:
    Op maandag 19 februari 2007 11:11 schreef wobbel het volgende:

    Jah heel leuk, ik kan bij 1 veld wel 2 + 1 = 3 doen, maar hoe moet ik dan die 3 - 1 doen? Gewoon 2 + 1 = 3, dan zoeken waar RANG 3 is en daar - 1?

    En als ik een product toevoeg, moet ik de hoogste rang pakken en daar + 1 he?
    Uh, nee.. Gewoon:
    UPDATE `tabel` SET `rang` = '3' WHERE `id` = 'GH2122 ' LIMIT 1
    UPDATE `tabel` SET `rang` = '2' WHERE `id` = 'GH2138' LIMIT 1

    Lijkt mij
    pi_46452680
    quote:
    Op maandag 19 februari 2007 10:46 schreef wobbel het volgende:
    Ik had het al een keer gevraagd, maar kwam er niet echt uit

    Ik heb meerdere producten in een tabel ( in dit geval 3 stuks ) maar nu wil ik dat je de volgorde kan aanpassen. Dat ik bijv. op kolom "Rank" kan sorteren op ASC/DESC bijv.

    Als ik bij de GH2138 op het pijltje omhoog doe dat de GH2138 op nr 2 komt en de GH2122 1tje naar beneden gaat, maar hoe laat ik dat nou mooi werken met PHP en MySQL?

    [afbeelding]
    Hou zoals eerder gezegd een rang of positie bij:
    PK=45, pos=1
    PK=63, pos=2
    PK=19, pos=3

    Stel, je wilt PK=45 naar beneden schuiven. Dan doe je dit als volgt:
    1) Haal de positie van PK=45 op (pos1 = 1)
    2) Haal de PK van pos2 = pos1 + 1 op (PK = 63)
    3) Zet de positie van PK=45 op (pos1 + 1) (pos1 = 2)
    4) Zet de positie van PK=63 op pos1 (pos2 = 1)

    Kortom, je hebt primary of unique keys nodig . Overigens, een slimme truuk: als je een item een plek naar boven wilt opschuiven, dan is dit hetzelfde als het item erboven naar beneden te brengen.

    Verder wil je er misschien voor zorgen dat je deze twee stappen hebt:
    0) LOCK TABLES ...
    ...
    5) UNLOCK TABLES

    Om te voorkomen dat er meerdere mensen tegelijk de rangen gaan aanpassen en dat 't kapot gaat
    pi_46452719
    quote:
    Op maandag 19 februari 2007 11:32 schreef Likkende_Lassie het volgende:

    [..]

    Thanks! (vanwaar die '$' in de string imagepatern? )
    Wat als ik nou alles wil renamen / zien wat begint met iets?
    Het dollarteken in de string is puur dat het op .txt moet eindigen. Zo uit mijn roestige hersenpan is het volgens mij zo dat als het ergens mee moet beginnen, dat het dollarteken dan aan het begin moet.
    pi_46453217
    quote:
    Op maandag 19 februari 2007 11:36 schreef Geqxon het volgende:

    [..]

    Het dollarteken in de string is puur dat het op .txt moet eindigen. Zo uit mijn roestige hersenpan is het volgens mij zo dat als het ergens mee moet beginnen, dat het dollarteken dan aan het begin moet.
    Nee, dakje ^ is op het begin van de string, $ op het eind.
    pi_46453252
    quote:
    Op maandag 19 februari 2007 11:56 schreef JeRa het volgende:

    [..]

    Nee, dakje ^ is op het begin van de string, $ op het eind.
    Je hebt helemaal gelijk, ik was net bezig mijn stoffige schoolboeken over regular expressions er op na te slaan.
    pi_46453648
    quote:
    Op maandag 19 februari 2007 10:46 schreef wobbel het volgende:
    Ik had het al een keer gevraagd, maar kwam er niet echt uit

    Ik heb meerdere producten in een tabel ( in dit geval 3 stuks ) maar nu wil ik dat je de volgorde kan aanpassen. Dat ik bijv. op kolom "Rank" kan sorteren op ASC/DESC bijv.

    Als ik bij de GH2138 op het pijltje omhoog doe dat de GH2138 op nr 2 komt en de GH2122 1tje naar beneden gaat, maar hoe laat ik dat nou mooi werken met PHP en MySQL?

    [afbeelding]
    ik voeg altijd een veld 'ORDER' toe, waarbij ieder record een waarde krijgt met een meervoud van 10. Dus 10 / 20 / 30 / 40. Als je dan een record verplaatst doe je die ORDER + 11 (of -11), zodat hij voorbij de de volgende komt. Daarna update je in een loop *alle* records in de tabel zodat ze weer netjes een waarde met een veelvoud van 10 hebben
    pi_46453753
    Hoi.
    Ik heb een textdocumentje waar ik wat data uit wil halen, en daar wil ik wat mee gaan doen.
    Het textdocumentje staat gewoon op de server, in dezelfde dir als m'n PHP bestand.

    Hoe heet dat wat ik wil gaan doen, ik wil gaan zoeken op php.net maar heb geen idee op wat voor commando oid ik moet zoeken .
      maandag 19 februari 2007 @ 12:22:37 #246
    12221 Tijn
    Powered by MS Paint
    pi_46453826
    Je zou bijvoorbeeld fopen() kunnen gebruiken, veldmuis.
    pi_46454109
    quote:
    Op maandag 19 februari 2007 12:22 schreef Tijn het volgende:
    Je zou bijvoorbeeld fopen() kunnen gebruiken, veldmuis.
    Tnx, ben wat verder nu idd!
    Alleen nu komt het: in het document staat wat data
    waarde1: de inhoud van waarde 1
    etc.

    De inhoud is altijd van een variabele lengte, maar wordt wel afgesloten door een </p>
    Die </p> zou ik dus als eind kunnen pakken, en dat 'waarde1:' als beginding. Maar hoe lees ik nou de waarde die daartussen staat uit?

    fgets en fread lijken niet de oplossing als ik het zo zie op php.net?
      maandag 19 februari 2007 @ 12:36:59 #248
    12221 Tijn
    Powered by MS Paint
    pi_46454189
    Nou, je zou met fgets() wel de regel kunnen uitlezen en dan die regel door een sjieke reguliere expressie halen om je data eruit te filteren.

    Hoe dat zit met die reguliere expressie moet je maar even aan iemand anders vragen, daar ben ik niet zo handig in
    pi_46454203
    quote:
    Op maandag 19 februari 2007 12:33 schreef veldmuis het volgende:

    [..]

    fgets en fread lijken niet de oplossing als ik het zo zie op php.net?
    Jawel, met die twee functies kun je een bestand inlezen en voor de rest is het pure string manipulatie

    Het simpelst is strpos() gebruiken om de positie van substrings in strings te vinden
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 12:48:11 #250
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46454468
    quote:
    Op maandag 19 februari 2007 12:36 schreef Tijn het volgende:
    Nou, je zou met fgets() wel de regel kunnen uitlezen en dan die regel door een sjieke reguliere expressie halen om je data eruit te filteren.

    Hoe dat zit met die reguliere expressie moet je maar even aan iemand anders vragen, daar ben ik niet zo handig in :@
    1
    2
    3
    4
    5
    <?php
    $patern
    ="#waarde1(.*?)</p>#i"
    preg_replace($patern,$string,$match);
    echo 
    $match[1];
    ?>


    niet getest
      maandag 19 februari 2007 @ 12:48:14 #251
    37634 wobbel
    Da WoBBeL King
    pi_46454469
    quote:
    Op maandag 19 februari 2007 11:34 schreef Siegfried het volgende:

    [..]

    Uh, nee.. Gewoon:
    UPDATE `tabel` SET `rang` = '3' WHERE `id` = 'GH2122 ' LIMIT 1
    UPDATE `tabel` SET `rang` = '2' WHERE `id` = 'GH2138' LIMIT 1

    Lijkt mij
    dat gaat dus helemaal niet werken, want als ik bij 1 product rank + 1 doe, hoe weet ik dan welk product er dan 1 af moet?

    Maargoed, het werkt nu prima
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 12:51:10 #252
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46454534
    Ow kijk ook naar file en file_get_contents. Vind ik persoonlijk altijd eenvoudiger dan fread
    pi_46454575
    Ik zou toch graag een iets hardere schop in de goeie richting willen .

    Van stringmanipulatie en reguliere expressies snap ik niets .

    Als ik nou de inhoud tussen Waarde1: en </P> zou willen uitlezen, hoe doe ik dat dan? .
    pi_46454619
    quote:
    Op maandag 19 februari 2007 12:53 schreef veldmuis het volgende:
    Ik zou toch graag een iets hardere schop in de goeie richting willen :P.

    Van stringmanipulatie en reguliere expressies snap ik niets :@.

    Als ik nou de inhoud tussen Waarde1: en </P> zou willen uitlezen, hoe doe ik dat dan? :@.
    1
    2
    3
    4
    5
    6
    <?php
    $inhoud 
    file_get_contents('bestandsnaam');
    $matches = array();
    preg_match('#^Waarde1:(.*)</P>#Ui'$inhoud$matches);
    echo 
    $matches[1];
    ?>
    pi_46454836
    Dank allen! Ik ga verder proberen!
    Nou ben ik alleen nog nieuwsgierig wat de [1] achter $matches/$match doet?
    pi_46454883
    quote:
    Op maandag 19 februari 2007 13:04 schreef veldmuis het volgende:
    Dank allen! Ik ga verder proberen!
    Nou ben ik alleen nog nieuwsgierig wat de [1] achter $matches/$match doet?
    $matches is in eerste instantie een lege array maar wordt gevuld met strings door de functie preg_match(). Daarna is $matches[1] gelijk aan de eerste subset in de regular expression in preg_match() (als je dat niet snapt maakt het niet uit ). $matches[1] is dus de string op 'positie 1' in de array (positie 0 bevat de gematchde string).
    pi_46454907
    $matches is een array, en in het voorbeeldje hierboven word die array aangevuld door de preg_match() functie. Waardes in een array() worden aangeroepen door $array_naam[0], $array_naam[1], $array_naam[2], enz.
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 13:08:40 #258
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46454936
    quote:
    Op maandag 19 februari 2007 12:55 schreef JeRa het volgende:

    [..]
    [ code verwijderd ]
    ^waarde1: betekent toch dat de string daarmee begint?
    pi_46454993
    quote:
    Op maandag 19 februari 2007 13:08 schreef Swetsenegger het volgende:

    [..]

    ^waarde1: betekent toch dat de string daarmee begint?
    Zou dat dan geen [0] moeten zijn?
    pi_46455032
    quote:
    Op maandag 19 februari 2007 13:08 schreef Swetsenegger het volgende:

    [..]

    ^waarde1: betekent toch dat de string daarmee begint?
    Mjah, als test. Maar als hij ook waarde2, waarde3 etc wil matchen moet er toch een andere expression komen
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 13:14:32 #261
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46455083
    quote:
    Op maandag 19 februari 2007 13:12 schreef JeRa het volgende:

    [..]

    Mjah, als test. Maar als hij ook waarde2, waarde3 etc wil matchen moet er toch een andere expression komen
    Maar het betekent toch ook dat de string er zo uit moet zien: "Waarde1:....." Op het moment dat de string niet met Waarde1 begint matched hij toch niet? dus de ^ moet toch gewoon weg?
    pi_46455098
    "Call to undefined function preg_match()"
    Betekent dat dat m'n PHP de preg_match() niet ondersteunt of dat ik gewoon iets fout doe in de code? .
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 13:16:38 #263
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46455134
    quote:
    Op maandag 19 februari 2007 13:15 schreef veldmuis het volgende:
    "Call to undefined function preg_match()"
    Betekent dat dat m'n PHP de preg_match() niet ondersteunt of dat ik gewoon iets fout doe in de code? .
    1
    2
    3
    preg_match

    (PHP 3 >= 3.0.9, PHP 4, PHP 5)

    Dan zou je php versie onder 3.0.9 moeten liggen en DAT lijkt me niet.
    pi_46455156
    PHP Version 5.0.5, maar het zou zomaar kunnen dat het een ERG beperkte PHP is.
      maandag 19 februari 2007 @ 13:18:00 #265
    12880 CraZaay
    prettig gestoord
    pi_46455163
    quote:
    Op maandag 19 februari 2007 13:15 schreef veldmuis het volgende:
    "Call to undefined function preg_match()"
    Betekent dat dat m'n PHP de preg_match() niet ondersteunt of dat ik gewoon iets fout doe in de code? .
    Je zou denken dat eerste, maar het lijkt me sterk dat je met PHP 3 bezig bent
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 13:19:18 #266
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46455189
    quote:
    Op maandag 19 februari 2007 13:17 schreef veldmuis het volgende:
    PHP Version 5.0.5, maar het zou zomaar kunnen dat het een ERG beperkte PHP is.
    quote:
    Afhankelijkheden

    Deze functies zijn beschikbaar als onderdeel van de standaard module die altijd beschikbaar is.
    bron
    Post je code eens dan.
      maandag 19 februari 2007 @ 13:23:01 #267
    46383 Tiemie
    sowieso wel!
    pi_46455269
    quote:
    Op maandag 19 februari 2007 13:16 schreef Swetsenegger het volgende:

    [..]
    [ code verwijderd ]

    Dan zou je php versie onder 3.0.9 moeten liggen en DAT lijkt me niet.
    Of het is om een wazige reden zonder pcre gecompiled .

    --without-pcre-regex
    pi_46455325
    quote:
    Op maandag 19 februari 2007 13:23 schreef Tiemie het volgende:

    [..]

    Of het is om een wazige reden zonder pcre gecompiled .

    --without-pcre-regex
    Dat zou eventueel kunnen, voor de size-obsessed compileerders onder ons die denken genoeg te hebben aan de ereg_*-functies
    pi_46455351
    quote:
    Op maandag 19 februari 2007 13:19 schreef Swetsenegger het volgende:

    [..]


    [..]

    Post je code eens dan.
    Ik heb deze gepakt:
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    #!/usr/bin/php

    $inhoud = file_get_contents('test');
    $matches = array();
    preg_match('#^Waar:(.*)</P>#Ui', $inhoud, $matches);
    echo
    $matches[1];
    ?>
    quote:
    Op maandag 19 februari 2007 13:23 schreef Tiemie het volgende:

    [..]

    Of het is om een wazige reden zonder pcre gecompiled :{ .

    --without-pcre-regex
    Ow, dan is dat het. De reden is ruimtegebrek. Gok ik.
    pi_46455373
    quote:
    Op maandag 19 februari 2007 13:25 schreef JeRa het volgende:

    [..]

    Dat zou eventueel kunnen, voor de size-obsessed compileerders onder ons die denken genoeg te hebben aan de ereg_*-functies
    Is het daarmee te doen? .
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 13:32:13 #271
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46455497
    quote:
    Op maandag 19 februari 2007 13:27 schreef veldmuis het volgende:

    [..]

    Is het daarmee te doen? .
    http://nl2.php.net/manual/nl/function.ereg.php
    Volgens mij de preg_match alleen vervangen door ereg als ik de manual even snel scan.
    pi_46455607
    Ik heb 'm als module erin geduwt, en dat lijkt te werken! !
      maandag 19 februari 2007 @ 13:36:08 #273
    37634 wobbel
    Da WoBBeL King
    pi_46455610
    Kan ik ook een join doen in een delete?

    Dus dat ik gegevens verwijder uit 2 tabellen die een relatie met elkaar hebben dmv ID?
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 13:36:38 #274
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46455628
    quote:
    Op maandag 19 februari 2007 13:36 schreef wobbel het volgende:
    Kan ik ook een join doen in een delete?

    Dus dat ik gegevens verwijder uit 2 tabellen die een relatie met elkaar hebben dmv ID?
    Ja dat kan
    pi_46455883
    quote:
    Op maandag 19 februari 2007 13:36 schreef Swetsenegger het volgende:

    [..]

    Ja dat kan
    MySQL en subqueries? Ik leer telkens wat nieuws hier
    pi_46455911
    quote:
    Op maandag 19 februari 2007 13:45 schreef Geqxon het volgende:

    [..]

    MySQL en subqueries? Ik leer telkens wat nieuws hier
    Subqueries worden al erg lang door MySQL ondersteund, maar met een DELETE is het gewoon een simpele JOIN
    pi_46456130
    quote:
    Op maandag 19 februari 2007 13:46 schreef JeRa het volgende:

    [..]

    Subqueries worden al erg lang door MySQL ondersteund, maar met een DELETE is het gewoon een simpele JOIN
    Ik heb mijzelf in 2004/2005 MySQL aangeleerd, en één van de grote punten was de slechte support voor subqueries. Maar zoals ik al zei: Ik leer hier constant
      maandag 19 februari 2007 @ 13:58:53 #278
    37634 wobbel
    Da WoBBeL King
    pi_46456306
    quote:
    Op maandag 19 februari 2007 13:36 schreef Swetsenegger het volgende:

    [..]

    Ja dat kan
    Zo dus:

    1
    2
    3
    4
    5
    DELETE
    FROM SHOP_Products
    INNER JOIN SHOP_Products_Lang
    ON ( SHOP_Products_Lang.ProductId = SHOP_Products.IdProduct ) 
    WHERE SHOP_Products.SubcategoryId = '" . $SQL_SID . "'
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 14:01:08 #279
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46456370
    quote:
    Op maandag 19 februari 2007 13:58 schreef wobbel het volgende:

    [..]

    Zo dus:
    [ code verwijderd ]
    Precies. Probeer het eerst uit met SELECT FROM <rest van je query> en als dat werkt gewoon je SELECT FROM vervangen door delete
    pi_46456403
    Overigens, in sommige andere RDBMS'en wordt het bovenstaande gedaan door foreign key constraints met een ON DELETE-clausule een ON DELETE CASCADE zorgt er dan voor dat wanneer je een record verwijdert waarna andere records verwijzen, dat dan die andere records ook worden verwijderd. Erg handig als je de database-inhoud consistent wilt houden PostgreSQL is een goede open source RDBMS die zoiets doet (maar ook de grotere commerciële varianten).
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 14:08:05 #281
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46456561
    quote:
    Op maandag 19 februari 2007 14:02 schreef JeRa het volgende:
    Overigens, in sommige andere RDBMS'en wordt het bovenstaande gedaan door foreign key constraints met een ON DELETE-clausule een ON DELETE CASCADE zorgt er dan voor dat wanneer je een record verwijdert waarna andere records verwijzen, dat dan die andere records ook worden verwijderd. Erg handig als je de database-inhoud consistent wilt houden PostgreSQL is een goede open source RDBMS die zoiets doet (maar ook de grotere commerciële varianten).
    Interbase (firebird) doet dat ook begreep ik
    pi_46456588
    quote:
    Op maandag 19 februari 2007 12:55 schreef JeRa het volgende:

    [..]


    1
    2
    3
    4
    5
    6
    <?php
    $inhoud 
    file_get_contents('bestandsnaam');
    $matches = array();
    preg_match('#^Waarde1:(.*)</P>#Ui'$inhoud$matches);
    echo 
    $matches[1];
    ?>
    Werkt inderdaad...MAAR!
    Er staat nog crap voor Waarde1:, hoe zorg ik dat-ie die crap negeert? :+.
    pi_46456605
    Oh, en er komt ook nog een waarde2 achteraan, na weer wat crap .
    pi_46456775
    Een verkapte UTFS post:

    http://weblogtoolscollection.com/regex/regex.php

    Staat al weer maanden tussen mijn bookmarks, een erg handig overzicht
    pi_46456806
    Dank, ik ga lezen!
      maandag 19 februari 2007 @ 14:20:55 #286
    37634 wobbel
    Da WoBBeL King
    pi_46456896
    Betreffende query: DELETE FROM SHOP_Products INNER JOIN SHOP_Products_Lang ON ( SHOP_Products.IdProduct = SHOP_Products_Lang.ProductId ) WHERE SHOP_Products.SubcategoryId = '1'

    MySQL error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN SHOP_Products_Lang ON ( SHOP_Products.IdProduct = ' at line 3

      maandag 19 februari 2007 @ 14:27:11 #287
    37634 wobbel
    Da WoBBeL King
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 14:30:48 #288
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46457185
    quote:
    Op maandag 19 februari 2007 14:20 schreef wobbel het volgende:
    Betreffende query: DELETE FROM SHOP_Products INNER JOIN SHOP_Products_Lang ON ( SHOP_Products.IdProduct = SHOP_Products_Lang.ProductId ) WHERE SHOP_Products.SubcategoryId = '1'

    MySQL error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN SHOP_Products_Lang ON ( SHOP_Products.IdProduct = ' at line 3

    Vreemd, zou gewoon moeten werken. Geen komma's quotes of andere ongein verkeerd?

    http://www.electrictoolbox.com/article/mysql/cross-table-delete/
    pi_46457554
    Er zit een verschil in aanroep. In Swetsenegger's voorbeeld wordt er DELETE tabel1.*, tabel2.* FROM ... gedaan
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 14:47:22 #290
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46457691
    quote:
    Op maandag 19 februari 2007 14:43 schreef JeRa het volgende:
    Er zit een verschil in aanroep. In Swetsenegger's voorbeeld wordt er DELETE tabel1.*, tabel2.* FROM ... gedaan
    Inderdaad.
    Maar zelf delete ik ergens in een script ook met een join en heb ik volgens mij hetzelfde gedaan als Wobbel in eerste instantie....Maar kan ook een leftjoin zijn...Ik zal vanavond even kijken.
    pi_46459771
    Ik kom er nog niet helemaal uit met die regex. Ben al wat wijzer geworden, maar nu...
    Ik heb nu
    1preg_match('/Waarde1:(.*)</', $inhoud, $matches);

    De waarde komt er nu uit, maar er komt ook een </P> mee. Hoe fix ik dat nu?

    Edit: Kut, dat was een nieuwe regel. Het begin pakt-ie goed op, het eind niet. Betekent dat ik weer aan de gang kan, weet ik waar het fout gaat .

    [ Bericht 11% gewijzigd door veldmuis op 19-02-2007 16:01:04 ]
    pi_46460784
    Hmm, ben eruit intussen.

    Ik begrijp dat je moet escapen, maar wat is nou het verschil tussen / en #?
    Ik las overal / maar jullie gaven in jullie voorbeeld # aan, en dat werkt dus wel.
    pi_46462565
    Okay, andere vraag.

    dmv een shell_exec haal ik met wget het bestand op waar ik de data uit wil halen, dat gaat prima, maar daardoor krijg ik allemaal bagger in de pagina. Kan ik de output die wget geeft ergens anders heen sturen zodat het niet op m'n scherm komt?
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 17:32:37 #294
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46462744
    quote:
    Op maandag 19 februari 2007 16:29 schreef veldmuis het volgende:
    Hmm, ben eruit intussen.

    Ik begrijp dat je moet escapen, maar wat is nou het verschil tussen / en #?
    Ik las overal / maar jullie gaven in jullie voorbeeld # aan, en dat werkt dus wel.
    die # is alleen start patroon, mag bijna elk teken zijn
      FOK!-Schrikkelbaas maandag 19 februari 2007 @ 17:33:42 #295
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46462780
    quote:
    Op maandag 19 februari 2007 17:26 schreef veldmuis het volgende:
    Okay, andere vraag.

    dmv een shell_exec haal ik met wget het bestand op waar ik de data uit wil halen, dat gaat prima, maar daardoor krijg ik allemaal bagger in de pagina. Kan ik de output die wget geeft ergens anders heen sturen zodat het niet op m'n scherm komt?
    eh... niet de zooi parsen maar bewerken?
    pi_46464366
    Eh, geen idee? Hoe doe je dat? .
    pi_46465010
    veldmuis: wget -q "http://forum.fok.nl"
    pi_46465077
    Niet eens aan gedacht, natuurlijk! Thanks!
      dinsdag 20 februari 2007 @ 00:00:00 #299
    71919 wonderer
    Hung like a My Little Pony
    pi_46478181
    Als ik een lange tekst heb (7000 woorden of zo) en ik wil alleen de eerste pakweg 250 woorden laten zien, hoe kan ik dat het beste aanpakken? explode lijkt me een beetje omslachtig...
    "Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
    "My brain is too smart for me."
    "We don't need no education." "Yes you do, you just used a double negative."
    pi_46478552
    Denk zoiets als dit:
    http://nl2.php.net/manual/nl/function.chunk-split.php

    Eerste comment laat precies zien wat jij wilt.
    pi_46478584
    substr()

    Of anders in je opslag/database bijvoorbeeld een veld voor het intro stukje (1 of 2 eerste allinea's) en een veld voor de rest.
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')