FOK!forum / Digital Corner / [PHP/(My)SQL] voor dummies - Deel 16
the_disheaverzaterdag 26 november 2005 @ 23:36

cd niet bijgeleverd

Vorige delen:
[PHP] voor dummies - Deel 1
[PHP] voor dummies - Deel 2
[PHP] voor dummies - Deel 3
[PHP] voor dummies - Deel 4
[PHP] voor dummies - Deel 5
[PHP/(My)SQL] voor dummies - Deel 6
[PHP/(My)SQL] voor dummies - Deel 7
[PHP/(My)SQL] voor dummies - Deel 8
[PHP/(My)SQL] voor dummies - Deel 9
[PHP/(My)SQL] voor dummies - Deel 10
[PHP/(My)SQL] voor dummies - Deel 11
[PHP/(My)SQL] voor dummies - Deel 12
[PHP/(My)SQL] voor dummies - Deel 13
[PHP/(My)SQL] voor dummies - Deel 14
[PHP/(My)SQL] voor dummies - Deel 15

Zie ook:
  • PHP Dataverwerking
  • Officiële PHP website
  • PHP Documentatie
  • MySQL Reference Manual
  • Yet Another PHP Faq

    Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP
  • the_disheaverzaterdag 26 november 2005 @ 23:37
    quote:
    Op zaterdag 26 november 2005 23:35 schreef Tokus het volgende:
    puntkomma's vergeten?
    Waar dan?
    Swetseneggerzaterdag 26 november 2005 @ 23:43
    Inderdaad staan er geen ; na een if.
    Ik zie even niet waar het misgaat in deze code MaW. Weet je zeker dat op de pagina welke de login checked de functie ook geinclude is?

    Zoiets triviaals moet het haast wel zijn.
    morpheus_at_workzaterdag 26 november 2005 @ 23:49
    dat punt kommatje maakte in dit geval even niet uit ,

    ik heb de include even checkt en even vervangen door require , maakte niet niets uit

    ik ben nu zelfs met het echoën van de functie de inhoudhoud kwijt , maar hij weet wel dat het 4 of 6 posities is

    gewoon met een simpele <?=functienaam(); ?>

    als ik gewoon keihard zeg van $checklogin = 'Waar'; en daarop een check doe dan is alles oke


    de functie die ik gebruik is de volgende

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <? 
    function check_login() 

        $bLogin='Onwaar'; 

        if(empty($_SESSION['ingelogd'])) 
        
       { 
            //niet aangemeld volgens sessie, wel volgens db? 
            if(isset($_COOKIE['user_id']))
        { $bLogin='Waar'; 
          
          //de sessie gegevens schrijven 
            $_SESSION['ingelogd']=TRUE; 
            $_SESSION['user_id']=$_COOKIE['user_id']; 

          //cookies setten voor 7dagen 
            setcookie('validate',$sValidate,time()+60*60*24*7,'/','www.vkdev.nl'); 
            setcookie('user_id',$_SESSION['user_id'],time()+60*60*24*7,'/','www.vkdev.nl'); 

            return $bLogin; 
        } else 
        { return $bLogin; } 
        }
    }
    ?> 
    the_disheaverzaterdag 26 november 2005 @ 23:49
    Dat is makkelijkte controleren lijkt me:

    overigens, staat er wel een echo of print voor blabla?? Stond er namelijk niet...
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if (check_login() == 'Onwaar') {
    echo
    "blabla";
    } elseif (
    check_login() == 'Waar') {
    echo
    "blabla";
    } else {
    echo
    check_login() ;
    ?>
    morpheus_at_workzaterdag 26 november 2005 @ 23:56
    we zijn al stap verder , de onwaar geeft een blablabla terug

    de waar geeft hij niet terug maar weet wel te zeggen dat het 4 posities is
    existenzzaterdag 26 november 2005 @ 23:58
    Als je die Waar en Onwaar variabelen vervangt door een boolean (true/false) kan dat ieg stukken minder fouten opleveren!
    morpheus_at_workzondag 27 november 2005 @ 00:03
    @existenz , dat heb ik nu gedaan en krijg nu uberhaubt geen antwoord terug uit de code die
    the_disheaver gegeven heeft (ja ik heb de laaste } er aan toegevoegd)
    existenzzondag 27 november 2005 @ 00:13
    quote:
    Op zondag 27 november 2005 00:03 schreef morpheus_at_work het volgende:
    @existenz , dat heb ik nu gedaan en krijg nu uberhaubt geen antwoord terug uit de code die
    the_disheaver gegeven heeft (ja ik heb de laaste } er aan toegevoegd)
    Dit ook aangepast?:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?php

    function check_login()
    {
        
    $bLogin= false;

        if(empty(
    $_SESSION['ingelogd']))
        
       {
            
    //niet aangemeld volgens sessie, wel volgens db?
            
    if(isset($_COOKIE['user_id']))
        {
    $bLogin= true;
          
          
    //de sessie gegevens schrijven
            
    $_SESSION['ingelogd']=TRUE;
            
    $_SESSION['user_id']=$_COOKIE['user_id'];

          
    //cookies setten voor 7dagen
            
    setcookie('validate',$sValidate,time()+60*60*24*7,'/','www.vkdev.nl');
            
    setcookie('user_id',$_SESSION['user_id'],time()+60*60*24*7,'/','www.vkdev.nl');

            return
    $bLogin;
        } else
        { return
    $bLogin; }
        }
    }

    ?>
    the_disheaverzondag 27 november 2005 @ 00:26
    pfff... Een punt (.) ipv een streepje (-) in een variable gezet... En na een dag merk ik nu pas de fout...
    the_disheaverzondag 27 november 2005 @ 00:27
    quote:
    Op zondag 27 november 2005 00:13 schreef existenz het volgende:

    [..]

    Dit ook aangepast?:
    [ code verwijderd ]
    Maakt weinig uit, dan zou de else statement uitgevoerd moeten worden, ofwel het echo'en van de waarde van check_login();
    existenzzondag 27 november 2005 @ 00:50
    quote:
    Op zondag 27 november 2005 00:27 schreef the_disheaver het volgende:

    [..]

    Maakt weinig uit, dan zou de else statement uitgevoerd moeten worden, ofwel het echo'en van de waarde van check_login();
    Daar zit inderdaad nog een fout in! Niet alle paden in de functie check_login() geven een waarde terug zie ik nu! Deze functie doet dat wel:

    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
    php

    function check_login()
    {
        
    $bLogin= false;

        if(empty(
    $_SESSION['ingelogd']))
        
       {
            
    //niet aangemeld volgens sessie, wel volgens db?
            
    if(isset($_COOKIE['user_id']))
        {
    $bLogin= true;
          
          
    //de sessie gegevens schrijven
            
    $_SESSION['ingelogd']=TRUE;
            
    $_SESSION['user_id']=$_COOKIE['user_id'];

          
    //cookies setten voor 7dagen
            
    setcookie('validate',$sValidate,time()+60*60*24*7,'/','www.vkdev.nl');
            
    setcookie('user_id',$_SESSION['user_id'],time()+60*60*24*7,'/','www.vkdev.nl');
        }
       }
           return
    $bLogin;
    }
    ?>
    wobbelzondag 27 november 2005 @ 17:33
    Ik heb de volgende code, maar ik krijg altijd "Kiekeboe" in beeld., terwijl $aap gewoon 2 is.

    Hij moet ALLEEN kiekeboe weergeven als kiekeboe GEEN 2 is of GEEN 3 is.

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if($aap != 2 OR $aap != 3)
    {
                        
        echo
    "Kiekeboe";
                        
    }
    ?>
    existenzzondag 27 november 2005 @ 17:40
    quote:
    Op zondag 27 november 2005 17:33 schreef wobbel het volgende:
    Ik heb de volgende code, maar ik krijg altijd "Kiekeboe" in beeld., terwijl $aap gewoon 2 is.

    Hij moet ALLEEN kiekeboe weergeven als kiekeboe GEEN 2 is of GEEN 3 is.
    [ code verwijderd ]
    Dat is simpel. Het is namelijk:
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if($aap != 2 AND $aap != 3)
    {
                        
        echo
    "Kiekeboe";
                        
    }
    ?>


    Dus AND ipv OR, immers:
    $aap != 2 = False
    $aap != 3 = True

    Met een OR moet 1 van de beide statements waar zijn. Dat is dus in dit geval.
    wobbelzondag 27 november 2005 @ 19:51
    DAnkje, heb wel vaker een AND, OR of || probleem
    wobbelzondag 27 november 2005 @ 20:17
    Ik zit met een heel gek probleem (voor mij dan)

    Ik heb deze query:

    SELECT * FROM Huiswerk WHERE Gekeurd = '2' AND Type = '7' AND Titel LIKE '%prak%' OR Huiswerk LIKE '%prak%'

    Nu geeft hij alles weer waar prak in de Titel staat of in Huiswerk, maar hij trekt zich niks aan van Type en Gekeurd...

    Voorbeeld: in de db staat bij 1 record Gekeurd = 1, en ik vraag alle rijen met Gekeurd = 2 op, en toch geeft ie de rij met Gekeurd = 1 ook weer
    the_disheaverzondag 27 november 2005 @ 20:46
    quote:
    Op zondag 27 november 2005 20:17 schreef wobbel het volgende:
    Ik zit met een heel gek probleem (voor mij dan)

    Ik heb deze query:

    SELECT * FROM Huiswerk WHERE Gekeurd = '2' AND Type = '7' AND Titel LIKE '%prak%' OR Huiswerk LIKE '%prak%'

    Nu geeft hij alles weer waar prak in de Titel staat of in Huiswerk, maar hij trekt zich niks aan van Type en Gekeurd...

    Voorbeeld: in de db staat bij 1 record Gekeurd = 1, en ik vraag alle rijen met Gekeurd = 2 op, en toch geeft ie de rij met Gekeurd = 1 ook weer
    Haakjes vergeten.

    SELECT * FROM Huiswerk WHERE Gekeurd = '2' AND Type = '7' AND (Titel LIKE '%prak%' OR Huiswerk LIKE '%prak%')

    Zoiets iig, ben niet erg in het SQL schrijfstijl...

    In jouw stelling mag alles FALSE zijn, als de laatste (achter de or) maar wel TRUE is.

    x=1 AND y=1 OR z=1

    is het zelfde als
    Z=1 OR x=1 AND y=1

    Aangezien bij een OR stelling maar 1 waar hoeft te zijn, kan als Z=1 TRUE is, de rest vergeten worden. Met haakjes echter niet:

    x=1 AND (y=1 OR z=1)

    Nu mag y of z 1 zijn, maar moet x altijd 1 zijn.

    Helder?

    [ Bericht 8% gewijzigd door the_disheaver op 27-11-2005 20:57:43 ]
    wobbelzondag 27 november 2005 @ 21:28
    Heel helder

    Bedankt voor de teletubbie uitleg ik snap het nu
    LeeHarveyOswaldmaandag 28 november 2005 @ 00:10
    Ben ik weer

    Weet iemand wat in deze beide codes mis gaat? Ik heb 2 manieren om te controlleren of iemand als gast het forum bezoekt, als er geen cookie aanwezig is. !isset, en, omdat die niet werkte, de waarde van de cookie in een andere variabele zetten, indien 0, geen toegang.

    Dit zijn mijn codes: (relevante deel)

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if ( isset($_COOKIE["member_id"]) && $_COOKIE["member_id"] &lt; 1) {Echo "Welkom gast! log in voor meer opties."; }
    else {
    $CheckMemID = $_COOKIE["member_id"]; // Controlleren of de user niet toevallig "Guest" is
            
    if ($CheckMemID &lt; 1) {
                                   Echo
    "Welkom gast! log in voor meer opties."; }
            else {
    ?>



    1
    2
    3
    4
    5
    6
    7
    <?php
    if ( isset($_COOKIE["member_id"]) && $_COOKIE["member_id"] &lt; 1) {Echo "Welkom gast! log in voor meer opties."; }
    else {
            if (!isset(
    $_COOKIE["member_id"])) {
                                   Echo
    "Welkom gast! log in voor meer opties."; }
            else {
    ?>



    De regel waarop het mis gaat is altijd regel 21, wat neer komt op: if ($CheckMemID < 1) {

    Mijn foutmelding: Parse error: parse error, unexpected T_ELSE in /usr/home/jeroen/www/forum/chat.php on line 21
    SuperRembomaandag 28 november 2005 @ 00:21
    } vergeten voor de else.
    LeeHarveyOswaldmaandag 28 november 2005 @ 00:31
    Op het laatst? die staat ergens onderin het document..
    the_disheavermaandag 28 november 2005 @ 01:18
    quote:
    Op maandag 28 november 2005 00:31 schreef LeeHarveyOswald het volgende:
    Op het laatst? die staat ergens onderin het document..
    Nee, voor de eerste else, (die voor de laatste else moet staan)

    zo (laatste else eruit gehaald
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if ( isset($_COOKIE["member_id"]) && $_COOKIE["member_id"] < 1) {Echo "Welkom gast! log in voor meer opties."; }
    else {
    $CheckMemID = $_COOKIE["member_id"]; // Controlleren of de user niet toevallig "Guest" is
            if ($CheckMemID < 1) {
                                   Echo "Welkom gast! log in voor meer opties."; }}
            
    ?>
    LeeHarveyOswaldmaandag 28 november 2005 @ 01:21
    Maar die eerste else moet nog 'openblijven': Ik ga later nog meer voorwaarden stellen, indien die allemaal goed zijn, dan mag er iets worden weergegeven
    SuperRembomaandag 28 november 2005 @ 07:54
    Op jouw stukje code krijg ik geen parse errors. Ik krijg wel een undefined index warning, dat komt doordat er in de eerste if een and staat in plaats van een or.

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    if (empty($_COOKIE["member_id"])
          or $_COOKIE["member_id"] < 1) {
       Echo "Welkom gast! log in voor meer opties.";
    } else {
       // Validate session
    }
    ?>
    Desdinovamaandag 28 november 2005 @ 11:18
    ik heb dit:

    $data1 = $_POST['data1'];
    $data2 = $_POST['data2'];
    $data3 = $_POST['data3'];
    $data4 = $_POST['data4'];
    $data5 = $_POST['data5'];

    en dit gaat nog wel ff door

    kan dit geautomatiseerd worden?
    the_disheavermaandag 28 november 2005 @ 12:07
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
        $x
    = count($_POST);
        
    $i = 0;
        while (
    $i &lt;= $x) {
                        
    $x = "data" .$i;
            $
    $x = $_POST[$x];
            
    $i++
            }
    ?>

    Tenminste, ik wil dit gebruiken, al heb ik het nog niet getest of ie het doet. Lijkt me bij mijn code welt. Ik weet niet of count($_POST) gaat werken.

    [ Bericht 4% gewijzigd door the_disheaver op 28-11-2005 12:56:57 ]
    the_disheavermaandag 28 november 2005 @ 12:12
    Of dit?
    1
    2
    3
    4
    5
    <?php
        
    foreach ( $_POST as $key =&gt; $value ) {
           $
    $key = $value;
        }
    ?>
    Desdinovamaandag 28 november 2005 @ 12:41
    quote:
    Op maandag 28 november 2005 12:12 schreef the_disheaver het volgende:
    Of dit?
    [ code verwijderd ]
    dat lijkt prima te werken

    ik vind die loops met $i altijd beetje lastig te begrijpen
    moet er maar n keertje mee werken denk ik, wordt het waarschijnlijk n stuk duidelijker van
    the_disheavermaandag 28 november 2005 @ 12:59
    quote:
    Op maandag 28 november 2005 12:41 schreef Desdinova het volgende:

    [..]

    dat lijkt prima te werken

    ik vind die loops met $i altijd beetje lastig te begrijpen
    moet er maar n keertje mee werken denk ik, wordt het waarschijnlijk n stuk duidelijker van
    Die while van mij klopte niet echt. Aangezien $i niet werd verhoogd blijft ie een oneinde loop (aangezien $i altijd kleiner is dan $x.

    Door $i te verhogen zal op een gegeven moment de expression niet meer TRUE zijn, en dus zal hij stoppen met de loop.
    LeeHarveyOswaldmaandag 28 november 2005 @ 13:15
    quote:
    Op maandag 28 november 2005 07:54 schreef SuperRembo het volgende:
    Op jouw stukje code krijg ik geen parse errors. Ik krijg wel een undefined index warning, dat komt doordat er in de eerste if een and staat in plaats van een or.
    [ code verwijderd ]
    Naar aanleiding van dit bericht heb ik hem werkend gekregen Dank u

    Het gaat trouwens om de slowchat box die te zien is onder http://pestforum.nl/forum (of niet te zien, voor gasten )
    the_disheavermaandag 28 november 2005 @ 13:32
    quote:
    Op maandag 28 november 2005 13:15 schreef LeeHarveyOswald het volgende:

    [..]

    Naar aanleiding van dit bericht heb ik hem werkend gekregen Dank u

    Het gaat trouwens om de slowchat box die te zien is onder http://pestforum.nl/forum (of niet te zien, voor gasten )
    over dat forum:Erg irritant dat je een popup krijgt met de melding dat je niet ingelogd bent (ja, dat weet ik ook wel...)

    het is verboden delen, teksten, publicaties, verhalen, gedichten, ed. te kopieëren zonder schriftelijke toestemming van pestforum.nl.

    wijzigen in 'het is niet toegestaan ...blablalba' (wat vriendelijker )
    En ik zie niks onder 'PestForum wordt mede mogelijk gemaakt door:'
    Desdinovamaandag 28 november 2005 @ 13:37
    en mishandelt, in het subforum Mishandeling beschrijvingstekstje, is met een D
    bij Discussie algemeen, is betekend met een T. verder zal ik niet meer op zoek gaan
    LeeHarveyOswaldmaandag 28 november 2005 @ 14:11
    quote:
    Op maandag 28 november 2005 13:37 schreef Desdinova het volgende:
    en mishandelt, in het subforum Mishandeling beschrijvingstekstje, is met een D
    bij Discussie algemeen, is betekend met een T. verder zal ik niet meer op zoek gaan
    Hmm alle topic punten zijn ooit door een spellingcheck gehaald, thnx
    LeeHarveyOswaldmaandag 28 november 2005 @ 14:13
    quote:
    Op maandag 28 november 2005 13:32 schreef the_disheaver het volgende:

    [..]

    over dat forum:Erg irritant dat je een popup krijgt met de melding dat je niet ingelogd bent (ja, dat weet ik ook wel...)

    het is verboden delen, teksten, publicaties, verhalen, gedichten, ed. te kopieëren zonder schriftelijke toestemming van pestforum.nl.

    wijzigen in 'het is niet toegestaan ...blablalba' (wat vriendelijker )
    En ik zie niks onder 'PestForum wordt mede mogelijk gemaakt door:'
    Die popup die gaat er ook uit, in de begin tijd van het forum hadden we zo'n 6 gasten per dag die in de statistieken pagina stonden 'tikt een bericht'.

    Zo lullig dat je als gast niet kan posten, en sommige mensen dus ineens een compleet levensverhaal van 4 pagina's kwijt waren
    the_disheavermaandag 28 november 2005 @ 14:36
    quote:
    Op maandag 28 november 2005 14:13 schreef LeeHarveyOswald het volgende:

    [..]

    Die popup die gaat er ook uit, in de begin tijd van het forum hadden we zo'n 6 gasten per dag die in de statistieken pagina stonden 'tikt een bericht'.

    Zo lullig dat je als gast niet kan posten, en sommige mensen dus ineens een compleet levensverhaal van 4 pagina's kwijt waren
    Kun je dan niet gewoon beter voorkomen dat een gast uberhaupt op de reactiepagina kan komen? (a: if ingelogd op reactie pagina, en b) geen 'reageer' link bij gast in thread pagina)
    LeeHarveyOswaldmaandag 28 november 2005 @ 14:50
    Invision is heel lastig aan te passen (zo moest er een of andere crack gebruikt worden wilde ik mn eigen php pagina in kunnen voegen) dus ik denk niet dat dat gaat werken. Wel kan ik de gasten het hele forum niet meer laten zien, maar dat is ook niet de bedoeling...
    TheUnrealmaandag 28 november 2005 @ 17:14
    quote:
    Op maandag 28 november 2005 07:54 schreef SuperRembo het volgende:
    Op jouw stukje code krijg ik geen parse errors. Ik krijg wel een undefined index warning, dat komt doordat er in de eerste if een and staat in plaats van een or.
    [ code verwijderd ]
    Als je OR en/of AND gebruikt, doe je dit het beste met || en &&. In textvorm wil het anders nog wel eens onjuist uitpakken, dus:

    AND word &&
    OR word ||
    JeRamaandag 28 november 2005 @ 18:03
    quote:
    Op maandag 28 november 2005 17:14 schreef TheUnreal het volgende:

    [..]

    Als je OR en/of AND gebruikt, doe je dit het beste met || en &&. In textvorm wil het anders nog wel eens onjuist uitpakken
    Zou je dat even willen uitleggen? deze en deze pagina's vertellen mij namelijk dat het verschil tussen and/&& en or/|| niets anders is dan de precedence (welke operator voorrang heeft, dus)
    existenzmaandag 28 november 2005 @ 18:26
    quote:
    Op maandag 28 november 2005 17:14 schreef TheUnreal het volgende:

    [..]

    Als je OR en/of AND gebruikt, doe je dit het beste met || en &&. In textvorm wil het anders nog wel eens onjuist uitpakken, dus:

    AND word &&
    OR word ||
    Dat is de grootste onzin die je maar kunt bedenken!
    Het maakt niet uit wat je gebruikt, echter zijn && en || meer gebruikte vormen in programmeertalen dan AND en OR. AND en OR worden eigenlijk alleen toegepast in SQL.
    JeRamaandag 28 november 2005 @ 18:39
    quote:
    Op maandag 28 november 2005 18:26 schreef existenz het volgende:

    [..]

    Dat is de grootste onzin die je maar kunt bedenken!
    Het maakt niet uit wat je gebruikt, echter zijn && en || meer gebruikte vormen in programmeertalen dan AND en OR. AND en OR worden eigenlijk alleen toegepast in SQL.
    En een paar dozijn programmeertalen hoor and en or hebben gewoon een andere precedence dan && en ||
    DionysuZmaandag 28 november 2005 @ 19:06
    quote:
    Op maandag 28 november 2005 18:39 schreef JeRa het volgende:

    [..]

    En een paar dozijn programmeertalen hoor and en or hebben gewoon een andere precedence dan && en ||
    is dat zo? waarom zo onduidelijk. Ik denk dan gebruik voor beide notities dezelfde volgorde, eerst &&, AND en vervolgens ||, OR.
    Swetseneggermaandag 28 november 2005 @ 19:27
    quote:
    Op maandag 28 november 2005 19:06 schreef DionysuZ het volgende:

    [..]

    is dat zo? waarom zo onduidelijk. Ik denk dan gebruik voor beide notities dezelfde volgorde, eerst &&, AND en vervolgens ||, OR.
    het gaat erom dat && eerder wordt uitgevoerd dan AND. && en AND door elkaar gebruiken is dus niet zo handig omdat dat wel eens onverwachte resultaten kan opleveren.

    Zie http://nl2.php.net/manual(...)operators.precedence
    wobbelmaandag 28 november 2005 @ 20:54
    Aargh :| Waarom haat ik preg_replace en al die zooi toch :|

    Ik heb de volgende code in mijn UBB parser voor het quoten:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $msg
    = preg_replace("/\[quote\](.+?)\[\/quote\]/is",'
                 &nbsp;<br><table cellspacing=0 cellpadding=0 border=0 width=100%>
                 <tr><td width=40><td class=date>Quote</td></tr>
                 <tr><td height=1><td bgcolor=808080 height=1></tr>
                 <tr><td><td align=left valign=top>\1</tr>
                 <tr><td height=1><td bgcolor=808080 height=1></tr>
                 </table><p>'
    , $msg);
    ?>

    Het gebruik is dus gewoon
    1[quote]Hier de tekst die je wil quoten[/quote]


    Maar nu wil ook laten zien wie je quote. Dan wil ik dus dit kunnen:
    1[quote=Naam]Hier de tekst die ik wil quoten[/quote]


    Maar wat moet ik dan aanpassen in de bovenstaande PHP code?
    DionysuZmaandag 28 november 2005 @ 21:00
    bijvoorbeeld [quote=(.+?)\], en dan \1 voor de naam en \2 voor de quote. Maar dan kun je wel nog een hoeveelheid onzin als naam neerzetten
    wobbelmaandag 28 november 2005 @ 21:02
    quote:
    Op maandag 28 november 2005 21:00 schreef DionysuZ het volgende:
    bijvoorbeeld [quote=(.+?)\], en dan \1 voor de naam en \2 voor de quote. Maar dan kun je wel nog een hoeveelheid onzin als naam neerzetten
    kan ik \1 dan als $string maken, deze string controleren en desnoods afkorten en html filteren, en dan weer $string weergeven als naam?
    JeRamaandag 28 november 2005 @ 21:50
    quote:
    Op maandag 28 november 2005 21:02 schreef wobbel het volgende:

    [..]

    kan ik \1 dan als $string maken, deze string controleren en desnoods afkorten en html filteren, en dan weer $string weergeven als naam?
    Ik zou eerst even bedenken of je dat niet in de bestaande regex kunt inbouwen (als range in de [quote=(.+?)] inbouwen bijvoorbeeld) en anders zul je de /e-modifier moeten gebruiken daarmee kun je een callback instellen die preg_replace() aanroept als er iets gematched wordt en kun je zelf bepalen wat er teruggeven wordt. Zie voor gebruik de manual
    Desdinovadinsdag 29 november 2005 @ 10:40
    $_POST['show'] is 'bla'.

    $show = $_POST['show'];

    $bericht = $$show."bla";

    waarom komt dit niet overeen met:
    $bericht = $blabla; ?
    pc-fr34kdinsdag 29 november 2005 @ 11:21
    quote:
    Op dinsdag 29 november 2005 10:40 schreef Desdinova het volgende:
    $_POST['show'] is 'bla'.
    Waarom zou je een post-variable definen? .
    quote:
    $show = $_POST['show'];

    $bericht = $$show."bla";

    waarom komt dit niet overeen met:
    $bericht = $blabla; ?
    En wat is je vraag nou precies?
    Swetseneggerdinsdag 29 november 2005 @ 11:31
    $bericht = $show."bla";
    DionysuZdinsdag 29 november 2005 @ 11:43
    quote:
    Op dinsdag 29 november 2005 10:40 schreef Desdinova het volgende:
    $_POST['show'] is 'bla'.

    $show = $_POST['show'];

    $bericht = $$show."bla";

    waarom komt dit niet overeen met:
    $bericht = $blabla; ?
    Omdat $bla niet gedefinieerd is?
    Desdinovadinsdag 29 november 2005 @ 11:57
    ik heb t al:

    $show = $_GET['show'];

    $showtoelichting = $show."toelichting";
    $toelichting = $$showtoelichting;

    ik heb 3 waardes per 'show'. dus toelichting1, toelichting2, en toelichting3 bijv.
    dus voor elke toelichting voer ik bovenstaand script uit (alleen dan verandert toelichting in toelichting1 t/m3 enzo)

    dan heb ik 1 extern bestand met mijn data, waar dus $$showtoelichting uit gehaald wordt.

    voorbeeld:
    $show = tekst1

    $showtoelichting = tekst1."toelichting";
    $toelichting = $tekst1toelichting;

    snabbu?
    Jimmydinsdag 29 november 2005 @ 13:00
    Ik weet niet wat je precies probeert te bereiken met je code, maar het ziet er heel erg vies uit.
    JeRadinsdag 29 november 2005 @ 13:15
    quote:
    Op dinsdag 29 november 2005 11:57 schreef Desdinova het volgende:
    ik heb 3 waardes per 'show'. dus toelichting1, toelichting2, en toelichting3 bijv.
    Op die manier krijg je niet toelichting1 etc maar 1toelichting 2toelichting...behalve dat, wat ben je in vredesnaam aan het doen? waarom werk je niet gewoon met een array?

    echo $toelichting[index];
    Swetseneggerdinsdag 29 november 2005 @ 13:23
    quote:
    Op dinsdag 29 november 2005 13:00 schreef Jimmy het volgende:
    Ik weet niet wat je precies probeert te bereiken met je code, maar het ziet er heel erg vies uit.
    Desdinovadinsdag 29 november 2005 @ 13:38
    haha ik zal t nog een keertje uitleggen ik vind t best n stoer stukkie code voor mijn niveau 8)

    ik heb dus 1 website die ik hier niet ga plaatsen
    daarbij heb ik linkies, elk linkie verwijst naar dezelfde pagina maar met andere content.

    per pagina heb ik 3 toelichtingen, die allemaal op een ander plekje staan. zie het als 3 verschillende tekstjes, met bijvoorbeeld een toelichting, een toekomstvisie en een geschiedenis. om t ff duidelijk te houden.

    dus:

    pagina met links:
    link1 -> ?show=link1
    link2 -> ?show=link2
    link3 -> ?show=link3

    etc

    klik op link1

    dan gebeurt er dit:

    $show = $_GET['show']; //dus $show heeft waarde link1

    $showtoelichting = $show."toelichting"; // $showtoelichting heeft waarde link1toelichting
    $toelichting = $$showtoelichting; //$toelichting heeft waarde $link1toelichting

    en ik heb een @require ('gegevens.php'); waar dus een $link1toelichting = "toelichting bij link 1 yadayada bladiebla"; in staat! cool he.

    behalve bij de toelichting doetie dit dus ook bij de geschiedenis en toekomstvisie, op dezelfde manier.

    als het netter kan, laat maar weten
    maar ik vond t al heel wat dat ik van 3 regels per item naar 6 regels totaal ben gegaan
    Swetseneggerdinsdag 29 november 2005 @ 13:43
    Wat is er mis met een switch?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    switch ($_GET['show']) {
    case
    "link1":
       echo
    $link1toelichting;
       break;
    case
    "link2":
       echo
    $link2toelichting;
       break;
    case
    "link3":
       echo
    $link3toelichting;
       break;
    }
    ?>
    JeRadinsdag 29 november 2005 @ 13:43
    quote:
    Op dinsdag 29 november 2005 13:38 schreef Desdinova het volgende:
    cool he.
    Nee! Imho is het zeer smerig om namen van variabelen te gaan 'constructen' en deze vervolgens ook nog eens in een andere variabele te zetten

    Waarom niet dit?

    gegevens.php:
    $toelichting = array();
    $toelichting['link1'] = 'Blaat, blaat';
    $toelichting['link2'] = 'Blawap!';
    -etc-

    en dan doe je vervolgens:

    require('gegevens.php');

    $show = $_GET['show'];
    if (in_array($show, $toelichting)) {
    echo $toelichting[$show];
    }

    dit kun je zo uitgebreid maken als je wil.
    Jimmydinsdag 29 november 2005 @ 13:44
    Waarom doe je dan niet gewoon iets als:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $show = isset($_GET['show']) ? strval($_GET['show']) : "";

    switch($show){
     case "link1": $tekst = "De tekst die bij link1 hoort.";
        break;
     case "link2": $tekst = "De tekst die bij link2 hoort.";
        break;
     case "link3": $tekst = "De tekst die bij link3 hoort.";
        break;
     case "link4": $tekst = "De tekst die bij link4 hoort.";
        break;
    }


    Volg je?

    Dan hoef je geen gekke dingen te doen met variabele variabele namen (:P). En het is ook veiliger: je weet nooit wat mensen proberen mee te geven met 'show'.

    Edit: JeRa's methode is ook een stuk minder 'vies' dan je eigen methode.
    En Swetsenegger's methode is een simpelere versie van mijnes.
    DionysuZdinsdag 29 november 2005 @ 13:46
    Ten eerste: controleer die $_GET["show"] variabele voordat je hem gebruikt!!
    Ten tweede: maak ipv variabelen $link1toelichting, $link2toelichting etc. een array $toelichting.
    JeRadinsdag 29 november 2005 @ 13:46
    quote:
    Op dinsdag 29 november 2005 13:46 schreef DionysuZ het volgende:
    Ten tweede: maak ipv variabelen $link1toelichting, $link2toelichting etc. een array $toelichting.
    You teh man!
    DionysuZdinsdag 29 november 2005 @ 13:47
    quote:
    Op dinsdag 29 november 2005 13:43 schreef JeRa het volgende:

    [..]

    Nee! Imho is het zeer smerig om namen van variabelen te gaan 'constructen' en deze vervolgens ook nog eens in een andere variabele te zetten

    Waarom niet dit?

    gegevens.php:
    $toelichting = array();
    $toelichting['link1'] = 'Blaat, blaat';
    $toelichting['link2'] = 'Blawap!';
    -etc-

    en dan doe je vervolgens:

    require('gegevens.php');

    $show = $_GET['show'];
    if (in_array($show, $toelichting)) {
    echo $toelichting[$show];
    }

    dit kun je zo uitgebreid maken als je wil.
    dit dus
    Swetseneggerdinsdag 29 november 2005 @ 13:48
    Mjah, gekut met een array zou ik ook niet doen.
    Voor zever ik het begrijp wil hij afhankelijk van de link een bepaalde tekst laten zien. Bij uitstek een switch oplossing.

    variabele controlle is wel nodig
    Desdinovadinsdag 29 november 2005 @ 13:56
    een switch wordt te groot. zoals ik al zei heb ik nu 6 regels voor 12 items ofzo. met een switch wordt dat dus zoiezo al 3 per item (toekomst, geschiedenis en toelichting), excl. de switch code zelf.

    dat ze zelf de show kunnen invullen maakt mij geen drol uit waarom zou je dat willen? als de ingegeven show niet bestaat wordt er niks weergegeven, moet je maar niet kloten

    die array lijkt ook wel te werken en is korter, maar dat soort code kan ik zelf nog niet bij mekaar prutsen misschien dat ik hem wel gebruik. ik heb er iig van geleerd
    Swetseneggerdinsdag 29 november 2005 @ 14:00
    quote:
    Op dinsdag 29 november 2005 13:56 schreef Desdinova het volgende:
    een switch wordt te groot. zoals ik al zei heb ik nu 6 regels voor 12 items ofzo. met een switch wordt dat dus zoiezo al 3 per item (toekomst, geschiedenis en toelichting), excl. de switch code zelf.
    Sow what? Is je php editor vol ofzo
    En hoezo twaalf? Je hebt toch maar 3 links?
    quote:
    dat ze zelf de show kunnen invullen maakt mij geen drol uit waarom zou je dat willen? als de ingegeven show niet bestaat wordt er niks weergegeven, moet je maar niet kloten
    totdat je een keer een var in een query gebruikt en ze je database tabel droppen via sql injection en je al je gegevens kwijt bent. Moeten ze maar niet kloten .
    Of je hebt een database met klantgegevens en door sqlinjection kunnen ze alle gegevens van je klanten achterhalen, of....
    ALTIJD USERINPUT CONTROLLEREN!
    quote:
    die array lijkt ook wel te werken en is korter, maar dat soort code kan ik zelf nog niet bij mekaar prutsen misschien dat ik hem wel gebruik. ik heb er iig van geleerd
    Hij staat eral. Wat moet je nog prutsen dan?

    Maar aangezien je zelf al aangeeft dat je nivo nog niet erg hoog is, lijkt het me verstandig dat je in ieder geval met OF de switch OF de array gaan werken, maar niet met die smerige fout gevoelige code welke jezelf gefabriceerd hebt.

    [ Bericht 3% gewijzigd door Swetsenegger op 29-11-2005 14:05:31 ]
    Swetseneggerdinsdag 29 november 2005 @ 14:02
    En als je bedoelt dat je PER link meerdere teksten hebt:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    switch ($_GET['show']) {
    case
    "link1":
       echo
    $link1toelichting.'<br />'.$link1geschiedenis.'br />.'$link1toekomst;
       break;
    case
    "link2":
       echo
    $link2toelichting.'<br />'.$link2geschiedenis.'br />.'$link2toekomst;
       break;
    case
    "link3":
       echo
    $link3toelichting.'<br />'.$link3geschiedenis.'br />.'$link3toekomst;
       break;
    }
    ?>


    LET OP!!! dit is alleen de switch code en nog GEEN controlle op userinput
    the_disheaverdinsdag 29 november 2005 @ 14:06
    quote:
    Op dinsdag 29 november 2005 14:02 schreef Swetsenegger het volgende:
    En als je bedoelt dat je PER link meerdere teksten hebt:
    [ code verwijderd ]

    LET OP!!! dit is alleen de switch code en nog GEEN controlle op userinput
    Dit kan toch ook makkelijk in een lus als je regels wilt besparen?

    En ipv direct de variable te echo'en, een variable instellen die je uiteindelijk echo'ed in een pagina.
    Desdinovadinsdag 29 november 2005 @ 14:06
    ik post hier om te leren niet om jullie code klakkeloos over te nemen.

    Ik heb 12 links. en per link 3 teksten. dus dan defineer ik 36 strings. en dat lijkt me geen goed plan.

    is mn php editor vol, nee. ga ik 36 regels coden ipv 6? nee.

    in SQL kan je de bevoegdheden aangeven per database connectie, dus daar zie ik ook geen problemen in.

    En waarom was mijn code ook alweer fout gevoelig?
    DionysuZdinsdag 29 november 2005 @ 14:09
    Een table droppen is niet het enige dat kan met sql injectie. De mogelijkheden zijn eindeloos.
    Swetseneggerdinsdag 29 november 2005 @ 14:12
    quote:
    Op dinsdag 29 november 2005 14:06 schreef the_disheaver het volgende:

    [..]

    Dit kan toch ook makkelijk in een lus als je regels wilt besparen?

    En ipv direct de variable te echo'en, een variable instellen die je uiteindelijk echo'ed in een pagina.
    Uietraard, maar voor de uitleg leek het me eenvoudiger om het uit te schrijven
    quote:
    Op dinsdag 29 november 2005 14:06 schreef Desdinova het volgende:
    ik post hier om te leren niet om jullie code klakkeloos over te nemen.
    Ok, er zeggen hier 4 personen dat je huidige code niet de juiste weg is. Leer je al wat?
    quote:
    Ik heb 12 links. en per link 3 teksten. dus dan defineer ik 36 strings. en dat lijkt me geen goed plan.
    Die teksten heb je toch al gedefinieerd. Het gaat nu slechts om het op beeld toveren van die teksten
    quote:
    is mn php editor vol, nee. ga ik 36 regels coden ipv 6? nee.
    Want de kortste code is altijd de beste . Ga er nog maar eens goed over nadenken.
    quote:
    in SQL kan je de bevoegdheden aangeven per database connectie, dus daar zie ik ook geen problemen in.
    Als ik met een var uit $get gegevens uit een database kan halen, kan ik ook MEER gegevens uit een database halen dan dat jij eigenlijk voor ogen hebt. Ook als je per database connectie dingen dichttimmert.
    quote:
    En waarom was mijn code ook alweer fout gevoelig?
    Omdat je vars gaat constructen. Het is onoverzichtelijk en dus foutgevoelig. Ik vraag me af of je er zelf nog uitkomt als je over een jaar een extra omschrijving wilt toevoegen aan een linkje .
    Swetseneggerdinsdag 29 november 2005 @ 14:12
    quote:
    Op dinsdag 29 november 2005 14:09 schreef DionysuZ het volgende:
    Een table droppen is niet het enige dat kan met sql injectie. De mogelijkheden zijn eindeloos.
    Ik had ook nog wat zaken toegevoegd. Belangrijkste is wel dat er mischien gegevens getoont worden, welke je niet wilt tonen.
    ikke_ookdinsdag 29 november 2005 @ 14:13
    quote:
    Op dinsdag 29 november 2005 14:02 schreef Swetsenegger het volgende:
    En als je bedoelt dat je PER link meerdere teksten hebt:
    [ code verwijderd ]

    LET OP!!! dit is alleen de switch code en nog GEEN controlle op userinput
    Ik snap niet zo goed waarom je hier nog userinput moet controlleren?
    Je kunt hier toch een Default toevoegen die afvangt als het iets anders is?

    -edit-

    In dit specifieke geval he!!Ik hoef niet te horen wat er allemaal met sql-injectie ed kan gebeuren, want dat weet ik wel
    Swetseneggerdinsdag 29 november 2005 @ 14:17
    quote:
    Op dinsdag 29 november 2005 14:13 schreef ikke_ook het volgende:

    [..]

    Ik snap niet zo goed waarom je hier nog userinput moet controlleren?
    Je kunt hier toch een Default toevoegen die afvangt als het iets anders is?

    -edit-

    In dit specifieke geval he!!Ik hoef niet te horen wat er allemaal met sql-injectie ed kan gebeuren, want dat weet ik wel
    In dit specifieke geval is een default statement in de switch voldoende inderdaad. Maar dat is toch OOK een versie van userinput controlle eigenlijk .

    De booschap is nooit userinput te vertrouwen en het altijd zo te coden dat je een fallback hebt wanneer de userinput niet aan je verwachtingen voldoet. Een default value in je switch statement indien je case 'none of the above' is is prima natuurlijk.
    ikke_ookdinsdag 29 november 2005 @ 14:17
    quote:
    Op dinsdag 29 november 2005 14:17 schreef Swetsenegger het volgende:

    [..]

    In dit specifieke geval is een default statement in de switch voldoende inderdaad. Maar dat is toch OOK een versie van userinput controlle eigenlijk .

    De booschap is nooit userinput te vertrouwen en het altijd zo te coden dat je een fallback hebt wanneer de userinput niet aan je verwachtingen voldoet. Een default value in je switch statement indien je case 'none of the above' is is prima natuurlijk.
    OK Dat leek mij ook al het geval
    Desdinovadinsdag 29 november 2005 @ 14:21
    quote:
    Op dinsdag 29 november 2005 14:12 schreef Swetsenegger het volgende:

    [..]

    Ok, er zeggen hier 4 personen dat je huidige code niet de juiste weg is. Leer je al wat?
    ik zei toch dat ik t van die array had geleerd? die ga ik de volgende keer wel gebruiken
    quote:
    [..]

    Die teksten heb je toch al gedefinieerd. Het gaat nu slechts om het op beeld toveren van die teksten
    Dat maakt niet uit, het zijn alsnog veel regels dus 1 update resulteert in 36x de aanpassing
    quote:
    [..]

    Want de kortste code is altijd de beste . Ga er nog maar eens goed over nadenken.
    Dat zeg ik niet, maar 36 of 6 vind ik interessant genoeg om te gaan voor 6.
    quote:
    [..]

    Als ik met een var uit $get gegevens uit een database kan halen, kan ik ook MEER gegevens uit een database halen dan dat jij eigenlijk voor ogen hebt. Ook als je per database connectie dingen dichttimmert.
    mja maar een database is hier niet van toepassing, dus het maakt in dit geval zoiezo niet uit.
    quote:
    [..]

    Omdat je vars gaat constructen. Het is onoverzichtelijk en dus foutgevoelig. Ik vraag me af of je er zelf nog uitkomt als je over een jaar een extra omschrijving wilt toevoegen aan een linkje .
    Het voordeel is dat 1 aanpassinkje een regel of 2 is, en een 4e tekstdeel is zo te creeeren door gewoon het stukje code te kopieren en overal 'toelichting' te wijzigen in de nieuwe naam

    ik gaf al eerder toe dat die array beter is, maar het is voor nu ff overbodige luxe. Volgens mij kan deze code namelijk niet fout gaan, tenzij je zelf in je $get kloot, maar dan is t je eigen schuld.

    toch?
    Swetseneggerdinsdag 29 november 2005 @ 14:24
    quote:
    Op dinsdag 29 november 2005 14:21 schreef Desdinova het volgende:

    [..]

    ik zei toch dat ik t van die array had geleerd? die ga ik de volgende keer wel gebruiken
    [..]

    Dat maakt niet uit, het zijn alsnog veel regels dus 1 update resulteert in 36x de aanpassing
    [..]

    Dat zeg ik niet, maar 36 of 6 vind ik interessant genoeg om te gaan voor 6.
    Je gebruikt de verkeerde argumenten voor de kortere code. Namelijk alleen 'korter'
    quote:
    mja maar een database is hier niet van toepassing, dus het maakt in dit geval zoiezo niet uit.

    Het voordeel is dat 1 aanpassinkje een regel of 2 is, en een 4e tekstdeel is zo te creeeren door gewoon het stukje code te kopieren en overal 'toelichting' te wijzigen in de nieuwe naam

    ik gaf al eerder toe dat die array beter is, maar het is voor nu ff overbodige luxe. Volgens mij kan deze code namelijk niet fout gaan, tenzij je zelf in je $get kloot, maar dan is t je eigen schuld.

    toch?
    Doe me een lol en stel hier geen vragen meer, als je te eigenwijs bent om dingen aan te nemen
    Desdinovadinsdag 29 november 2005 @ 14:32
    word je altijd boos als het niet op jouw manier gaat?

    ik bedoel kommop, het zit voor nu prima in elkaar, en het kan in principe niet fout gaan tenzij je zelf kloot (en dat doet de huistuinkeukengebruiker niet), en dat is alsnog goed af te vangen met
    if (!$toelichting){} wanneer nodig.

    ik heb toegegeven dat die array een goede optie is, en ik vind de switch geen goede optie.

    wat is het probleem?
    ik neem dingen aan, maar ik moet ze wel overtuigend genoeg vinden. Die switch loopen, kan vast, maar dat kan ik nog niet dus dat ga ik niet doen. Die array snap ik en is neergezet in duidelijke code dankzij Jera. Die kan ik zo overnemen wanneer ik wil, en dat ga ik ook doen in de toekomst.
    DionysuZdinsdag 29 november 2005 @ 14:33
    misschien eens handig om door te nemen desdinova: http://www.phpfreakz.nl/artikelen.php?aid=106
    ikke_ookdinsdag 29 november 2005 @ 14:35
    quote:
    Op dinsdag 29 november 2005 14:32 schreef Desdinova het volgende:
    word je altijd boos als het niet op jouw manier gaat?

    ik bedoel kommop, het zit voor nu prima in elkaar, en het kan in principe niet fout gaan tenzij je zelf kloot (en dat doet de huistuinkeukengebruiker niet), en dat is alsnog goed af te vangen met
    if (!$toelichting){} wanneer nodig.

    ik heb toegegeven dat die array een goede optie is, en ik vind de switch geen goede optie.

    wat is het probleem?
    ik neem dingen aan, maar ik moet ze wel overtuigend genoeg vinden. Die switch loopen, kan vast, maar dat kan ik nog niet dus dat ga ik niet doen. Die array snap ik en is neergezet in duidelijke code dankzij Jera. Die kan ik zo overnemen wanneer ik wil, en dat ga ik ook doen in de toekomst.
    Tis niet de manier van Swets, het is jouw manier tegen de manier van 5 anderen in dit topic.

    Maar als het nu werkt, hou er dan over op. Want je bent er toch van overtuigd dat het goed is nu...

    En dit topic is niet om met je korte code te pimpen, dat doe je maar met de phpGolfwedstrijd.
    Desdinovadinsdag 29 november 2005 @ 14:44
    fine.

    tx Dion
    Swetseneggerdinsdag 29 november 2005 @ 14:59
    quote:
    Op dinsdag 29 november 2005 14:32 schreef Desdinova het volgende:
    word je altijd boos als het niet op jouw manier gaat?
    Boos? Nee hoor, ik ben niet boos ik moet er alleen maar om lachen eigenlijk. Ik weet alleen dat ik jou niet meer ga proberen te helpen in de toekomst.
    quote:
    ik bedoel kommop, het zit voor nu prima in elkaar, en het kan in principe niet fout gaan tenzij je zelf kloot (en dat doet de huistuinkeukengebruiker niet), en dat is alsnog goed af te vangen met
    if (!$toelichting){} wanneer nodig.
    Waarom kom je dan vragen stellen als je het zo prima voor elkaar hebt
    quote:
    ik heb toegegeven dat die array een goede optie is, en ik vind de switch geen goede optie.
    What ever.
    quote:
    wat is het probleem?
    ik neem dingen aan, maar ik moet ze wel overtuigend genoeg vinden. Die switch loopen, kan vast, maar dat kan ik nog niet dus dat ga ik niet doen. Die array snap ik en is neergezet in duidelijke code dankzij Jera. Die kan ik zo overnemen wanneer ik wil, en dat ga ik ook doen in de toekomst.
    Eh, net begreep je de array nog niet, en nu is de array opeens 'duidelijke code'. En als je nog geen loopje in elkaar kan zetten, is er geen enkele manier om je te overtuigen omdat je het simpelweg niet begrijpt. Tevens is die switch gewoon af. Net zo goed als je eigen code is het copy/pasten en de varnamen aanpassen. Overigens maakt de switch of array niet veel uit. Beide zijn een stuk schoner dan je eigen code.
    wobbeldinsdag 29 november 2005 @ 16:15
    Iemand een kant-en-klaar script voor Sterrenbeelden?
    Swetseneggerdinsdag 29 november 2005 @ 16:38
    quote:
    Op dinsdag 29 november 2005 16:15 schreef wobbel het volgende:
    Iemand een kant-en-klaar script voor Sterrenbeelden?
    Beetje weinig info
    Wat moet het script doen?
    pc-fr34kdinsdag 29 november 2005 @ 16:46
    quote:
    Op dinsdag 29 november 2005 16:15 schreef wobbel het volgende:
    Iemand een kant-en-klaar script voor Sterrenbeelden?
    Wat moet er gedaan worden met de sterrenbeelden? .
    the_disheaverdinsdag 29 november 2005 @ 16:55
    quote:
    Op dinsdag 29 november 2005 16:15 schreef wobbel het volgende:
    Iemand een kant-en-klaar script voor Sterrenbeelden?
    Als je van een datum een sterrenbeeld wilt krijgen, dan zal er via google vast wel wat te vinden zijn...
    JeRadinsdag 29 november 2005 @ 17:28
    quote:
    Op dinsdag 29 november 2005 14:59 schreef Swetsenegger het volgende:

    [..]

    Boos? Nee hoor, ik ben niet boos ik moet er alleen maar om lachen eigenlijk. Ik weet alleen dat ik jou niet meer ga proberen te helpen in de toekomst.
    Triest figuur.
    quote:
    Overigens maakt de switch of array niet veel uit.
    En eerder in het topic:
    quote:
    Mjah, gekut met een array zou ik ook niet doen. ... Bij uitstek een switch oplossing.
    Maakt het nou echt zoveel uit wat voor oplossing iemand kiest? Als er 4 goede manieren zijn aangedragen en er wordt er eentje van gekozen, moet je niet nog eens doordrammen en proberen jouw manier te forceren. Zelfinzicht hoort er ook bij als je anderen wilt helpen.
    JeRadinsdag 29 november 2005 @ 17:31
    quote:
    Op dinsdag 29 november 2005 16:15 schreef wobbel het volgende:
    Iemand een kant-en-klaar script voor Sterrenbeelden?
    Nee, maar je kunt toch wel iets verzinnen?

    Elk sterrenbeeld heeft een bepaalde range in datums. Sla de informatie over die ranges ergens op, en bepaal of de geboortedatum binnen een van die ranges van dagen ligt.

    [ Bericht 13% gewijzigd door JeRa op 29-11-2005 17:36:15 ]
    Swetseneggerdinsdag 29 november 2005 @ 17:34
    quote:
    Op dinsdag 29 november 2005 17:28 schreef JeRa het volgende:

    [..]

    Triest figuur.
    quote:
    En eerder in het topic:
    Eh ja, ik zou persoonhlijk voor een switch gaan, maar zoals gezegd is een array OOK een oplossing. Ik geef hier ook aan dat BEIDE oplossingen beter zijn dan de originele code. Dus wat is er niet duidelijk?
    quote:
    Maakt het nou echt zoveel uit wat voor oplossing iemand kiest? Als er 4 goede manieren zijn aangedragen en er wordt er eentje van gekozen, moet je niet nog eens doordrammen en proberen jouw manier te forceren. Zelfinzicht hoort er ook bij als je anderen wilt helpen.
    Eh, hij gebruikt GEEN van de aangedragen oplossingen. Zoals gezegd zijn ALLE aangedragen oplossingen beter dan dat wat hij (blijft) gebruiken. Lees het nog even rustig door.

    En over drammen gesproken, moet ik nog even een conversatie van jouw opzoeken met betrekking tot het controleren van userinput? Waarbij je overigens terecht melde dat je dat wel moet doen. Nu dring ik aan op userinput controlle en dan ben ik 'een triest figuur' terwijl ik toen 'onvolledig' was. Make up your mind.

    Hoor eens, wanneer er 4 goede oplossingen gepost zijn en de vraagsteller gebruikt er GEEN, is hij dan niet dusdanig eigenwijs dat verder helpen een beetje nutteloos wordt?
    DionysuZdinsdag 29 november 2005 @ 17:36
    @Jera

    En dan ga je weer problemen krijgen bij veel PHP versies als je eerder geboren bent dan 1970?
    JeRadinsdag 29 november 2005 @ 17:39
    quote:
    Op dinsdag 29 november 2005 17:36 schreef DionysuZ het volgende:
    @Jera

    En dan ga je weer problemen krijgen bij veel PHP versies als je eerder geboren bent dan 1970?
    Timestamps gebruiken slaat nergens op, was foutje beter kan de vraagsteller gebruik maken van de dag in het jaar en de sterrenbeelden als ranges van dagen in het jaar opslaan
    JeRadinsdag 29 november 2005 @ 17:42
    quote:
    Op dinsdag 29 november 2005 17:34 schreef Swetsenegger het volgende:
    Eh, hij gebruikt GEEN van de aangedragen oplossingen. Zoals gezegd zijn ALLE aangedragen oplossingen beter dan dat wat hij (blijft) gebruiken. Lees het nog even rustig door.
    Waar zie je dat? Hopelijk schrijft hij zelf een oplossing adhv de gegeven oplossingen, ipv de gegeven oplossingen te copy pasten.
    quote:
    En over drammen gesproken, moet ik nog even een conversatie van jouw opzoeken met betrekking tot het controleren van userinput? Waarbij je overigens terecht melde dat je dat wel moet doen. Nu dring ik aan op userinput controlle en dan ben ik 'een triest figuur' terwijl ik toen 'onvolledig' was. Make up your mind.
    Hoef je niet op te zoeken hoor. Feit is dat op elke betere manier die aangedragen is al wordt gecontroleerd op user input. Bovendien is er hier sprake van ofwel een switch ofwel array elementen, dus er kan weinig verkeerds voorkomen. In jouw geval was je bezig met SQL en daar zat gewoon een zware fout in (waar het minstens 2 pagina's duurde voordat het duidelijk werd).
    quote:
    Hoor eens, wanneer er 4 goede oplossingen gepost zijn en de vraagsteller gebruikt er GEEN, is hij dan niet dusdanig eigenwijs dat verder helpen een beetje nutteloos wordt?
    Waar staat dat hij er geen gebruikt? En juist dat soort mensen moet je verder helpen, mochten ze er zijn, want de mensen die vanuit zich zelf al goed werken hebben vaak geen hulp nodig

    [ Bericht 1% gewijzigd door JeRa op 29-11-2005 17:50:27 ]
    DionysuZdinsdag 29 november 2005 @ 17:45
    quote:
    Op dinsdag 29 november 2005 17:39 schreef JeRa het volgende:

    [..]

    Timestamps gebruiken slaat nergens op, was foutje beter kan de vraagsteller gebruik maken van de dag in het jaar en de sterrenbeelden als ranges van dagen in het jaar opslaan
    Ik denk niet dat het zo simpel is . De dag waarop een sterrenbeeld begint verschilt nogal. Bijv. in een schrikkeljaar begint kreeft op 21 juni. Alsook het jaar erop en het jaar erop, maar het 3e jaar na het schrikkeljaar begint kreeft op 22 juni. Vissen begint op 19 februari, behalve 1 jaar na het schrikkeljaar, dan op 18 februari.. etc.
    JeRadinsdag 29 november 2005 @ 17:47
    quote:
    Op dinsdag 29 november 2005 17:45 schreef DionysuZ het volgende:

    [..]

    Ik denk niet dat het zo simpel is . De dag waarop een sterrenbeeld begint verschilt nogal. Bijv. in een schrikkeljaar begint kreeft op 21 juni. Alsook het jaar erop en het jaar erop, maar het 3e jaar na het schrikkeljaar begint kreeft op 22 juni. Vissen begint op 19 februari, behalve 1 jaar na het schrikkeljaar, dan op 18 februari.. etc.
    Als het puur met schrikkeljaren te maken heeft, dan maak je toch 4 rangesets (eentje voor elk jaar, inclusief het schrikkeljaar) waarbij je de ranges afhankelijk van de 'wetten' van sterrenbeelden aanpast?
    DionysuZdinsdag 29 november 2005 @ 17:48
    quote:
    Op dinsdag 29 november 2005 17:47 schreef JeRa het volgende:

    [..]

    Als het puur met schrikkeljaren te maken heeft, dan maak je toch 4 rangesets (eentje voor elk jaar, inclusief het schrikkeljaar) waarbij je de ranges afhankelijk van de 'wetten' van sterrenbeelden aanpast?
    the_disheaverdinsdag 29 november 2005 @ 17:59
    quote:
    Op dinsdag 29 november 2005 17:47 schreef JeRa het volgende:

    [..]

    Als het puur met schrikkeljaren te maken heeft, dan maak je toch 4 rangesets (eentje voor elk jaar, inclusief het schrikkeljaar) waarbij je de ranges afhankelijk van de 'wetten' van sterrenbeelden aanpast?
    Maar niet elke 4 jaar is een schrikkeljaar (geloof als het deelbaar is door 4, behalve bij hele eeuwen? dus 2000 had niet een)

    Of zal daar al een PHP functie voor bestaan?
    DionysuZdinsdag 29 november 2005 @ 18:01
    quote:
    Op dinsdag 29 november 2005 17:59 schreef the_disheaver het volgende:

    [..]

    Maar niet elke 4 jaar is een schrikkeljaar (geloof als het deelbaar is door 4, behalve bij hele eeuwen? dus 2000 had niet een)

    Of zal daar al een PHP functie voor bestaan?
    En 2000 was juist weer de uitzondering . Om de 4 jaar is een schrikkeljaar. Behalve als het een eeuwwisseling betreft. Als de wisseling weer deelbaar is door 400 weer wel. En dat was 2000
    DionysuZdinsdag 29 november 2005 @ 18:02
    http://nl2.php.net/manual/en/function.mcal-is-leap-year.php
    pc-fr34kdinsdag 29 november 2005 @ 18:26
    quote:
    Er is ook voor alles al een functie. ! . Weer een nieuwe functie geleerd, erg handig. .
    wobbeldinsdag 29 november 2005 @ 18:30
    Die wist ik wel

    Maar nu moet ik dus gvd ook nog zelf een functie schrijven voor sterrenbeelden
    Swetseneggerdinsdag 29 november 2005 @ 18:45
    quote:
    Op dinsdag 29 november 2005 17:42 schreef JeRa het volgende:

    [..]

    Waar zie je dat? Hopelijk schrijft hij zelf een oplossing adhv de gegeven oplossingen, ipv de gegeven oplossingen te copy pasten.
    Als hij een betere oplossing had geschreven zou je me niet gehoord hebben. Het gaat er nu gewoon om dat ALLE oplossingen genegeerd worden:
    quote:
    Op dinsdag 29 november 2005 14:21 schreef Desdinova het volgende:
    ik zei toch dat ik t van die array had geleerd? die ga ik de volgende keer wel gebruiken

    <knip>

    ik gaf al eerder toe dat die array beter is, maar het is voor nu ff overbodige luxe. Volgens mij kan deze code namelijk niet fout gaan, tenzij je zelf in je $get kloot, maar dan is t je eigen schuld.
    Stel dan geen vraag denk ik dan .
    quote:
    Hoef je niet op te zoeken hoor. Feit is dat op elke betere manier die aangedragen is al wordt gecontroleerd op user input. Bovendien is er hier sprake van ofwel een switch ofwel array elementen, dus er kan weinig verkeerds voorkomen. In jouw geval was je bezig met SQL en daar zat gewoon een zware fout in (waar het minstens 2 pagina's duurde voordat het duidelijk werd).
    *zucht* je begrijpt het punt niet. Ik gaf toen een eenvoudig voorbeeld, vervolgens werd je pissed dat ik 'for the sake of explanation' user controle eruit had gelaten. Vervolgens ontstond een discussie over het gevaar van SQL injection, maar had niets te maken met het voorbeeld wat ik gaf en jouw 'gedram' nav dat voorbeeld.

    Nu ben ik in dit geval WEL volledig. wijs hem op de gevaren van zijn code en dan noem je me opeens triest figuur. Onbegrijpelijk.
    quote:
    Waar staat dat hij er geen gebruikt? En juist dat soort mensen moet je verder helpen, mochten ze er zijn, want de mensen die vanuit zich zelf al goed werken hebben vaak geen hulp nodig
    Zie bovenstaande quote. Als mensen gewoon niet geholpen willen worden houdt het wat mij betreft op. Thats all. Dat mag je triest noemen, maar daar heb ik geen zin in.

    En wat mij betreft is deze discussie gesloten.
    Swetseneggerdinsdag 29 november 2005 @ 18:49
    Korte vraag. Onderbreek sleep() het script echt. Met andere woorden, stel ik heb een script welke potentieel gezien enkele minuten kan duren (mail). Mijn hoster heeft de standaard beperking van 30 seconden execution time aanstaan en safe_mode, dus geen mogelijkheid om de execution time te vergroten.

    Kan ik nu na 29 seconden even sleep() en heb ik dan weer 29 seconden?
    DionysuZdinsdag 29 november 2005 @ 18:52
    quote:
    Note: The set_time_limit() function and the configuration directive max_execution_time only affect the execution time of the script itself. Any time spent on activity that happens outside the execution of the script such as system calls using system(), the sleep() function, database queries, etc. is not included when determining the maximum time that the script has been running.
    http://nl2.php.net/sleep
    Swetseneggerdinsdag 29 november 2005 @ 19:17
    quote:
    Op dinsdag 29 november 2005 18:52 schreef DionysuZ het volgende:

    [..]

    http://nl2.php.net/sleep
    Die note staat er bij mij niet bij op php.net. En ja, ik kijk deze keer op engels
    En op set_time_limit staat
    quote:
    Note: The set_time_limit() function and the configuration directive max_execution_time only affect the execution time of the script itself. Any time spent on activity that happens outside the execution of the script such as system calls using system(), stream operations, database queries, etc. is not included when determining the maximum time that the script has been running.
    Ik was namelijk al een keer op zoek geweest en kon het niet vinden op php.net

    -edit- Maar zoals ik het lees begint de execution time dus niet opnieuw na een sleep. Sleep wordt alleen niet opgeteld bij de execution time.

    [ Bericht 23% gewijzigd door Swetsenegger op 29-11-2005 19:23:16 ]
    Jimmydinsdag 29 november 2005 @ 20:27
    Je zou het ff snel kunnen testen door een testscript net iets langer dan 30 seconden te laten duren dmv sleep?
    Swetseneggerdinsdag 29 november 2005 @ 20:40
    quote:
    Op dinsdag 29 november 2005 20:27 schreef Jimmy het volgende:
    Je zou het ff snel kunnen testen door een testscript net iets langer dan 30 seconden te laten duren dmv sleep?
    Ja, beetje lastig, moet ik namelijk een script bouwen welke meer dan 30 seconden duurt
    En ik had het al opgelost door een while loop de eerste 15 resultaten uit de database te laten mailen. Vervolgens de waarde waar ik gebleven was op te slaan en de pagina weer aanroepen.

    Ik had 1 fout gemaakt. de waarde waar ik gebleven was, sloeg ik op in een cookie. En een cronjob doet verdomd weinig met cookies natuurlijk, dus na de eerste 15e resultaten stopte het script Uiteraard werkte de test wel omdat ik dan zelf het script opende. En m'n browser accepteert wel cookies.

    Ok, het script dus ombouwen door de waarde naar een txt file te schrijven, maar nu heb ik een probleem

    Stel je voor dat in de txt file het getal 15 staat.
    1$offset=intval(readfile('offset.txt'));

    $offset is 2 ipv 15
    Jimmydinsdag 29 november 2005 @ 20:45
    Wat is het als je intval achterwege laat, en het met print_r ptint?

    Maakt readfile er geen array van?
    JeRadinsdag 29 november 2005 @ 20:48
    quote:
    int readfile ( string filename [, bool use_include_path [, resource context]] )
    ...
    Returns the number of bytes read from the file. If an error occurs, FALSE is returned and unless the function was called as @readfile(), an error message is printed.
    http://nl2.php.net/readfile

    Als je iets wilt debuggen begin je gewoon je functie-aanroepen uit elkaar te werken en de returnwaardes van de eerste aanroep te controleren. Maar hier helpt zelfs de PHP manual al
    Jimmydinsdag 29 november 2005 @ 20:50
    Lijkt er op dat je of file_get_contents() of file() moet gebruiken in dit geval.
    Swetseneggerdinsdag 29 november 2005 @ 20:53
    quote:
    Op dinsdag 29 november 2005 20:48 schreef JeRa het volgende:

    [..]

    http://nl2.php.net/readfile

    Als je iets wilt debuggen begin je gewoon je functie-aanroepen uit elkaar te werken en de returnwaardes van de eerste aanroep te controleren. Maar hier helpt zelfs de PHP manual al

    Compleet overheen gelezen.
    Het vreemde is dat file() zegt dat het hetzelfde is als readfile, maar ipv een string een array terug geeft.

    Echter geeft file wel degelijk de inhoud terug en niet het aantal bytes. Ik gebruikte readfile uiteraard omdat het maar 1 waarde is.

    file_get_contents dus

    Ander probleem
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $offset
    =intval(file_get_contents('offset.txt'));
    echo
    $offset;
    $offset+=15;
    $fp=fopen('offset.txt','w+');

            
    fwrite($fp,"$offset");
            
    fclose($fp);
    header("location: ".$_SERVER['PHP_SELF']);
    ?>


    Dit zou infinite moeten loopen. Maar hij stopt na 1 loop.
    JeRadinsdag 29 november 2005 @ 21:01
    quote:
    Op dinsdag 29 november 2005 20:53 schreef Swetsenegger het volgende:

    [..]


    Compleet overheen gelezen.
    Het vreemde is dat file() zegt dat het hetzelfde is als readfile, maar ipv een string een array terug geeft.

    Echter geeft file wel degelijk de inhoud terug en niet het aantal bytes. Ik gebruikte readfile uiteraard omdat het maar 1 waarde is.

    file_get_contents dus

    Ander probleem
    [ code verwijderd ]

    Dit zou infinite moeten loopen. Maar hij stopt na 1 loop.
    Het is niet zo'n goed idee een header('Location:') uit te voeren naar hetzelfde PHP-script; Firefox geeft er na een aantal van dit soort verwijzingen al de brui aan. Beter doe je een combinatie van Javascript en PHP, waarbij je met Javascript er voor zorgt dat het scriptje om de zoveel tijd wordt aangeroepen Overigens, een location moet eigenlijk een volledige URI zijn (http://...).

    Als je het in IE test en hij loopt maar 1 keer, dan zou ik het zo niet weten. Debuggen! Doe eens een echo $output nadat je += 15 hebt gedaan, en waarom open je het bestand in modus 'w+'?
    Jimmydinsdag 29 november 2005 @ 21:01
    Wat is de output als je header vervangt door print?

    Dus:
    print("location: ".$_SERVER['PHP_SELF']);

    Gewoon de goeie locatie?
    Jimmydinsdag 29 november 2005 @ 21:04
    Wat je ook doen ipv header(Location) is in je html output iets als:
    <meta http-equiv="refresh" content="1">
    in je html zetten, dan refresht je pagina ook na 1 seconde.

    Geen idee of Firefox hier een beperking voor het aantal verwijzingen in heeft.
    Swetseneggerdinsdag 29 november 2005 @ 21:10
    @jera, Het vreemde is dat hij het voorheen met de oplossing met het cookie wel goed deed. Javascript gaat niet, want dat is clientside, en het is een cronjob.

    @Jimmy, ja de header verwijzing is gewoon goed, ik heb het zelfs hardcoded geprobeerd met hetzelfde resultaat. Een refresh werkt uiteraard niet, want ik weet niet of mijn script al is uitgevoerd.

    Hier het volledige script
    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
    $result
    =mysql_query('SELECT COUNT(id) AS aantal FROM table WHERE datum=DATE_SUB(NOW(), INTERVAL 84 DAY)'); // aantal te versturen mails
    $row = mysql_fetch_assoc($result);

    $offset=intval(file_get_contents('offset.txt')); //offset waar ik gebleven ben

    if($row['aantal']-$offset &lt;=0){  //indien true, alle mails verstuurt
            
    $offset=0;
            
    $fp=fopen('offset.txt','w');
            
    fwrite($fp,"$offset");
            
    fclose($fp);
            die();
    }

    $query="SELECT * FROM table WHERE datum=DATE_SUB(NOW(), INTERVAL 84 DAY) LIMIT ".$offset.",15";
    $result=mysql_query($query);
    while(
    $row=mysql_fetch_assoc($result)){
    // 15 mails versturen
    }
    $offset+=15; //offset ophogen
    $fp=fopen('offset.txt','w+');

            
    fwrite($fp,"$offset");
            
    fclose($fp);
    header("location: ".$_SERVER['PHP_SELF']); //hele circus opnieuw
    ?>
    JeRadinsdag 29 november 2005 @ 21:13
    quote:
    Op dinsdag 29 november 2005 21:10 schreef Swetsenegger het volgende:
    @jera, Het vreemde is dat hij het voorheen met de oplossing met het cookie wel goed deed. Javascript gaat niet, want dat is clientside, en het is een cronjob.
    Een cronjob!? Je doet een header() op een cronjobfile? Welke browser kan dan reageren op die header()?

    edit: normaal als je een PHP-script uitvoert gebeurt dit via de browser. Als je dan in je script een header() uitvoert worden de headers via de webserver naar de browser gestuurd, samen met eventuele output (daarom is het vaak belangrijk om na een location-header een exit() uit te voeren zodat er hopelijk nog geen output is). De browser krijgt deze headers binnen en ziet de location-header, en vraagt vervolgens de pagina opnieuw op.

    Een cron-daemon is geen browser, die draait gewoon scriptjes en stuurt mailtjes als er output is. Meer doet het niet

    Waarom doe je geen for-loopje?
    Jimmydinsdag 29 november 2005 @ 21:17
    In een cronjob kun je dan niet via exec() het php-script zichlzelf nogmaals laten starten?

    Wel HEEL erg goed kijken dat ie niet eeuwig zichzelf blijft aanroepen natuurlijk.
    Swetseneggerdinsdag 29 november 2005 @ 21:18
    quote:
    Op dinsdag 29 november 2005 21:13 schreef JeRa het volgende:

    [..]

    Een cronjob!? Je doet een header() op een cronjobfile? Welke browser kan dan reageren op die header()?

    KUT.
    quote:
    Waarom doe je geen for-loopje?
    maximum execution time. Ik zit aan een limiet van 30 seconden. Op een safe_mode server En ik heb in potentie heel veel mails te versturen.

    Overigens werkt lokaal de header wel. Uiteraard met een browser. Zou de hoster een bescherming hebben misschien?
    Swetseneggerdinsdag 29 november 2005 @ 21:19
    quote:
    Op dinsdag 29 november 2005 21:17 schreef Jimmy het volgende:
    In een cronjob kun je dan niet via exec() het php-script zichlzelf nogmaals laten starten?

    Wel HEEL erg goed kijken dat ie niet eeuwig zichzelf blijft aanroepen natuurlijk.
    De hoster biedt niet eens cronjobs aan, ik maak gebruik van een online cronservice
    JeRadinsdag 29 november 2005 @ 21:22
    quote:
    Op dinsdag 29 november 2005 21:18 schreef Swetsenegger het volgende:

    [..]


    KUT.
    [..]

    maximum execution time. Ik zit aan een limiet van 30 seconden. Op een safe_mode server En ik heb in potentie heel veel mails te versturen.

    Overigens werkt lokaal de header wel. Uiteraard met een browser. Zou de hoster een bescherming hebben misschien?
    Hebben ze safe_mode aangezet voor scriptjes die op PHP-cli (commandline) draaien? Dan zit er iets niet goed in de beveiliging van hun server ik zou ze even een mailtje sturen met de vraag of ze safe_mode voor PHP uitzetten, safe_mode is vooral bedoeld voor mod_php (of voor PHP-cgi, voor mijn part).

    Cron-opdrachten worden namelijk uitgevoerd onder de user van wie de crontab is. Wat dat betreft moeten de rechten in hun systeem goed staan, dus is er geen enkele reden om safe_mode aan te laten staan.

    Bieden ze geen at-service aan?
    Swetseneggerdinsdag 29 november 2005 @ 21:27
    quote:
    Op dinsdag 29 november 2005 21:22 schreef JeRa het volgende:

    [..]

    Hebben ze safe_mode aangezet voor scriptjes die op PHP-cli (commandline) draaien? Dan zit er iets niet goed in de beveiliging van hun server ik zou ze even een mailtje sturen met de vraag of ze safe_mode voor PHP uitzetten, safe_mode is vooral bedoeld voor mod_php (of voor PHP-cgi, voor mijn part).

    Cron-opdrachten worden namelijk uitgevoerd onder de user van wie de crontab is. Wat dat betreft moeten de rechten in hun systeem goed staan, dus is er geen enkele reden om safe_mode aan te laten staan.

    Ze bieden geen anacron-service aan?
    Ze bieden helemaal niets aan en ze willen niets wijzigen ook. Nadeel van een goedkope hoster

    www.tweedehandsboek.net/phpinfo.php
    1
    2
    3
    4
    safe_mode On On 
    safe_mode_exec_dir no value no value 
    safe_mode_gid Off Off 
    safe_mode_include_dir /usr/lib/php /usr/lib/php 


    Zover ik kan zien kan ik dus max_execution_time niet gebruiken toch?
    JeRadinsdag 29 november 2005 @ 21:29
    quote:
    Op dinsdag 29 november 2005 21:27 schreef Swetsenegger het volgende:

    [..]

    Ze bieden helemaal niets aan en ze willen niets wijzigen ook. Nadeel van een goedkope hoster

    www.tweedehandsboek.net/phpinfo.php
    [ code verwijderd ]

    Zover ik kan zien kan ik dus max_execution_time niet gebruiken toch?
    Nee. Wat je wel kunt doen via de meeste cronservices is zeggen dat een scriptje elke x minuten moet draaien, kun je dat niet gebruiken?
    Swetseneggerdinsdag 29 november 2005 @ 21:32
    quote:
    Op dinsdag 29 november 2005 21:29 schreef JeRa het volgende:

    [..]

    Nee. Wat je wel kunt doen via de meeste cronservices is zeggen dat een scriptje elke x minuten moet draaien, kun je dat niet gebruiken?
    Die service was 5 euro duurder geloof ik
    Maar er zit weinig anders op, aangezien een header niet gaat werken.
    JeRadinsdag 29 november 2005 @ 21:43
    quote:
    Op dinsdag 29 november 2005 21:32 schreef Swetsenegger het volgende:

    [..]

    Die service was 5 euro duurder geloof ik
    Maar er zit weinig anders op, aangezien een header niet gaat werken.
    Dat is meteen de reden waarom ik eigen servers draai voor gmta.nl (en de subdomeinen daarvan die ik aan mensen geef die tegen hetzelfde probleem waren opgelopen: te dure of slechte hosting)
    Jimmydinsdag 29 november 2005 @ 21:45
    Ik heb een site+database van alle optredens van bands waar ik geweest ben.

    Ik wou nu als oefening de code herschrijven om ook classes te gebruiken. Voor bands, locaties & optredens zou ik dan een class kunnen gebruiken. Voor de hand liggende objecten op zich.

    Wat ik me nu alleen afvraag is, is in hoeverre ik de classes in de verschillende andere classen moet gebruiken:
    Bijvoorbeeld in de optreden-class: hang ik daar band & locatie classes aan, of zorg ik voor variablen waarin de id's van de betreffende bands en locaties instaan, die ik als ik meer informatie nodig heb over die band of locatie dan weer aan die class voer.

    Ik snap mezelf nu haast niet meer. Iemand gedachten hierover?
    Jimmydinsdag 29 november 2005 @ 21:45
    quote:
    Op dinsdag 29 november 2005 21:43 schreef JeRa het volgende:
    Dat is meteen de reden waarom ik eigen servers draai voor gmta.nl (en de subdomeinen daarvan die ik aan mensen geef die tegen hetzelfde probleem waren opgelopen: te dure of slechte hosting)
    Yup, lange leve eigen hosting, of in mijn geval een vriend met eigen hosting
    Swetseneggerdinsdag 29 november 2005 @ 22:21
    quote:
    Op dinsdag 29 november 2005 21:45 schreef Jimmy het volgende:

    [..]

    Yup, lange leve eigen hosting, of in mijn geval een vriend met eigen hosting
    Maar ik heb nog steeds een probleem
    een meta refresh is natuurlijk ook alleen clientside, correct?
    Jimmydinsdag 29 november 2005 @ 22:31
    quote:
    Op dinsdag 29 november 2005 22:21 schreef Swetsenegger het volgende:
    Maar ik heb nog steeds een probleem
    een meta refresh is natuurlijk ook alleen clientside, correct?
    Ja.

    Maar als ik het goed begrijp wordt je script command line aangeroepen?
    Is dit dan geen optie?
    http://nl2.php.net/manual/en/function.exec.php

    En dan exec("php scriptnaam");
    Swetseneggerdinsdag 29 november 2005 @ 22:35
    quote:
    Op dinsdag 29 november 2005 22:31 schreef Jimmy het volgende:

    [..]

    Ja.

    Maar als ik het goed begrijp wordt je script command line aangeroepen?
    Is dit dan geen optie?
    http://nl2.php.net/manual/en/function.exec.php

    En dan exec("php scriptnaam");
    Hoe bedoel je commandline aangeroepen?
    Ik maak gebruik van een online cronservice www.cronservice.nl waar je gewoon de url van je script kan opgeven zodat die uitgevoerd wordt

    Volgens mij werkt jouw oplossing dus niet.
    Jimmydinsdag 29 november 2005 @ 22:47
    Ah, ok.

    Ik wist niet eens dat dat soort services bestonden.
    Ik ging er gewoon vanuit dat als het een cronjob was, het vanaf de commandline werd gestart, maar met deze service wordt er dus wel een script via het web opgestart.

    Poeh, geen idee hoe je dan vanuit dat script het script opnieuw kan aanroepen.
    Swetseneggerdinsdag 29 november 2005 @ 22:51
    quote:
    Op dinsdag 29 november 2005 22:47 schreef Jimmy het volgende:
    Ah, ok.

    Ik wist niet eens dat dat soort services bestonden.
    Ik ging er gewoon vanuit dat als het een cronjob was, het vanaf de commandline werd gestart, maar met deze service wordt er dus wel een script via het web opgestart.

    Poeh, geen idee hoe je dan vanuit dat script het script opnieuw kan aanroepen.
    Nee, ik ook niet. I'm fucked.
    Niet de eerste keer, b-one heeft wel meer settings welke nergens vermeld staan en welke je script aardig kunnen verneuken (zo kan je ook maar 1 mail per 5 minuten versturen wanneer in de afzender of ontvanger geen adres van je domein staat)
    JeRadinsdag 29 november 2005 @ 22:55
    quote:
    Op dinsdag 29 november 2005 22:35 schreef Swetsenegger het volgende:

    [..]

    Hoe bedoel je commandline aangeroepen?
    Ik maak gebruik van een online cronservice www.cronservice.nl waar je gewoon de url van je script kan opgeven zodat die uitgevoerd wordt

    Volgens mij werkt jouw oplossing dus niet.
    Sodeju, dat is slim bedacht dat project www.cronservice.nl dan. Het is namelijk best simpel op te zetten en goud geld mee te verdienen natuurlijk. Wat betreft je probleem, weet ook even geen oplossing.
    Swetseneggerdinsdag 29 november 2005 @ 22:59
    quote:
    Op dinsdag 29 november 2005 22:55 schreef JeRa het volgende:

    [..]

    Sodeju, dat is slim bedacht dat project www.cronservice.nl dan. Het is namelijk best simpel op te zetten en goud geld mee te verdienen natuurlijk. Wat betreft je probleem, weet ook even geen oplossing.
    Ik ben het helemaal met je eens.
    Ik kwam er dus achter dat mijn hoster absoluut geen cronservice wilde bieden. Niet in controlpanel, ook niet opzetten na verzoek.

    En daar zat ik, met een advertentie pagina, waar ik elke dag wil kijken of mensen hun aanmelding hebben geactiveerd (en anders deleten) en advertenties welke ik 3 maanden wil laten 'verlengen' dmv het versturen van een mail.

    Om nu elke dag zelf in mijn browsertje die scripts te openen leek me wat omslachtig. Dus gezocht op google en jawel! Maar er zijn er echt niet gek veel. Deze is zover ik weet de enige in nederland, en absoluut niet duur. ¤ 4,95 per jaar voor 5 crons welke 1 maal per dag kunnen starten. Voor elke cron welke je met een interval van 5 minuten wil laten starten ¤ 4,95 extra.

    Op zich voor mij een oplossing welke goed betaalbaar is. Voor hem is het eenmalig een server inrichten. De crons stelt de klant zelf in, en je hebt er geen omkijken na.
    JeRadinsdag 29 november 2005 @ 23:13
    quote:
    Op dinsdag 29 november 2005 22:59 schreef Swetsenegger het volgende:

    [..]

    Op zich voor mij een oplossing welke goed betaalbaar is. Voor hem is het eenmalig een server inrichten. De crons stelt de klant zelf in, en je hebt er geen omkijken na.
    Ik ben ongeveer met hetzelfde bezig maar dan iets uitgebreider. Op het moment heb ik AAP gemaakt, Ares Administrative Panel, wat een in PHP geschreven interactive commandline utility is waarmee ik als admin heel makkelijk users kan maken. Daarbij hoort dan optioneel quotas, webruimte, databases, e-mailadressen enzovoort.

    Straks is het de bedoeling dat op controlpanel.gmta.nl de gebruikers straks zelf alles kunnen instellen, en daar hoort dan ook cronjob bij (dat kunnen ze ook door met SSH in te loggen en crontab -e uit te voeren, maar veel mensen hebben niet 1-2-3 door hoe die dingen in elkaar zitten). Misschien moet ik er ook maar geld voor gaan vragen straks, voor de nieuwe gebruikers dan
    Swetseneggerdinsdag 29 november 2005 @ 23:15
    quote:
    Op dinsdag 29 november 2005 23:13 schreef JeRa het volgende:

    [..]

    Ik ben ongeveer met hetzelfde bezig maar dan iets uitgebreider. Op het moment heb ik AAP gemaakt, Ares Administrative Panel, wat een in PHP geschreven interactive commandline utility is waarmee ik als admin heel makkelijk users kan maken. Daarbij hoort dan optioneel quotas, webruimte, databases, e-mailadressen enzovoort.

    Straks is het de bedoeling dat op controlpanel.gmta.nl de gebruikers straks zelf alles kunnen instellen, en daar hoort dan ook cronjob bij (dat kunnen ze ook door met SSH in te loggen en crontab -e uit te voeren, maar veel mensen hebben niet 1-2-3 door hoe die dingen in elkaar zitten). Misschien moet ik er ook maar geld voor gaan vragen straks, voor de nieuwe gebruikers dan
    sowieso is het misschien handig om hier naar te verwijzen: http://www.phpfreakz.nl/artikelen.php?aid=112
    morpheus_at_workwoensdag 30 november 2005 @ 10:08
    wat je anders zou kunnen doen , ik neem aan dat je in een veld vermeld dat de mail naar iemand is verstuurd

    anders pak je hier iedere keer er een x aantal uit en update je die x , dan loop je de query voor het selecteren waarbij veld ongelijk is aan verstuurd , hiervan pak je de limit die je bepaald , na het versturen laat je de pagina op nieuw in , procedure wordt opnieuw gestart en verhaal begint opnieuw. je kan uit de loop springen als je aantal records wat je selecteerd 0 is , eventueel kun je daarna het verstuur veld resetten of wat anders mee doen (wel naar andere pagina verwijzen als je klaar bent , anders begint je loop weer opnieuw en wordt iedereen suf gemailt).

    afhankelijk van de server zou je het aantal per 29 seconden uit kunnen proberen
    Swetseneggerwoensdag 30 november 2005 @ 10:55
    quote:
    Op woensdag 30 november 2005 10:08 schreef morpheus_at_work het volgende:
    wat je anders zou kunnen doen , ik neem aan dat je in een veld vermeld dat de mail naar iemand is verstuurd

    anders pak je hier iedere keer er een x aantal uit en update je die x , dan loop je de query voor het selecteren waarbij veld ongelijk is aan verstuurd , hiervan pak je de limit die je bepaald , na het versturen laat je de pagina op nieuw in , procedure wordt opnieuw gestart en verhaal begint opnieuw. je kan uit de loop springen als je aantal records wat je selecteerd 0 is , eventueel kun je daarna het verstuur veld resetten of wat anders mee doen (wel naar andere pagina verwijzen als je klaar bent , anders begint je loop weer opnieuw en wordt iedereen suf gemailt).

    afhankelijk van de server zou je het aantal per 29 seconden uit kunnen proberen
    Ja dat doe ik dus
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    $result=mysql_query('SELECT COUNT(id) AS aantal FROM table WHERE datum=DATE_SUB(NOW(), INTERVAL 84 DAY)'); // aantal te versturen mails
    $row = mysql_fetch_assoc($result);

    $offset=intval(file_get_contents('offset.txt')); //offset waar ik gebleven ben

    if($row['aantal']-$offset <=0){  //indien true, alle mails verstuurt
            $offset=0;
            $fp=fopen('offset.txt','w');
            fwrite($fp,"$offset");
            fclose($fp);
            die();
    }

    $query="SELECT * FROM table WHERE datum=DATE_SUB(NOW(), INTERVAL 84 DAY) LIMIT ".$offset.",15";
    $result=mysql_query($query);
    while($row=mysql_fetch_assoc($result)){
    // 15 mails versturen
    }
    $offset+=15; //offset ophogen
    $fp=fopen('offset.txt','w+');

            fwrite($fp,"$offset");
            fclose($fp);
    header("location: ".$_SERVER['PHP_SELF']); //hele circus opnieuw

    Het probleem is. Hoe roep ik de pagina opnieuw aan na de eerste batch?
    morpheus_at_workwoensdag 30 november 2005 @ 11:43
    javascriptje : document.redirect actie
    Swetseneggerwoensdag 30 november 2005 @ 11:51
    quote:
    Op woensdag 30 november 2005 11:43 schreef morpheus_at_work het volgende:
    javascriptje : document.redirect actie
    Die wordt client side door een browser uitgevoerd. Het script wordt aangeroepen door een cron, niet door een browser.

    DAT is het probleem Anders had de header ook gewoon gewerkt.
    header("location: ".$_SERVER['PHP_SELF']); //hele circus opnieuw
    Ik heb een serverside refresh nodig
    pc-fr34kwoensdag 30 november 2005 @ 11:56
    quote:
    Op woensdag 30 november 2005 11:51 schreef Swetsenegger het volgende:

    [..]

    Die wordt client side door een browser uitgevoerd. Het script wordt aangeroepen door een cron, niet door een browser.

    DAT is het probleem Anders had de header ook gewoon gewerkt.
    header("location: ".$_SERVER['PHP_SELF']); //hele circus opnieuw
    Ik heb een serverside refresh nodig
    Gewoon met commandline het php-script aanroepen.
    Swetseneggerwoensdag 30 november 2005 @ 11:59
    quote:
    Op woensdag 30 november 2005 11:56 schreef pc-fr34k het volgende:

    [..]

    Gewoon met commandline het php-script aanroepen.

    Misschien handig wanneer de rest ook gelezen wordt.
    Mijn hoster ondersteunt geen cronjobs. Ik ben uitgeweken naar een online cronservice www.cronservice.nl.
    Er valt dus niets vanaf CL aan te roepen .
    pc-fr34kwoensdag 30 november 2005 @ 12:08
    quote:
    Op woensdag 30 november 2005 11:59 schreef Swetsenegger het volgende:

    [..]


    Misschien handig wanneer de rest ook gelezen wordt.
    Mijn hoster ondersteunt geen cronjobs. Ik ben uitgeweken naar een online cronservice www.cronservice.nl.
    Er valt dus niets vanaf CL aan te roepen .
    Oh, ik had alles gelezen maar daar heb ik dan overheen gelezen, ik las alleen dat je maxexecutiontime en safemode had. .

    Een loop in de crobjob geen idee?
    Dus je hebt zeg maar 1 pagina die de cronservice een keer aanroept. En die pagina roept het echte script aan in een loop. Dus dat het script gewoon meerdere keren(met bv een waarde door geven waar je bent gebleven) aan wordt geroepen door script1.
    morpheus_at_workwoensdag 30 november 2005 @ 12:16
    quote:
    Op woensdag 30 november 2005 12:08 schreef pc-fr34k het volgende:

    [..]

    Oh, ik had alles gelezen maar daar heb ik dan overheen gelezen, ik las alleen dat je maxexecutiontime en safemode had. .

    Een loop in de crobjob geen idee?
    Dus je hebt zeg maar 1 pagina die de cronservice een keer aanroept. En die pagina roept het echte script aan in een loop. Dus dat het script gewoon meerdere keren(met bv een waarde door geven waar je bent gebleven) aan wordt geroepen door script1.
    dan liep hij tegen het probleem aan dat zijn pagina maar een executie tijd van 30 seconden mocht hebben
    pc-fr34kwoensdag 30 november 2005 @ 12:32
    quote:
    Op woensdag 30 november 2005 12:16 schreef morpheus_at_work het volgende:

    [..]

    dan liep hij tegen het probleem aan dat zijn pagina maar een executie tijd van 30 seconden mocht hebben
    Je begrijpt me verkeerd, 1 script wordt meerdere keren aangeroepen(dus telkens een kleine execution time)door een ander script. Een script aanroepen in een loop duurt niet zo lang als het andere script al het werk doet...
    Swetseneggerwoensdag 30 november 2005 @ 12:35
    quote:
    Op woensdag 30 november 2005 12:08 schreef pc-fr34k het volgende:

    [..]

    Oh, ik had alles gelezen maar daar heb ik dan overheen gelezen, ik las alleen dat je maxexecutiontime en safemode had. .

    Een loop in de crobjob geen idee?
    Dus je hebt zeg maar 1 pagina die de cronservice een keer aanroept. En die pagina roept het echte script aan in een loop. Dus dat het script gewoon meerdere keren(met bv een waarde door geven waar je bent gebleven) aan wordt geroepen door script1.
    Dat doe ik.
    Ik verstuur 15 mails, die blijven ruim binnen de exectution time. Maar dan moet het script zichzelf opnieuw aanroepen. Hoe roep ik die pagina opnieuw aan?
    header (location: whatever.php) gaat niet werken, want die stuurt die header info naar de browser welke er niet is. De meta tag doet exact hetzelfde, evenals een javascript window.location.

    Dat zijn allemaal clientside redirect/refresh opties en er is geen client. Dus mijn script verstuurt netjes de eerste 15 mails... en stopt dan.
    Swetseneggerwoensdag 30 november 2005 @ 12:36
    quote:
    Op woensdag 30 november 2005 12:32 schreef pc-fr34k het volgende:

    [..]

    Je begrijpt me verkeerd, 1 script wordt meerdere keren aangeroepen(dus telkens een kleine execution time)door een ander script. Een script aanroepen in een loop duurt niet zo lang als het andere script al het werk doet...
    Zelfde probleem. Hoe moet page1 page 2 starten/aanroepen? Includen werkt natuurlijk niet, want dan gaat page 1 gewoon over de max_execution_time heen.

    Op zich zou het kunnen werken. Pagi 1 roept page 2 aan. Sleep voor 30 seconden, nogmaals page 2 aanroepen, sleep voor 30 seconden, net zo lang tot de mails verstuurt zijn. Maar page 1 kan page 2 niet starten zonder dat pagi 1 execution time bij page 2 wordt opgeteld.
    pc-fr34kwoensdag 30 november 2005 @ 12:38
    fsockopen() ?
    Swetseneggerwoensdag 30 november 2005 @ 12:43
    quote:
    Op woensdag 30 november 2005 12:38 schreef pc-fr34k het volgende:
    fsockopen() ?
    Dan wordt page2 min of meer gewoon onderdeel van page 1.
    Immers gaat die socket gewoon de tijd duren welke page 2 nodig heeft.

    Als er een serverside refresh methode zou zijn, zou het opgelost zijn
    pc-fr34kwoensdag 30 november 2005 @ 12:46
    quote:
    Op woensdag 30 november 2005 12:43 schreef Swetsenegger het volgende:

    [..]

    Dan wordt page2 min of meer gewoon onderdeel van page 1.

    Als er een serverside refresh methode zou zijn, zou het opgelost zijn
    Ja, maar je hebt je probleem van je max execution time niet meer lijkt me. En de serverside refresh is er niet/zijn we nog niet achter gekomen, lijkt me toch een goede (eventueel tijdelijke) oplossing.
    Swetseneggerwoensdag 30 november 2005 @ 12:52
    quote:
    Op woensdag 30 november 2005 12:46 schreef pc-fr34k het volgende:

    [..]

    Ja, maar je hebt je probleem van je max execution time niet meer lijkt me.
    Eh jawel. Page 1 gaat gewoon over de max execution time heen.
    Page1 opent de socket. Dat is een stream. Streams worden opgeteld bij executiontime. Script loopt dus de tijd dat page 2 duurt. De tweede keer dat je de socket opent ga je dus met page 1 gewoon over de tijd heen.
    JeRawoensdag 30 november 2005 @ 13:51
    Als het om een paar simpele HTTP requests gaat kan ik je die cronservice ook wel (gratis) bieden; stuur bij interesse maar een mailtje naar staff at tiscali punt ennel
    LeeHarveyOswaldwoensdag 30 november 2005 @ 16:38
    Kan iemand mij mischien nog een keer helpen?

    Mn slowchat / shoutbox werkt nu perfect, ist niet dat een stel noobs vindt dat het nieuwste bericht niet bovenaan, maar onderaan moet komen

    Ik pak dus de 5 nieuwste berichten uit de database, waarvan de oudste bovenin moet komen (Staat nu nog onderaan)

    Dit is het stukje code wat aangepast moet worden:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    // 4 nieuwste berichten laden
                                      
    $ID = $_POST['berichtid'];
                                      
    $sql = "SELECT * FROM slowchat ORDER BY ID DESC LIMIT 0, 5";
                                      
    $query = mysql_query($sql) or die(mysql_error());
                                      while (
    $result = mysql_fetch_array($query)) {

                                      
    $pID = $result['ID'];
                                      
    $puser = $result['user'];
                                      
    $pbericht = $result['bericht'];
                                      
    $ptype = $result['type'];
                                      
    $pdatum = $result['datumtijd'];
                                      
    $viewDate = date("H:i", strtotime($pdatum));
                                      
    $pip = $result['IP'];


                                      echo
    "        <tr>";
                                      echo
    "          <td class='row4' align='center'><img src='http://www.pestforum.nl/forum/style_images/1/nav_m.gif' border='0'  alt='Bericht' /></td>";
                                      echo
    "          <td class='row4'><span class='desc'><font size = 2 color = gray>[".$viewDate."] </font><font size = 2 color = dodgerblue>".$puser." </font> <font size = 2 color = blue> ".$pbericht." </font><br /></span></td>";
                                      echo
    "        </tr>";


                                      }
    ?>


    Iemand een idee? Thnx
    DionysuZwoensdag 30 november 2005 @ 16:41
    ORDER BY ID ASC?
    JeRawoensdag 30 november 2005 @ 16:45
    quote:
    Op woensdag 30 november 2005 16:41 schreef DionysuZ het volgende:
    ORDER BY ID ASC?
    Natuurlijk niet, dan pak je de vijf eerste berichten. Beter kun je de berichten eerst inladen en vervolgens array_reverse() gebruiken
    DionysuZwoensdag 30 november 2005 @ 16:48
    quote:
    Op woensdag 30 november 2005 16:45 schreef JeRa het volgende:

    [..]

    Natuurlijk niet, dan pak je de vijf eerste berichten. Beter kun je de berichten eerst inladen en vervolgens array_reverse() gebruiken
    schaam

    [ Bericht 3% gewijzigd door DionysuZ op 30-11-2005 17:00:10 ]
    LeeHarveyOswaldwoensdag 30 november 2005 @ 17:36
    En hoe moet ik dat in dit geval toepasssen?
    DionysuZwoensdag 30 november 2005 @ 17:37
    euj ff uit mn kop iets van
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $reacties
    = array();
    while (
    $result = mysql_fetch_array($query)) {
      
    $reacties[] = $result;
    }
    $reacties = array_reverse($reacties);
    foreach(
    $reacties as $key=&gt;$val) {
      ...
    }
    ?>

    ofzo?
    LeeHarveyOswaldwoensdag 30 november 2005 @ 17:50
    Ik krijg hem totaal niet werkend...
    DionysuZwoensdag 30 november 2005 @ 17:54
    wat is je code nu dan?
    pc-fr34kwoensdag 30 november 2005 @ 17:55
    quote:
    Op woensdag 30 november 2005 17:36 schreef LeeHarveyOswald het volgende:
    En hoe moet ik dat in dit geval toepasssen?
    Je kan ook gewoon ORDER BY ID DESC doen.

    edit: onee, je wilt de neiuwste 5 maar dan wel in andere volgorde, dan gewoon de array omdraaien idd.
    DionysuZwoensdag 30 november 2005 @ 17:56
    quote:
    Op woensdag 30 november 2005 17:55 schreef pc-fr34k het volgende:

    [..]

    Je kan ook gewoon ORDER BY ID DESC doen.
    dat doet ie al
    pc-fr34kwoensdag 30 november 2005 @ 17:56
    Zie edit. .
    DionysuZwoensdag 30 november 2005 @ 18:09
    ipv
    1
    2
    3
    4
    <?php
    $reacties
    = array_reverse($reacties);
    foreach(
    $reacties as $key=&gt;$val) {
    ?>

    in mijn bovenstaande code, kan ook array_pop gebruikt worden:
    1
    2
    3
    <?php
    while ($result = array_pop($reacties)) {
    ?>
    LeeHarveyOswaldwoensdag 30 november 2005 @ 18:09
    quote:
    Op woensdag 30 november 2005 17:54 schreef DionysuZ het volgende:
    wat is je code nu dan?
    Weggemikt

    Heb een aantal dingen geprobeerd, in het beste geval bleef hij doen wat hij nu doet
    LeeHarveyOswaldwoensdag 30 november 2005 @ 18:11
    quote:
    Op woensdag 30 november 2005 18:09 schreef DionysuZ het volgende:
    ipv
    [ code verwijderd ]

    in mijn bovenstaande code, kan ook array_pop gebruikt worden:
    [ code verwijderd ]
    it works

    thnx
    the_disheaverwoensdag 30 november 2005 @ 18:29
    Hoe kan ik de laatste teken uit een variable eruit halen?

    1
    2
    3
    <?php
    $x
    = 'a,b,c,d,';
    ?>

    Dus dat de laatste komma eruit gehaald wordt.

    Ik zat te denken aan de aantal tekens in $x tellen, en $x kopieren tot aantal tekens - 1.

    Kan het sneller? (en hoe bepaal ik het aantal tekens, hoe print ik een string tot een bepaald aantal tekens?

    Weet iemand het uit het hoofd? scheelt mij weer zoeken...

    edit: aantal tekens strlen()

    [ Bericht 5% gewijzigd door the_disheaver op 30-11-2005 18:42:41 ]
    DionysuZwoensdag 30 november 2005 @ 18:47
    edit: das niet wat je bedoelt
    DionysuZwoensdag 30 november 2005 @ 18:48
    quote:
    Op woensdag 30 november 2005 18:29 schreef the_disheaver het volgende:
    Hoe kan ik de laatste teken uit een variable eruit halen?
    [ code verwijderd ]

    Dus dat de laatste komma eruit gehaald wordt.

    Ik zat te denken aan de aantal tekens in $x tellen, en $x kopieren tot aantal tekens - 1.

    Kan het sneller? (en hoe bepaal ik het aantal tekens, hoe print ik een string tot een bepaald aantal tekens?

    Weet iemand het uit het hoofd? scheelt mij weer zoeken...

    edit: aantal tekens strlen()
    substr() al geprobeerd?

    in jouw geval dus
    1
    2
    3
    <?php
    $rest
    = substr("a,b,c,d,e,f,", 0, -1);
    ?>
    the_disheaverwoensdag 30 november 2005 @ 19:11
    quote:
    Op woensdag 30 november 2005 18:48 schreef DionysuZ het volgende:

    [..]

    substr() al geprobeerd?

    in jouw geval dus
    [ code verwijderd ]
    Dank!
    JeRawoensdag 30 november 2005 @ 20:09
    Als je raardere constructies tegenkomt kun je ook kijken naar explode() en implode() waarmee je strings die teken-gescheiden items bevatten uit elkaar kunt halen en weer in elkaar kunt zetten
    the_disheaverwoensdag 30 november 2005 @ 20:19
    quote:
    Op woensdag 30 november 2005 20:09 schreef JeRa het volgende:
    Als je raardere constructies tegenkomt kun je ook kijken naar explode() en implode() waarmee je strings die teken-gescheiden items bevatten uit elkaar kunt halen en weer in elkaar kunt zetten
    Die gebruik ik ook Maar als ik die laatste komma er niet uit haal komt er een lege waarde uit. En aangezien die vervolgens als key-waarde in een value gestopt wordt is dat niet zo netjes.
    pc-fr34kwoensdag 30 november 2005 @ 20:20
    Dit werkt dus alleen als je behoudt tot op tekens, het is handiger als je een explode gebruikt en een count:
    1
    2
    3
    4
    5
    6
    <?php
    $string
    = "blaat, hoi, whehehe, fok, forum, doei";
    $Astring = explode(",", $string);
    $lastItem = $Astring[count($Astring)-1];
    echo
    $lastItem;
    ?>
    pc-fr34kwoensdag 30 november 2005 @ 20:22
    quote:
    Op woensdag 30 november 2005 20:19 schreef the_disheaver het volgende:

    [..]

    Die gebruik ik ook Maar als ik die laatste komma er niet uit haal komt er een lege waarde uit. En aangezien die vervolgens als key-waarde in een value gestopt wordt is dat niet zo netjes.
    Dan moet je nog checken of het laatste teken een komma is. .
    LeeHarveyOswaldwoensdag 30 november 2005 @ 20:27
    SQL vraagje....

    Op school ooit gehad met een query in een query zeg maar... weet niet meer precies hoe dat ging, maar dit is ongeveer wat ik wil:
    1SELECT a.ip_address, a.id FROM ibf_members WHERE a.ip_address = (SELECT b.ip_address, b.id FROM ibf_members WHERE a.id IS NOT b.id)


    Zodat ik dus een overzicht krijg van IP's die meerdere keren voorkomen bij verschillende users

    Hoe krijg ik dit in mn PHP pagina werkend?

    Iemand een idee? Thnx!
    Swetseneggerwoensdag 30 november 2005 @ 20:27
    Ik heb een ZCE voucher besteld.
    Dat wordt studeren
    DionysuZwoensdag 30 november 2005 @ 20:29
    quote:
    Op woensdag 30 november 2005 20:27 schreef Swetsenegger het volgende:
    Ik heb een ZCE voucher besteld.
    Dat wordt studeren
    waar kun je die bestellen?
    LeeHarveyOswaldwoensdag 30 november 2005 @ 20:30
    quote:
    Op woensdag 30 november 2005 20:29 schreef DionysuZ het volgende:

    [..]

    waar kun je die bestellen?
    Daar heb jij het veel te druk voor, jij bent mij en andere n00bs helpen

    the_disheaverwoensdag 30 november 2005 @ 20:34
    quote:
    Op woensdag 30 november 2005 20:22 schreef pc-fr34k het volgende:

    [..]

    Dan moet je nog checken of het laatste teken een komma is. .
    Ja, eigenlijk wel.. het komt wel uit een hidden field waar altijd een komma achter zou moeten staan, maar het kan idd gefaked worden... Ik zie niet in hoe er dan misbruik van kan worden gemaakt, maar het is idd beter van wel. Hoe dan?

    1
    2
    3
    4
    5
    <?php
    if (substr$_POST['ma_fields'], -1, 1) == ',') {
    $_POST['ma_fields'] = substr($_POST['ma_fields'], 0, -1);
    }
    ?>
    SuperRembowoensdag 30 november 2005 @ 20:35
    @LeeHarveyOswald :
    Wat is je probleem dan? Weet je niet hoe je een query uit moet voeren of werkt je query niet in mysql?
    LeeHarveyOswaldwoensdag 30 november 2005 @ 20:37
    Die query gaat zowiezo niet werken in mysql. Deels omdat ik niet exact meer weet hoe hem op te bouwen, en deels omdat dit volgens mij vanuit MySql niet kan... Dus mijn vraag is of iemand hier een alternatieve manier voor heeft, of weet hoe mijn query wel gaat werken
    Swetseneggerwoensdag 30 november 2005 @ 20:39
    quote:
    Op woensdag 30 november 2005 20:29 schreef DionysuZ het volgende:

    [..]

    waar kun je die bestellen?
    Bij zend
    Op zich wel een leuk verhaal. In Augustus hadden ze een aanbieding omdat de certificering 1 jaar bestond. De voucher was $125,-.

    Nu wist ik er toen zeker nog niet genoeg vanaf om op korte termijn examen te doen, dus ik had zend een mail gestuurd met de vraag hoe lang de voucher valid is (een half jaar). Aangezien ik een drukke baan heb en PHP er een beetje in de avonduren bij rommel, was een half jaar gewoon te kort dag.

    Ondertussen heb ik van roonaan de 'study guide' te leen omdat ik het WEL wil halen.

    Anyway, ik heb een poosje terug ook Zend Studio 5 Beta gedownload dus ik sta in de Zend database.

    Krijg ik vanavond Idan Zuckerman van Zend op ICQ. Hoe ik Studio vond, en of ik nog van plan was ZCE te halen etc. Hij wilde dus wat verkopen en deed me een aanbod:

    Studio
    ZCE voucher
    exame practise
    verzendkosten
    $550,-
    $399,-

    Mooi aanbod, maar ik vind Zend Studio niet genoeg toevoegen tov goede freeware development omgevingen.

    Maar uiteindelijk heb ik ZCE voucher plus het practise exam book plus verzendkosten voor $175,- in plaats van $225,- gekocht . En de voucher is een jaar geldig ipv een half jaar. Op zich wilde ik wel een stok achter de deur, want tot mijn spijt moet ik zeggen dat ik pas 3 pagina's heb gelezen in Roonaans boek en ik wil gewoon die certificering halen.
    JeRawoensdag 30 november 2005 @ 20:40
    quote:
    Op woensdag 30 november 2005 20:27 schreef LeeHarveyOswald het volgende:
    SQL vraagje....

    Op school ooit gehad met een query in een query zeg maar... weet niet meer precies hoe dat ging, maar dit is ongeveer wat ik wil:
    [ code verwijderd ]

    Zodat ik dus een overzicht krijg van IP's die meerdere keren voorkomen bij verschillende users

    Hoe krijg ik dit in mn PHP pagina werkend?

    Iemand een idee? Thnx!
    Je wilt dus een lijst met mensen die een IP-adres hebben die ze delen met andere mensen?

    Weet het niet zeker, maar uit het hoofd:
    1
    2
    3
    4
    5
    SELECT m1.id, m1.ipaddress
    FROM members AS m1
    LEFT JOIN members AS m2 ON m2.ipaddress = m1.ipaddress
    WHERE m1.id <> m2.id
    ORDER BY m1.ipaddress
    pc-fr34kwoensdag 30 november 2005 @ 20:43
    quote:
    Op woensdag 30 november 2005 20:34 schreef the_disheaver het volgende:

    [..]

    Ja, eigenlijk wel.. het komt wel uit een hidden field waar altijd een komma achter zou moeten staan, maar het kan idd gefaked worden... Ik zie niet in hoe er dan misbruik van kan worden gemaakt, maar het is idd beter van wel. Hoe dan?
    [ code verwijderd ]
    Heb je altijd maar 1 teken tussen de komma's? Want anders zal je toch echt die explode moeten gebruiken, en als je zeker weet dat er altijd een komma achter staat dan doe je ipv -1 een -2.
    LeeHarveyOswaldwoensdag 30 november 2005 @ 20:46
    hm... dat lijkt er wel erg op ik krijg nu alleen:

    Dubbele IP Adressen:Unknown column 'm1.ipaddress' in 'field list'
    LeeHarveyOswaldwoensdag 30 november 2005 @ 20:47
    Beschouw vorige bericht als niet gepost het werkt Thq!
    JeRawoensdag 30 november 2005 @ 20:47
    Je kunt ook de lijst exploden, items waarvan de intval() groter is dan 0 laten staan en andere items uit de array halen (hiermee haal je de lege items dus weg) en vervolgens weer imploden?
    the_disheaverwoensdag 30 november 2005 @ 20:52
    quote:
    Op woensdag 30 november 2005 20:43 schreef pc-fr34k het volgende:

    [..]

    Heb je altijd maar 1 teken tussen de komma's? Want anders zal je toch echt die explode moeten gebruiken, en als je zeker weet dat er altijd een komma achter staat dan doe je ipv -1 een -2.
    Ik snap je niet echt geloof ik...

    Ik heb altijd maar 1 teken tussen de komma's (maar wat zou het probleem zijn als ik dat niet had?)

    En ik gebruik de explode al, maar wel na de functie om de komma eruit te halen

    wat meer code
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
        $_POST
    ['ma_fields'] = substr($_POST['ma_fields'], 0, -1);
        
    $m = explode(',',$_POST['ma_fields']);
        
    $i = 0;
        foreach(
    $m as $value) {
          
    $veldnaam6 = "ma-page4a-".$value;
          
    $n[$value] = $_POST[$veldnaam6];
        }
        foreach (
    $n as $key =&gt; $value) {
          
    $_SESSION['page4'][$key] = $value;
        }
    ?>
    pc-fr34kwoensdag 30 november 2005 @ 21:00
    quote:
    Op woensdag 30 november 2005 20:52 schreef the_disheaver het volgende:

    [..]

    Ik snap je niet echt geloof ik...

    Ik heb altijd maar 1 teken tussen de komma's (maar wat zou het probleem zijn als ik dat niet had?)
    Het laatste teken kan je zeg maar met de substr die je kreeg van iemand wel halen maar het laaste woord niet, maar ik las je code verkeerd.
    quote:
    En ik gebruik de explode al, maar wel na de functie om de komma eruit te halen

    wat meer code
    [ code verwijderd ]
    Ja, nu begrijp ik je, ik dacht zeg maar dat je alleen maar de substr gebruikt, daarom was er een misverstand.
    SuperRembowoensdag 30 november 2005 @ 21:54
    [edit verkeerde topic ]
    LeeHarveyOswaldwoensdag 30 november 2005 @ 23:40
    Hm klein dilemma. Nu wil ik diezelfde query gebruiken om in een andere tabel te kijken of die users ook niet van dat IP gepost hebben. Maar het lijkt er om één of andere reden op dat mn database het niet leuk vindt ca. 35.000 items te vergelijken

    Mn SQL code:

    1SELECT m1.author_id, m1.author_name, m1.ip_address FROM ibf_posts AS m1 LEFT JOIN ibf_members AS m2 ON m2.ip_address = m1.ip_address WHERE m1.author_id <> m2.id ORDER BY m1.ip_address


    Ik krijg geen foutmelding maar hij is erg lang aan het laden....

    Iemand die een oplossing weet?
    LeeHarveyOswaldwoensdag 30 november 2005 @ 23:48
    Kleine toevoeging: na even wachten doet hij het wel, maar krijg ik erg vaak hetzelfde IP adres in mn lijst... Per bericht 1x zeg maar, ipv per gebruiker
    JeRadonderdag 1 december 2005 @ 00:12
    quote:
    Op woensdag 30 november 2005 23:40 schreef LeeHarveyOswald het volgende:
    Hm klein dilemma. Nu wil ik diezelfde query gebruiken om in een andere tabel te kijken of die users ook niet van dat IP gepost hebben. Maar het lijkt er om één of andere reden op dat mn database het niet leuk vindt ca. 35.000 items te vergelijken

    Mn SQL code:
    [ code verwijderd ]

    Ik krijg geen foutmelding maar hij is erg lang aan het laden....

    Iemand die een oplossing weet?
    Ik snap niet precies wat je wilt doen, maar:
    1) Zet de kleinste tabel (users) links en de grootste tabel (messages) rechts, oftewel: users LEFT JOIN messages
    2) Zorg ervoor dat je goede indices hebt: als je in een tabel met 35.000 items het IP-adres wilt controleren dan zal MySQL zonder index alle items moeten aflopen, en dat is traag. Maak dan ook een index aan op het IP-adres.
    2a) IP-adressen kun je het best opslaan d.m.v. INET_ATON() en INET_NTOA(), als je dat nog niet gedaan had. Zie de MySQL documentatie voor meer informatie hierover. Je slaat dan de IP-adressen als 32-bits unsigned integers op in plaats van een VARCHAR. Deze laatste is sowieso wat trager om te vergelijken en de data+index is ook altijd groter in vergelijking met een UNSIGNED INT.
    Lightdonderdag 1 december 2005 @ 00:16
    quote:
    Op woensdag 30 november 2005 20:27 schreef Swetsenegger het volgende:
    Ik heb een ZCE voucher besteld.
    Dat wordt studeren
    Het wordt pas echt studeren als je een datum hebt geprikt voor het examen (die kun je overigens wel weer verplaatsen).
    Lightdonderdag 1 december 2005 @ 00:21
    quote:
    Op woensdag 30 november 2005 20:39 schreef Swetsenegger het volgende:

    Anyway, ik heb een poosje terug ook Zend Studio 5 Beta gedownload dus ik sta in de Zend database.

    Krijg ik vanavond Idan Zuckerman van Zend op ICQ. Hoe ik Studio vond, en of ik nog van plan was ZCE te halen etc. Hij wilde dus wat verkopen en deed me een aanbod:

    Studio
    ZCE voucher
    exame practise
    verzendkosten
    $550,-
    $399,-

    Mooi aanbod, maar ik vind Zend Studio niet genoeg toevoegen tov goede freeware development omgevingen.

    Maar uiteindelijk heb ik ZCE voucher plus het practise exam book plus verzendkosten voor $175,- in plaats van $225,- gekocht . En de voucher is een jaar geldig ipv een half jaar. Op zich wilde ik wel een stok achter de deur, want tot mijn spijt moet ik zeggen dat ik pas 3 pagina's heb gelezen in Roonaans boek en ik wil gewoon die certificering halen.
    Hoe komen die mensen bij Zend dan achter jouw icq nummer? Ik heb er iig nergens een plek kunnen vinden om dat ding in te voeren.

    En dat practise exam book is erg nuttig, daar heb ik ook nog best veel aan gehad
    DionysuZdonderdag 1 december 2005 @ 01:12
    Ik vraag me af wat het voor voordelen heeft als je ZCE bent? Dus niet dat je de stof kent, maar dat je het titeltje kan dragen. Het is nl. vrij duur zo te zien.
    the_disheaverdonderdag 1 december 2005 @ 01:30
    quote:
    Op donderdag 1 december 2005 01:12 schreef DionysuZ het volgende:
    Ik vraag me af wat het voor voordelen heeft als je ZCE bent? Dus niet dat je de stof kent, maar dat je het titeltje kan dragen. Het is nl. vrij duur zo te zien.
    Qua kennis hoef je natuurlijk geen ZCE te zijn. Je kunt de kennis ook op doen zonder ¤300 te besteden.

    Maar bij solliciteren is het een eenvoudige manier om kenbaar te maken dat je PHP kennis hebt. Exact het zelfde met elk andere diploma/certificaat. Een werkgever heeft iets om te vertrouwen, wat dus niet zegt dat je meer kunt dan een niet-ZCE' er..
    the_disheaverdonderdag 1 december 2005 @ 01:32
    hmm... mijn loop loopt oneindig door (gelukkig slechts 30 seconde...) terwijl ie dat niet zo moeten doen (dûh)

    edit
    Geeft een disabled checkbox geen value door?!?
    1 <input name="ma-page4a-b" type="checkbox" value="1" checked="checked" disabled="true" />


    bah...nog een hidden veld erbij dan maar...

    [ Bericht 69% gewijzigd door the_disheaver op 01-12-2005 01:47:02 ]
    SuperRembodonderdag 1 december 2005 @ 07:48
    quote:
    Op donderdag 1 december 2005 01:32 schreef the_disheaver het volgende:
    Geeft een disabled checkbox geen value door?!?
    Klopt. Dat geldt trouwens voor alle form elementen die disabled zijn.
    the_disheaverdonderdag 1 december 2005 @ 07:56
    quote:
    Op donderdag 1 december 2005 07:48 schreef SuperRembo het volgende:

    [..]

    Klopt. Dat geldt trouwens voor alle form elementen die disabled zijn.
    Flauw...Opgelost met een hidden field, toch een stukje minder mooi....
    mscholdonderdag 1 december 2005 @ 08:44
    zijn er mensen die zend studio draaien?
    en zo ja wat vinden jullie ervan?

    ik draai zend 5 en vind persoonlijk dat het er op lijkt dat het erg slecht is geschreven..
    ik heb nu een amd athlon 2600+ met 1280MB ram en als zend een uurtje aanstraat is het programma niet meer vooruit te branden...
    als ik ga kijken naar de processen heb ik een javavw.exe die >280MB geheugen uinneemt...
    sluit ik die dan sluit ik ook zend...
    Nioxdonderdag 1 december 2005 @ 10:37
    quote:
    Op donderdag 1 december 2005 08:44 schreef mschol het volgende:
    zijn er mensen die zend studio draaien?
    en zo ja wat vinden jullie ervan?
    Geen fijn programma, nooit gevonden ook. PhpED van Nusphere vind ik een stuk lekkerder werken.
    JeRadonderdag 1 december 2005 @ 12:12
    Wat zijn de beweegredenen eigenlijk om zo'n IDE te gebruiken? Natuurlijk kan het tijdens het ontwikkelen een aantal features handig zijn, maar het is niet zo benodigd als Java (dat gecompiled moet worden) of C/C++ (dat gecompiled en gelinken dient te worden) lijkt me

    Voor mij is het altijd nog een aantal schermpjes tegelijk openen: remote shell naar de server, een editor schermpje (Crimson editor) en een browserschermpje. IDE's gebruik ik voor programmeertalen en niet zozeer voor scripttalen.
    mscholdonderdag 1 december 2005 @ 12:31
    quote:
    Op donderdag 1 december 2005 12:12 schreef JeRa het volgende:
    Wat zijn de beweegredenen eigenlijk om zo'n IDE te gebruiken? Natuurlijk kan het tijdens het ontwikkelen een aantal features handig zijn, maar het is niet zo benodigd als Java (dat gecompiled moet worden) of C/C++ (dat gecompiled en gelinken dient te worden) lijkt me

    Voor mij is het altijd nog een aantal schermpjes tegelijk openen: remote shell naar de server, een editor schermpje (Crimson editor) en een browserschermpje. IDE's gebruik ik voor programmeertalen en niet zozeer voor scripttalen.
    ik wilde het gewoon eff proberen omdat ik had gehoord dat het kennelijk erg goede code completeion had o.a.
    maar ik vind dat dit allemaal erg mee valt...
    dreamweaver is beterm, die kan tenminste met me mysqldatabase verbinden {:(
    Swetseneggerdonderdag 1 december 2005 @ 12:38
    quote:
    Op donderdag 1 december 2005 01:12 schreef DionysuZ het volgende:
    Ik vraag me af wat het voor voordelen heeft als je ZCE bent? Dus niet dat je de stof kent, maar dat je het titeltje kan dragen. Het is nl. vrij duur zo te zien.
    Duur? $200 voor een certificering vind ik niet overdreven duur eigenlijk.
    Je zal je wel in de stof moeten verdiepen, dus het geeft in ieder geval aan dat je een zeker kennis nivo hebt
    Swetseneggerdonderdag 1 december 2005 @ 12:43
    quote:
    Op donderdag 1 december 2005 00:16 schreef Light het volgende:

    [..]

    Het wordt pas echt studeren als je een datum hebt geprikt voor het examen (die kun je overigens wel weer verplaatsen).
    Dat wist ik niet, dat je het examen nog kon verplaatsen
    Maar ik wil wel voordat ik het examen ga prikken alvast wat voor studie doen.

    Want ik denk niet dat ik er al klaar voor ben met mijn huidige nivo.
    quote:
    Op donderdag 1 december 2005 00:21 schreef Light het volgende:

    [..]

    Hoe komen die mensen bij Zend dan achter jouw icq nummer? Ik heb er iig nergens een plek kunnen vinden om dat ding in te voeren.

    En dat practise exam book is erg nuttig, daar heb ik ook nog best veel aan gehad
    Ik had een mail gekregen van die zuckerman. Daarin stond zijn ICQ nummer. Ik had hem toegevoegd omdat er hier in dit topic een misverstand ontstond over de geldigheid van de voucher (infinite of 6 months).
    Roonaandonderdag 1 december 2005 @ 12:43
    quote:
    Op donderdag 1 december 2005 08:44 schreef mschol het volgende:
    zijn er mensen die zend studio draaien?
    en zo ja wat vinden jullie ervan?

    ik draai zend 5 en vind persoonlijk dat het er op lijkt dat het erg slecht is geschreven..
    ik heb nu een amd athlon 2600+ met 1280MB ram en als zend een uurtje aanstraat is het programma niet meer vooruit te branden...
    als ik ga kijken naar de processen heb ik een javavw.exe die >280MB geheugen uinneemt...
    sluit ik die dan sluit ik ook zend...
    ik draai het ook, op een celly 1.6 met 780 mb intern, en het werkt prima. Soms wat gemopper als ik probeer op te slaan via webdrive, maar niets ernstigs.

    de voordelen van een goede IDE is onderandere de goede syntax check, auto completion en de mogelijkheid om snel classes en zooi terug te vinden via de extra browse optis.
    JeRadonderdag 1 december 2005 @ 13:03
    Die ZCE ziet er erg interessant uit hoewel ik een studie doe die vrij weinig met dit soort zaken te maken heeft is het altijd handig iets achter de hand te houden. Als ik die objectives bekijk die Zend stelt voor dat examen heb ik toch zeker 80% - 90% nu onder de knie (alhoewel het natuurlijk zo is dat ze een terminologie zullen gaan voeren waarvoor iedereen wel moet leren).
    Swetseneggerdonderdag 1 december 2005 @ 13:18
    quote:
    Op donderdag 1 december 2005 13:03 schreef JeRa het volgende:
    Die ZCE ziet er erg interessant uit hoewel ik een studie doe die vrij weinig met dit soort zaken te maken heeft is het altijd handig iets achter de hand te houden. Als ik die objectives bekijk die Zend stelt voor dat examen heb ik toch zeker 80% - 90% nu onder de knie (alhoewel het natuurlijk zo is dat ze een terminologie zullen gaan voeren waarvoor iedereen wel moet leren).
    Ik heb vooral een gat bij OOP en streaming.
    De rest beheers ik wel aardig, maar wel met de manual erbij. Ik denk dat ik nog zat te studeren heb eigenlijk

    En dat voor hobbymatige interesse
    LeeHarveyOswalddonderdag 1 december 2005 @ 13:34
    Mochten mensen er nog in geintresseerd zijn, dit is hoe ik mn dubbele-IP zoek ding heb opgelost

    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
    <?php
    echo"<LINK HREF='white.css' TYPE='text/css' REL='stylesheet'>";
    echo
    "<b><u>Let op! Het forum wordt door gebruik van deze tool zwaar vertraagd! </u></b>";   &lt;br&gt;&lt;br&gt;
    include(
    "connectpf.php");
    $query = "SELECT * FROM ibf_members WHERE id='".$_COOKIE["member_id"]."' AND password='". md5($_POST["wachtwoord"]) . "' AND mgroup = 4 OR mgroup = 6 OR mgroup = 11 AND name = '" . $_POST["naam"]  ."' ";
    $result = mysql_query($query);
    if(
    mysql_num_rows($result) &gt; 0)
    {
    // Genereer lijst dubbele IP's van registratie
    echo "Dubbele <b>registratie</b> IP Adressen:";
    echo
    "<table>";
    echo
    "<tr><td>Naam / link </td><td>IP adres</td></tr>";
    $sql = "SELECT m1.id, m1.name, m1.ip_address FROM ibf_members AS m1 LEFT JOIN ibf_members AS m2 ON m2.ip_address = m1.ip_address WHERE m1.id <> m2.id ORDER BY m1.ip_address";
    $query = mysql_query($sql) or die(mysql_error());
    while (
    $result = mysql_fetch_array($query))
    {
    $IPA = $result["ip_address"];
    $Nick = $result["name"];
    $IDNR = $result["id"];
    echo
    "<tr><td><a href = 'http://www.pestforum.nl/forum/index.php?showuser=".$IDNR."'>".$Nick."</a></td><td>".$IPA."</td></tr>";

    }
    echo
    "</table><br><hr>";

    // Genereer lijst IP's van registratie, waarmee later gepost is
    echo "Dubbele <b>registratie</b> IP Adressen, waarmee later <b>gepost</b> is:";
    echo
    "<table>";
    echo
    "<tr><td>Naam / link plaatser </td><td>IP adres</td><td>Naam / link geregistreerde user</td></tr>";
    $sql = "SELECT m1.author_id, m1.author_name, m1.ip_address, m2.name, m2.id FROM ibf_posts AS m1 LEFT JOIN ibf_members AS m2 ON m1.ip_address = m2.ip_address WHERE m1.author_id <> m2.id ORDER BY m1.ip_address";
    $query = mysql_query($sql) or die(mysql_error());
    while (
    $result = mysql_fetch_array($query))
    {
    $IPA = $result["ip_address"];
    $Nick = $result["author_name"];
    $IDNR = $result["author_id"];
    $Nick2 = $result["name"];
    $IDNR2 = $result["id"];
    echo
    "<tr><td><a href = 'http://www.pestforum.nl/forum/index.php?showuser=".$IDNR."'>".$Nick."</a></td><td>".$IPA."</td><td><a href = 'http://www.pestforum.nl/forum/index.php?showuser=".$IDNR2."'>".$Nick2."</a></td></tr>";

    }
    echo
    "</table><br><hr>";


    }

    else {

    $text = "Geen crewlid! ga terug!";
    die(
    $text);

    }
    ?>


    Eigenlijk wil ik em ook laten kijken welke berichten een andere naam bevatten maar hetzelfde IP.. maar als ik zie hoe lang hij hier al mee bezig is....
    JeRadonderdag 1 december 2005 @ 13:43
    quote:
    Op donderdag 1 december 2005 13:34 schreef LeeHarveyOswald het volgende:
    Eigenlijk wil ik em ook laten kijken welke berichten een andere naam bevatten maar hetzelfde IP.. maar als ik zie hoe lang hij hier al mee bezig is....
    Zoals ik al zei, zoiets mag eigenlijk helemaal niet lang duren; dan is er wrs iets fout met je indices
    LeeHarveyOswalddonderdag 1 december 2005 @ 14:25
    ik controlleer van 32 duizend berichten met 240 users of er een overeenkomst is.... dat lijkt me niet in 10 seconden gebeurt?
    Roonaandonderdag 1 december 2005 @ 15:18
    Je zou ook eens moeten overwegen om dingen als mysql_real_escape_string te gaan gebruiken..
    Swetseneggerdonderdag 1 december 2005 @ 15:36
    quote:
    Op donderdag 1 december 2005 15:18 schreef Ro�a� het volgende:
    Je zou ook eens moeten overwegen om dingen als mysql_real_escape_string te gaan gebruiken..
    Wat is eigenlijk het verschil met magic quotes en add_slashes?
    Roonaandonderdag 1 december 2005 @ 15:41
    andere escape character set
    Swetseneggerdonderdag 1 december 2005 @ 16:05
    quote:
    Op donderdag 1 december 2005 15:41 schreef Ro�a� het volgende:
    andere escape character set
    Een soort htmlentities combined met addslashes of magic quotes.

    Mooi stukje kant en klare code op php.net

    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
    // Quote variable to make safe
    function quote_smart($value)
    {
       
    // Stripslashes
       
    if (get_magic_quotes_gpc()) {
           
    $value = stripslashes($value);
       }
       
    // Quote if not integer
       
    if (!is_numeric($value)) {
           
    $value = "'" . mysql_real_escape_string($value) . "'";
       }
       return
    $value;
    }

    // Connect
    $link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')
       OR die(
    mysql_error());

    // Make a safe query
    $query = sprintf("SELECT * FROM users WHERE user=%s AND password=%s",
               
    quote_smart($_POST['username']),
               
    quote_smart($_POST['password']));

    mysql_query($query);
    ?>
    JeRadonderdag 1 december 2005 @ 19:31
    quote:
    Op donderdag 1 december 2005 16:05 schreef Swetsenegger het volgende:

    [..]

    Een soort htmlentities combined met addslashes of magic quotes.
    htmlentities doet iets compleets anders, die zet bepaalde tekens om naar een HTML entity zoals & lt; mysql(i )_real_escape_string() weet welke character set de MySQL-verbinding voert en zorgt ervoor dat bepaalde tekens afhankelijk van de character set worden escaped.

    Overigens doe ik altijd dit op het begin van mijn (hoofd)scripts, afhankelijk van de situatie gewoon zo of in een functie/class:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function stripGPC()
    {
        if (!get_magic_quotes_gpc()) {
            return;
        }
        while (list($key, $value) = each($_GET)) {
            $_GET[$key] = stripslashes($value);
        }
        while (list($key, $value) = each($_POST)) {
            $_POST[$key] = stripslashes($value);
        }
        while (list($key, $value) = each($_COOKIE)) {
            $_COOKIE[$key] = stripslashes($value);
        }
    }


    En dan iets compleets anders. Jaar of 2 geleden liep ik tegen een probleem aan met preg_replace() met de /e-modifier. Deze modifier zorgt ervoor dat er een functie-aanroep naar keuze plaatsvindt. Echter bleek dat de parameters die ik doorgaf aan de functie via die preg_replace() allemaal ge-escaped waren, terwijl ik nergens had opgegeven dat dat moest? in een uitzonderlijk geval waren ze zelfs dubbel ge-escaped en ik kon het nergens terugvinden in de manual.
    Roonaandonderdag 1 december 2005 @ 19:54
    Jera,

    jouw code stript niet goed. Immers geneste array worden niet meegenomen en daarvan zou zelfs de waarde verloren kunnen gaan door de re-assignment.

    Kijk even naar deze: http://www.roonaan.nl/lib/php/view/snippet.magicquotes.php

    -r-
    mscholdonderdag 1 december 2005 @ 19:56
    quote:
    You have completed the Self Test!
    Your score is 1 out of 8. Check out the answers and explanations of the questions
    JeRadonderdag 1 december 2005 @ 20:00
    quote:
    Op donderdag 1 december 2005 19:54 schreef Ro�a� het volgende:
    Jera,

    jouw code stript niet goed. Immers geneste array worden niet meegenomen en daarvan zou zelfs de waarde verloren kunnen gaan door de re-assignment.

    Kijk even naar deze: http://www.roonaan.nl/lib/php/view/snippet.magicquotes.php

    -r-
    Dat is waar. Ik maak dan ook zelden gebruik van arrays in de $_POST- of $_GET-variabelen normaal doe ik ook een recursieve stripslashes, maar het was maar even voor het (foute) voorbeeld
    Swetseneggerdonderdag 1 december 2005 @ 20:02
    quote:
    Op donderdag 1 december 2005 19:56 schreef mschol het volgende:

    [..]

    Als je de antwoorden leest is veel van een erg hoog 'Ow ja ' gehalte.
    Jimmydonderdag 1 december 2005 @ 20:08
    Ja, ik vond die vragen wel een erg strikvraag gehalte hebben.

    Is dat hetzelfde soort vragen dat je op het daadwerkelijke examen krijgt?
    JeRadonderdag 1 december 2005 @ 20:11
    quote:
    You have completed the Self Test!
    Your score is 8 out of 8. Check out the answers and explanations of the questions.
    edit: hier stond een spoiler misschien dat ik over een paar maanden maar eens ga kijken naar dat ZCE.

    Overigens, voor een bedrijf wat een scripting taal heeft ontworpen mogen ze die test wel wat sneller maken zat af en toe 30 seconden te wachten op de nieuwe vraag.

    edit: heb antwoord maar weggehaald, die test geeft telkens dezelfde vragen.
    mscholdonderdag 1 december 2005 @ 20:27
    quote:
    Op donderdag 1 december 2005 20:02 schreef Swetsenegger het volgende:

    [..]

    Als je de antwoorden leest is veel van een erg hoog 'Ow ja ' gehalte.
    yup idd.. hele logische dingen..
    Roonaandonderdag 1 december 2005 @ 20:34
    quote:
    Op donderdag 1 december 2005 20:11 schreef JeRa het volgende:

    [..]

    edit: hier stond een spoiler misschien dat ik over een paar maanden maar eens ga kijken naar dat ZCE.

    Overigens, voor een bedrijf wat een scripting taal heeft ontworpen mogen ze die test wel wat sneller maken zat af en toe 30 seconden te wachten op de nieuwe vraag.

    edit: heb antwoord maar weggehaald, die test geeft telkens dezelfde vragen.
    komt volgens mij door het brakke js based menu in de website. Die vertraagd enorm.
    Swetseneggerdonderdag 1 december 2005 @ 20:38
    quote:
    Op donderdag 1 december 2005 20:08 schreef Jimmy het volgende:
    Ja, ik vond die vragen wel een erg strikvraag gehalte hebben.

    Is dat hetzelfde soort vragen dat je op het daadwerkelijke examen krijgt?
    Dat kan roonaan of Light je beter vertellen. Zover als ik begreep wel. Het is veel kennis van de syntax en functies en dergelijke.
    SuperRembodonderdag 1 december 2005 @ 21:06
    quote:
    Op donderdag 1 december 2005 20:02 schreef Swetsenegger het volgende:

    [..]

    Als je de antwoorden leest is veel van een erg hoog 'Ow ja ' gehalte.
    Die vragen hebben een hoog gehalte "zo zou ik het nooit doen" gehalte. Waarom zou je count toepassen op een string

    Als je dat soort vragen gaat stellen dan weet ik er ook nog een. Wat is de output van:

    1echo strlen(0123)

    0, 1, 2, 3 of 4?
    JeRadonderdag 1 december 2005 @ 21:22
    Ehm, gokje, 2? (0123 wordt omgezet van octaal naar decimale integer, integer wordt omgezet naar naar string, lengte van string == 2 )

    edit: ja dus, net getest overigens is het niet helemaal triviaal dit soort vragen. Doen ze bij Java ook, dit soort ongein het is meer het idee dat je kunt achterhalen waarom bepaalde dingen fout gaan en waarom je niet van PHP moet verwachten dat het een foutmelding geeft bij elke fout die de scripter maakt

    Helaas is 'zonder de compiler' iets programmeren of scripten nog erg moeilijk voor velen en met dat in het achterhoofd vind ik het eigenlijk best goede opgaven

    [ Bericht 34% gewijzigd door JeRa op 01-12-2005 21:28:03 ]
    JeRadonderdag 1 december 2005 @ 21:29
    quote:
    Op donderdag 1 december 2005 20:34 schreef Ro�a� het volgende:

    [..]

    komt volgens mij door het brakke js based menu in de website. Die vertraagd enorm.
    Nah, ik kreeg na 30 seconden de pagina pas fysiek binnen, voordat er ook maar javascript uitgevoerd kon worden
    Lightdonderdag 1 december 2005 @ 21:56
    quote:
    Op donderdag 1 december 2005 21:06 schreef SuperRembo het volgende:

    [..]

    Die vragen hebben een hoog gehalte "zo zou ik het nooit doen" gehalte. Waarom zou je count toepassen op een string
    Niet natuurlijk Maar 't is handig om te weten wat er gebeurt als je die functie per ongeluk toch een string voert.

    En het niveau van het examen ligt wel boven dat van die 8 testvragen
    LeeHarveyOswalddonderdag 1 december 2005 @ 21:59
    Dit lijkt mij een beetje offtopic
    Swetseneggerdonderdag 1 december 2005 @ 22:06
    Een probleem, wat ik hier even voorleg. Misschien dat jullie een idee hebben hoe ik dit moet aanpakken.

    Stel je voor dat je meerdere items (produkten) kan koppelen aan verschillende items.

    Bv de produkten 'seiko' 'casio' 'citizen' en 'rolex' koppel je aan menu 'horloges'.
    So far so good.

    Maar nu maak je een nieuw menuitem 'kwartshorloges' en wil je seiko,casio en citizen uit 'horloges' halen en koppelen aan 'kwartshorloges'. Nu kun je natuurlijk stuk voor stuk seiko, casio en citizen uit de database trekken en de koppeling aanpassen, maar dat is natuurlijk gepijpzeik.

    Je wilt dus de mogelijkheid om produkten met meerdere tegelijk te kunnen koppelen en ontkoppelen.
    Het idee is eenvoudig. Je neemt een dropdown met de menuitems en twee multiple selectboxen: gekoppeld en niet-gekoppeld.

    Afhankelijk van welke menuitem je kiest, zie je links de items welke NIET aan deze groep gekoppeld zitten, en rechts de items welke WEL aan de groep gekoppeld zitten.

    Met javascript moet je vervolgens de produkten van links naar rechts kunnen schuiven, en uiteindelijk submitten. Wanneer je gesubmit hebt, lees je alleen de values uit de rechterkolom in en update je produkt tabel. Maar, het probleem bij een selectbox is dat je de waardes moet ....selecteren. Anders geeft je submit niets terug.

    Vaag verhaal, maar kijk even op <link> ter verduidelijking. Het stuk wat nu werkt heb ik gejat

    Bij dubbelklikken schuif je een produkt in de andere selectbox.. Voor je submit moet je nu handmatig alle produkten in de rechterkolom selecteren, hoe los ik dat op dat de alles in de rechterkolom geselecteerd wordt voordat je submit (of eigenlijk, tijdens de submit)

    [ Bericht 3% gewijzigd door Swetsenegger op 01-12-2005 22:19:20 ]
    Swetseneggerdonderdag 1 december 2005 @ 22:07
    quote:
    Op donderdag 1 december 2005 21:56 schreef Light het volgende:

    [..]

    Niet natuurlijk Maar 't is handig om te weten wat er gebeurt als je die functie per ongeluk toch een string voert.

    En het niveau van het examen ligt wel boven dat van die 8 testvragen
    ow
    JeRadonderdag 1 december 2005 @ 22:10
    quote:
    Op donderdag 1 december 2005 22:06 schreef Swetsenegger het volgende:
    Maar nu maak je een nieuw menuitem 'kwartshorloges' en wil je seiko,casio en citizen uit 'horloges' halen en koppelen aan 'kwartshorloges'. Nu kun je natuurlijk stuk voor stuk seiko, casio en citizen uit de database trekken en de koppeling aanpassen, maar dat is natuurlijk gepijpzeik.
    Ik zie het probleem hier niet zo aan? Wat is er mis met een

    UPDATE tabel SET parent (of left/right-gedoe) = waarde WHERE id IN (item1, item2, item3)

    ? je link werkt niet overigens.
    Swetseneggerdonderdag 1 december 2005 @ 22:13
    quote:
    Op donderdag 1 december 2005 22:10 schreef JeRa het volgende:

    [..]

    Ik zie het probleem hier niet zo aan? Wat is er mis met een

    UPDATE tabel SET parent (of left/right-gedoe) = waarde WHERE id IN (item1, item2, item3)

    ? je link werkt niet overigens.
    <nog een verkeerde link>

    Jera, ja maar dan moet je wel meerdere produkten in 1 keer door kunnen geven met een submit. Kortom meerdere produkten kunnen selecteren om te kunnen koppelen Zie de link.

    [ Bericht 7% gewijzigd door Swetsenegger op 01-12-2005 22:19:49 ]
    JeRadonderdag 1 december 2005 @ 22:16
    quote:
    Op donderdag 1 december 2005 22:13 schreef Swetsenegger het volgende:

    [..]

    http://www.pandora.nl/admin/koppelen.php

    JeRa, ja maar dan moet je wel meerdere produkten in 1 keer door kunnen geven met een submit. Kortom meerdere produkten kunnen selecteren om te kunnen koppelen Zie de link.
    Hij werkt wéér niet
    Swetseneggerdonderdag 1 december 2005 @ 22:18
    quote:
    Op donderdag 1 december 2005 22:16 schreef JeRa het volgende:

    [..]

    Hij werkt wéér niet
    Ow mijn god wat ben ik een lul

    http://pandora.edoorebeek.nl/admin/koppelen.php
    JeRadonderdag 1 december 2005 @ 22:21
    quote:
    Op donderdag 1 december 2005 22:13 schreef Swetsenegger het volgende:

    [..]

    JeRa, ja maar dan moet je wel meerdere produkten in 1 keer door kunnen geven met een submit. Kortom meerdere produkten kunnen selecteren om te kunnen koppelen Zie de link.
    Rechts krijg je toch meerdere producten? Bij de submit krijg je toch de IDs van die producten door? Kun je daar niet mee werken? Of snap ik er niets van?
    Lightdonderdag 1 december 2005 @ 22:23
    quote:
    Op donderdag 1 december 2005 22:07 schreef Swetsenegger het volgende:

    [..]

    ow
    Wacht maar tot je dat practise book ontvangt
    Swetseneggerdonderdag 1 december 2005 @ 22:24
    quote:
    Op donderdag 1 december 2005 22:21 schreef JeRa het volgende:

    [..]

    Rechts krijg je toch meerdere producten? Bij de submit krijg je toch de IDs van die producten door? Kun je daar niet mee werken? Of snap ik er niets van?
    Rechts krijg je wat je wil koppelen aan het gekozen menuitem.
    Je kan dus van links naar rechts schuiven.

    Vervolgens klik je submit en moet wat rechts staat gekoppeld worden aan het menu item welke je bovenin kiest in de pulldown.

    Het probleem is, dat alle produkten rechts dus onsubmit geselecteert moeten worden
    JeRadonderdag 1 december 2005 @ 22:26
    quote:
    Op donderdag 1 december 2005 22:24 schreef Swetsenegger het volgende:

    [..]

    Het probleem is, dat alle produkten rechts dus onsubmit geselecteert moeten worden
    Je kunt ook met Javascript alle items uitlezen en door middel van Javascript/DOM velden toevoegen aan het formulier dat je wil submitten? en vervolgens een submit() uitvoeren natuurlijk.
    Lightdonderdag 1 december 2005 @ 22:28
    quote:
    Op donderdag 1 december 2005 22:24 schreef Swetsenegger het volgende:

    [..]

    Rechts krijg je wat je wil koppelen aan het gekozen menuitem.
    Je kan dus van links naar rechts schuiven.

    Vervolgens klik je submit en moet wat rechts staat gekoppeld worden aan het menu item welke je bovenin kiest in de pulldown.

    Het probleem is, dat alle produkten rechts dus onsubmit geselecteert moeten worden
    Bij die (werkende) link die je gaf krijg ik niets van links naar rechts verschoven hoor. Andersom ook niet, maar dat was kennelijk niet de bedoeling.
    Swetseneggerdonderdag 1 december 2005 @ 22:29
    quote:
    Op donderdag 1 december 2005 22:26 schreef JeRa het volgende:

    [..]

    Je kunt ook met Javascript alle items uitlezen en door middel van Javascript/DOM velden toevoegen aan het formulier dat je wil submitten? en vervolgens een submit() uitvoeren natuurlijk.
    Ja zoiets moet ik gaan doen.

    Hmz, leuk idee dat heen en weer schuiven, maar ik maak het mezelf niet makkelijker
    JeRadonderdag 1 december 2005 @ 22:30
    quote:
    Op donderdag 1 december 2005 22:28 schreef Light het volgende:

    [..]

    Bij die (werkende) link die je gaf krijg ik niets van links naar rechts verschoven hoor. Andersom ook niet, maar dat was kennelijk niet de bedoeling.
    Dubbelklikken geprobeerd?
    Swetseneggerdonderdag 1 december 2005 @ 22:32
    quote:
    Op donderdag 1 december 2005 22:28 schreef Light het volgende:

    [..]

    Bij die (werkende) link die je gaf krijg ik niets van links naar rechts verschoven hoor. Andersom ook niet, maar dat was kennelijk niet de bedoeling.
    Je selecteert bovenin bv zilver.
    Dan zie je rechts allerlei items staan. Als je een item dubbelklikt schuift die naar links.
    Tenminste op mijn xp machine met IE en FF werkt dat

    Als je een andere optie in de pulldown selecteert staat alles links en kan je door dubbelklikken naar rechts schuiven.

    Uiteindelijk moet er knopje links en rechts tussen beide vensters komen (zoals je ziet staat er nu ergens verdwaald bovenin 'knop' das mijn geheugensteuntje. Niet vergeten Swets... knoppie maken)
    Lightdonderdag 1 december 2005 @ 22:33
    quote:
    Op donderdag 1 december 2005 22:32 schreef Swetsenegger het volgende:

    [..]

    Je selecteert bovenin bv zilver.
    Dan zie je rechts allerlei items staan. Als je een item dubbelklikt schuift die naar links.
    Tenminste op mijn xp machine met IE en FF werkt dat

    Als je een andere optie in de pulldown selecteert staat alles links en kan je door dubbelklikken naar rechts schuiven.
    Ja, ik moest dus dubbelklikken, en dan had ik nog niet geprobeerd
    mscholvrijdag 2 december 2005 @ 00:08
    heeft iemand tip voor het maken van grafiekjes met php .GD libary..
    wil zelf graag een post history (aantal posts per dag) van de afgelopen 7 dagen bijvoorbeeld hebben...

    weet iemand een goeie site om mee te beginnen, ik ken van GD libary alleen de echte basis dingen (zie m'n avatar )
    JeRavrijdag 2 december 2005 @ 01:43
    quote:
    Op vrijdag 2 december 2005 00:08 schreef mschol het volgende:
    heeft iemand tip voor het maken van grafiekjes met php .GD libary..
    wil zelf graag een post history (aantal posts per dag) van de afgelopen 7 dagen bijvoorbeeld hebben...

    weet iemand een goeie site om mee te beginnen, ik ken van GD libary alleen de echte basis dingen (zie m'n avatar )
    Nou, je zult eerst een canvas moeten maken waar je in kunt 'tekenen'. Dat tekenen gebeurt eigenlijk altijd op dezelfde wijze; kies een kleur, stijl, dikte en lijntjes tekenen maar of had je liever (gevulde) rechthoeken gehad, of zelfs cirkels? Ook teksten behoren tot de mogelijkheid, in verschillende oriëntaties. Van deze teksten zijn ook allerlei eigenschappen op te vragen. Je kunt ook canvassen naar elkaar kopiëren, al dan niet geschaald of met transparantie.

    Uiteindelijk zul je je canvas moeten 'exporteren'. Wil je 'm als JPEG, GIF of PNG? Als je 'm niet als bestand opslaat moet je niet vergeten de goede header op te geven met de mimetype van het type afbeelding dat je exporteert. Onthoud dat er dan verder geen andere output mag zijn, anders gaan browsers wel eens klagen! Als je klaar bent met je canvas is het slim om het canvas op te ruimen en geheugen vrij te maken.

    Ook kun je afbeeldingen van bestand inlezen, dit kan ook met JPEGs, GIFs en PNGs; maar je kunt het ook van een willekeurige datasource laten maken zodat de GD library probeert te ontdekken wat voor afbeelding het is. Overigens kun je zonder de afbeelding daadwerkelijk te openen al aan informatie komen

    Als je php-scriptjes had verwacht moet ik je teleurstellen, dan ga je zelf maar zoeken die zijn er genoeg te vinden.

    [ Bericht 3% gewijzigd door JeRa op 02-12-2005 01:48:54 ]
    DionysuZvrijdag 2 december 2005 @ 02:12
    mscholvrijdag 2 december 2005 @ 07:37
    quote:
    Op vrijdag 2 december 2005 01:43 schreef JeRa het volgende:

    Als je php-scriptjes had verwacht moet ik je teleurstellen, dan ga je zelf maar zoeken die zijn er genoeg te vinden.
    scrippies had ik ook niet verwacht hoor, anders had ik er wel omgevraagd
    SuperRembovrijdag 2 december 2005 @ 07:56
    Toch is JpGraph erg handig
    Breulsvrijdag 2 december 2005 @ 11:06
    Ik weet niet of posters in dit topic veel op Developer Central kijken, dus ik spam even een linkje voor het goede doel: Ontwikkelaars gezocht.
    Chandlervrijdag 2 december 2005 @ 12:37
    Wil wel maar denk niet dat ik goed genoeg ben
    Desdinovavrijdag 2 december 2005 @ 12:38
    @include ('data.php','recent.php');

    op deze manier kan ik er niet 2 tegelijk inladen. Is er wel een mogelijkheid of moet ik gewoon 2 includes doen?
    JeRavrijdag 2 december 2005 @ 12:51
    quote:
    Op vrijdag 2 december 2005 12:38 schreef Desdinova het volgende:
    @include ('data.php','recent.php');

    op deze manier kan ik er niet 2 tegelijk inladen. Is er wel een mogelijkheid of moet ik gewoon 2 includes doen?
    Als ik kijk naar de manual pages van include() en require() staat daar niets over meerdere includes. Dus het lijkt me van niet ben eigenlijk nog geen taal tegengekomen waarbij dat kon, iemand?
    Swetseneggervrijdag 2 december 2005 @ 12:58
    quote:
    Op vrijdag 2 december 2005 12:37 schreef Chandler het volgende:
    Wil wel maar denk niet dat ik goed genoeg ben
    Idem, ik wil SuperRembo voordragen.
    JeRavrijdag 2 december 2005 @ 13:01
    quote:
    Op vrijdag 2 december 2005 12:58 schreef Swetsenegger het volgende:

    [..]

    Idem, ik wil SuperRembo voordragen.
    maar wil SuperRembo dat wel?

    Ik dev al voor FOK! maar ben op dit moment aan het wachten op 'n ontwerp
    JeRavrijdag 2 december 2005 @ 13:12
    Heb overigens besloten om een gestripte versie van mijn FokClient online te zetten (zie signature). De source kun je hier vinden. Om, zoals ik nu met m'n signature doe, je profielinfo te wijzigen doe je iets als volgt:

    1
    2
    3
    4
    5
    6
    $fc = new FokClient();
    $fu = $fc->login('gebruikersnaam', 'wachtwoord'); //eventueel met expire in seconden
    $profile = $fu->getProfile();
    $profile['signature'] = 'blaat';  //of ondertitel, of whatever
    $fu->setProfile($profile);
    $fu->logout();  //eventueel met type logout

    Hiervoor heb je wel toegang nodig tot de functies als fsockopen() etc aangezien deze class gebruik maakt van een eigen HTTP handling veel plezier ermee iig het moet niet zo moeilijk zijn om eigen dingen te verzinnen die je aan de class kunt toevoegen voor meer functionaliteit. Af en toe doet Fok! een beetje vreemd (database-error?) en schrijf ik een bestand 'debug.log' met daarin de headers weg, die code kun je in principe gewoon weglaten.
    Swetseneggervrijdag 2 december 2005 @ 13:23
    quote:
    Op vrijdag 2 december 2005 13:01 schreef JeRa het volgende:

    [..]

    maar wil SuperRembo dat wel?

    Ik dev al voor FOK! maar ben op dit moment aan het wachten op 'n ontwerp
    Dat weet ik niet, maar in dit topic zitten een stuk of 4 'grootheden' en daar is SuperRembo er 1 van en 3 anderen developpen al
    Dan komt er een hele grote groepe 'leuke prutsers' waar ik zelf ook toe behoor, en dan nog een klein groepje absolute newbies
    Jimmyvrijdag 2 december 2005 @ 13:24
    2 includes doen.

    En ik zou die @ weglaten: die onderdrukt foutmeldingen, maar de pagina zou eigenlijk niet eens door mogen gaan als een van de includes niet lukt.
    Jimmyvrijdag 2 december 2005 @ 13:25
    quote:
    Op vrijdag 2 december 2005 11:06 schreef Breuls het volgende:
    Ik weet niet of posters in dit topic veel op Developer Central kijken, dus ik spam even een linkje voor het goede doel: Ontwikkelaars gezocht.
    Is het niet zo dat mensen die goed genoeg zijn, al hun geld met dit soort activiteiten kunnen verdienen?

    Ik weet dat ik niet snel tijd in een vrijwillig project zou steken voor iets wat ik ook als werk doe. (En dat is in dit geval idd webontwikkeling )
    Swetseneggervrijdag 2 december 2005 @ 13:26
    quote:
    Op vrijdag 2 december 2005 13:24 schreef Jimmy het volgende:
    2 includes doen.

    En ik zou die @ weglaten: die onderdrukt foutmeldingen, maar de pagina zou eigenlijk niet eens door mogen gaan als een van de includes niet lukt.
    include loopt gewoon door. require stopt.
    Swetseneggervrijdag 2 december 2005 @ 13:27
    quote:
    Op vrijdag 2 december 2005 13:25 schreef Jimmy het volgende:

    [..]

    Is het niet zo dat mensen die goed genoeg zijn, al hun geld met dit soort activiteiten kunnen verdienen?

    Ik weet dat ik niet snel tijd in een vrijwillig project zou steken voor iets wat ik ook als werk doe. (En dat is in dit geval idd webontwikkeling )
    Velen studeren nog. Dan kan een community als Fok! natuurlijk leuk op je CV staan
    Jimmyvrijdag 2 december 2005 @ 13:27
    quote:
    Op vrijdag 2 december 2005 13:26 schreef Swetsenegger het volgende:
    include loopt gewoon door. require stopt.
    Ja, dat weet ik: maar als er foutmeldingen zijn, zou je niet eens moeten willen dat ie doorgaat...
    Desdinovavrijdag 2 december 2005 @ 13:28
    ik maak er zoiezo requires van
    maar zolang ik die php's nog niet heb aangemaakt is dat ff kuttig. komt later wel
    maar ok, weet k ff genoeg. 2 requires dus.
    Swetseneggervrijdag 2 december 2005 @ 13:28
    quote:
    Op vrijdag 2 december 2005 13:27 schreef Jimmy het volgende:

    [..]

    Ja, dat weet ik: maar als er foutmeldingen zijn, zou je niet eens moeten willen dat ie doorgaat...
    Nee precies.
    Eigenlijk kan je dus altijd beter require gebruiken. MIts het echt niet 'bedrijfskritisch' is.
    Jimmyvrijdag 2 december 2005 @ 13:30
    quote:
    Op vrijdag 2 december 2005 13:27 schreef Swetsenegger het volgende:
    Velen studeren nog. Dan kan een community als Fok! natuurlijk leuk op je CV staan
    Ok, daar heb je gelijk in.
    Breulsvrijdag 2 december 2005 @ 13:36
    quote:
    Op vrijdag 2 december 2005 13:27 schreef Swetsenegger het volgende:

    [..]

    Velen studeren nog. Dan kan een community als Fok! natuurlijk leuk op je CV staan
    Het heeft mij aan een baan geholpen, dus ja, dat kan zeker leuk op je CV staan.
    Swetseneggervrijdag 2 december 2005 @ 13:39
    quote:
    Op vrijdag 2 december 2005 13:36 schreef Breuls het volgende:

    [..]

    Het heeft mij aan een baan geholpen, dus ja, dat kan zeker leuk op je CV staan.
    Jammer dat je geen tijd hebt om af en toe hier eens je expertise te delen
    Volledig offtopic, werk je in Rotterdam Breuls?
    Breulsvrijdag 2 december 2005 @ 14:02
    Ik werk op de Mariniersweg in het centrum van Rotterdam.
    Swetseneggervrijdag 2 december 2005 @ 14:03
    quote:
    Op vrijdag 2 december 2005 14:02 schreef Breuls het volgende:
    Ik werk op de Mariniersweg in het centrum van Rotterdam.
    Nooit geweten dat daar een internet developer zit
    Breulsvrijdag 2 december 2005 @ 14:12
    quote:
    Op vrijdag 2 december 2005 14:03 schreef Swetsenegger het volgende:

    [..]

    Nooit geweten dat daar een internet developer zit
    Het staat ook nergens met grote borden aangegeven.
    mscholvrijdag 2 december 2005 @ 14:37
    quote:
    Op vrijdag 2 december 2005 13:23 schreef Swetsenegger het volgende:

    [..]

    Dat weet ik niet, maar in dit topic zitten een stuk of 4 'grootheden' en daar is SuperRembo er 1 van en 3 anderen developpen al
    Dan komt er een hele grote groepe 'leuke prutsers' waar ik zelf ook toe behoor, en dan nog een klein groepje absolute newbies
    ik ook
    Chandlervrijdag 2 december 2005 @ 16:21
    idd gewoon 2 includes doen, www.php.net/include
    existenzvrijdag 2 december 2005 @ 18:43
    quote:
    Op vrijdag 2 december 2005 13:27 schreef Swetsenegger het volgende:

    [..]

    Velen studeren nog. Dan kan een community als Fok! natuurlijk leuk op je CV staan
    Vaker werkt een community als Fok! tegen jouw, omdat je te veel tijd zal kosten (Aldus redenatie van de baas, welke in dit soort gevallen vaak ook wel klopt). Dat het ook kan helpen bewijst Breuls, maar daar moet je niet zo maar vanuit gaan.
    pc-fr34kvrijdag 2 december 2005 @ 19:57
    JeRa, ik wilde eerst ook zoiets maken voor in m'n signature en toen zeiden Breuls en Slar dat ik de source niet vrij zou mogen geven omdat niet iedereen er een tijdslimit op zet en dit de server teveel zou belasten... Ik denk ik zeg het maar eventjes voordat jij en je server een ban hebben, dat zeiden ze iig tegen mij. .
    JeRavrijdag 2 december 2005 @ 20:11
    quote:
    Op vrijdag 2 december 2005 19:57 schreef pc-fr34k het volgende:
    JeRa, ik wilde eerst ook zoiets maken voor in m'n signature en toen zeiden Breuls en Slar dat ik de source niet vrij zou mogen geven omdat niet iedereen er een tijdslimit op zet en dit de server teveel zou belasten... Ik denk ik zeg het maar eventjes voordat jij en je server een ban hebben, dat zeiden ze iig tegen mij. .
    Over welke source heb je 't?
    pc-fr34kvrijdag 2 december 2005 @ 20:31
    quote:
    Op vrijdag 2 december 2005 20:11 schreef JeRa het volgende:

    [..]

    Over welke source heb je 't?
    Die om je profiel te wijzigen. Ik heb er een mailwisseling over gehad toen met breuls en het mocht mits ik de source niet zou vrijgeven, het script gekeurd was zodat het de server niet zou belasten en er een timeout op zou zitten, wat bij jou er wel op zit. Maar als je aan iedereen de source laat zien kunnen mensen een random signature script maken die bv elke 2 secs veranderd, daar is de server niet blij mee.
    existenzvrijdag 2 december 2005 @ 20:37
    quote:
    Op vrijdag 2 december 2005 20:31 schreef pc-fr34k het volgende:

    [..]

    Die om je profiel te wijzigen. Ik heb er een mailwisseling over gehad toen met breuls en het mocht mits ik de source niet zou vrijgeven, het script gekeurd was zodat het de server niet zou belasten en er een timeout op zou zitten, wat bij jou er wel op zit. Maar als je aan iedereen de source laat zien kunnen mensen een random signature script maken die bv elke 2 secs veranderd, daar is de server niet blij mee.
    Dat is eerder een probleem van die waardeloze instellingen die de fok servers in draaien (Ubuntu ). Zoiets hoort gewoon een dikke time out te krijgen binnen een paar seconde van de server.
    JeRavrijdag 2 december 2005 @ 20:47
    quote:
    Op vrijdag 2 december 2005 20:37 schreef existenz het volgende:

    [..]

    Dat is eerder een probleem van die waardeloze instellingen die de fok servers in draaien (Ubuntu ). Zoiets hoort gewoon een dikke time out te krijgen binnen een paar seconde van de server.
    Naast mijn ervaring met Ubuntu als prima web-, data- en watdanalniet-server heb ik ook ervaring met Debian wat ik gebruik als distro voor mijn servers. Ik snap je opmerking over Ubuntu dus eerlijk gezegd niet echt mijn ervaring is dat het zelfs sneller fungeert als server dan de meeste andere distro's. Ooit Ubuntu geïnstalleerd als server, dus zonder X-server en al die meuk? Doe dat eens of vertel me wat er dan zo anders of onveiliger aan is dan een andere distro

    En wat bedoel je met timeout? Je wilt een module voor Apache gebruiken die dat bijhoudt? Waar moeten dan alle images vandaan komen? Of wil je het in PHP doen en zodoende nóg meer load op de servers brengen? Chapeau
    existenzvrijdag 2 december 2005 @ 20:58
    quote:
    Op vrijdag 2 december 2005 20:47 schreef JeRa het volgende:

    [..]

    Naast mijn ervaring met Ubuntu als prima web-, data- en watdanalniet-server heb ik ook ervaring met Debian wat ik gebruik als distro voor mijn servers. Ik snap je opmerking over Ubuntu dus eerlijk gezegd niet echt mijn ervaring is dat het zelfs sneller fungeert als server dan de meeste andere distro's. Ooit Ubuntu geïnstalleerd als server, dus zonder X-server en al die meuk? Doe dat eens of vertel me wat er dan zo anders of onveiliger aan is dan een andere distro
    Klein maar extreem belangrijk detail. Servers draai je NIET op unstable versies en 3x raden waar Ubuntu op gebaseerd is! Apache ed.. draaien ook leuk op Windows 95, maar dat doe je toch ook niet??
    quote:
    En wat bedoel je met timeout? Je wilt een module voor Apache gebruiken die dat bijhoudt? Waar moeten dan alle images vandaan komen? Of wil je het in PHP doen en zodoende nóg meer load op de servers brengen? Chapeau
    Op dezelfde plek waar je je load balancing ed. in hoort te stellen. Maar dat heeft Fok geloof ik dus niet, wat dus de performance problemen verklaard. Dat soort dingen stel je dus niet in op je apache of php, want dan is het allang te laat ervoor! Maar dit is een PHP topic, dus we gaan weer back OT
    JeRavrijdag 2 december 2005 @ 21:04
    quote:
    Op vrijdag 2 december 2005 20:58 schreef existenz het volgende:

    [..]

    Klein maar extreem belangrijk detail. Servers draai je NIET op unstable versies en 3x raden waar Ubuntu op gebaseerd is! Apache ed.. draaien ook leuk op Windows 95, maar dat doe je toch ook niet??
    Als je het over Debian Unstable hebt, laat me je dan uit de droom helpen. Ubuntu is gebaseerd op voornamelijk Debian Testing met links en rechts wat packages uit Unstable die volgens Debian nog niet stabiel genoeg waren. Echter gaat het in elk geval om software die uitvoerig getest is door vele mensen en bedrijven - en goh, waarom zou iedereen nou toch roepen dat Debian zo traag is met het uitbrengen van nieuwe software? Puur en alleen omdat Debian bang is dat 'nieuwe' features in software kritieke bugs met zich meenemen, terwijl juist die nieuwe features de boel sneller kunnen maken en zelfs uitvoerig getest zijn. En alle lekken die gevonden worden worden zowel in Ubuntu als Debian Sarge gefixed, dus ik wacht op een goed concreet voorbeeld van instabiliteit
    Swetseneggervrijdag 2 december 2005 @ 23:16
    Ik heel moeilijk doen met sessies om 'de laatste pagina' te onthouden waar ik vandaan kwam.
    Totdat ik me opeens javascript:history.back() herinnerde

    Soms kan je wel eens te ver doordraven in je server-side scripting
    JeRavrijdag 2 december 2005 @ 23:19
    quote:
    Op vrijdag 2 december 2005 23:16 schreef Swetsenegger het volgende:
    Ik heel moeilijk doen met sessies om 'de laatste pagina' te onthouden waar ik vandaan kwam.
    Totdat ik me opeens javascript:history.back() herinnerde

    Soms kan je wel eens te ver doordraven in je server-side scripting
    Ik gebruik ook altijd history.back() alleen is het nadelig als je van een andere site (Google?) afkomt. Dan gaat ie natuurlijk terug naar Google, terwijl je eigenlijk wilt dat de bezoeker op de website blijft. Je zou met een referer kunnen werken, en indien nodig gewoon hardcoden dat die knop teruggaat naar de homepage. Als het een algemene 'back'-knop is hoort dat natuurlijk niet, maar als het een geïntegreerd onderdeel van je menu is bijvoorbeeld vind ik het wel kunnen
    Swetseneggervrijdag 2 december 2005 @ 23:21
    quote:
    Op vrijdag 2 december 2005 23:19 schreef JeRa het volgende:

    [..]

    Ik gebruik ook altijd history.back() alleen is het nadelig als je van een andere site (Google?) afkomt. Dan gaat ie natuurlijk terug naar Google, terwijl je eigenlijk wilt dat de bezoeker op de website blijft. Als het een algemene 'back'-knop is hoort dat natuurlijk niet, maar als het een geïntegreerd onderdeel van je menu is bijvoorbeeld vind ik het wel kunnen
    Nee precies, het gaat er bij mij om wanneer je het winkelwagentje bekijkt je een optie 'verder winkelen' hebt. En dan wil ik je wel terug sturen naar de page waar je vandaan komt.
    Roonaanvrijdag 2 december 2005 @ 23:45
    In php kan je in principe gewoon een array in je session dumpen en daar telkens een url in dumpen.

    if($_SERVER['REQUEST_METHOD'] == 'GET') {
    array_unshift($_SESSION['requests'], $_SERVER['REQUEST_URI']);
    //eventueel de history beperken tot 10 items
    $_SESSION['requests'] = array_slice($_SESSION['requests'],0,10);
    }

    Kan je bijna een complete user history bijhouden.

    $currentPage = $_SESSION['request'][0];
    $previousPage = $_SESSION['request'][1];
    SuperRembozaterdag 3 december 2005 @ 09:50
    Als je dat op "back" klikt, dan moet je wel even de url history aanpassen, anders kom je nooit verder dan 1 pagina terug.
    Roonaanzaterdag 3 december 2005 @ 09:51
    Klopt, maar dat is een uitbereiding.
    Chandlerzaterdag 3 december 2005 @ 10:23
    Ik heb een leuk iets

    Op dit moment ben ik weer bezig met mijn enquete builer maar er mist een mogelijkheid en dat is om een matrix vraag toe te voegen... wat is nu een matrix vraag? nou een vraag met meerdere mogelijkheden..

    Reeds heb ik in mijn systeem de volgende mogelijkheid.


    Maar nu wil ik dus ook een echte matrix gaan toevoegen... zoiets als dit.


    Echter wil/kan ik geen andere tabellen gaan toevoegen omdat het huidige systeem al aardig wat tabellen (7 in totaal) gebruik.. ik heb de volgende tabellen.

    deze tabel is voor de index van de vraag (dus naam, type vraag etc)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    CREATE TABLE `question_index` (
      `id` bigint(20) NOT NULL auto_increment,
      `enquete_id` bigint(20) NOT NULL default '0',
      `name` varchar(128) NOT NULL default '',
      `comment` text NOT NULL,
      `type_question` tinyint(1) NOT NULL default '0',
      `type_rows` tinyint(4) NOT NULL default '0',
      `type_open` tinyint(1) NOT NULL default '0',
      `type_length` tinyint(4) NOT NULL default '0',
      `type_maxlength` tinyint(4) NOT NULL default '0',
      `type_minlength` tinyint(4) NOT NULL default '0',
      `type_input` tinyint(1) NOT NULL default '0',
      `type_tab` tinyint(4) NOT NULL default '0',
      `skip` varchar(25) NOT NULL default '',
      KEY `id` (`id`,`enquete_id`)
    ) TYPE=MyISAM;


    dan heb je natuurlijk nog waar je de mogelijke antwoorden in opslaat.
    1
    2
    3
    4
    5
    6
    7
    CREATE TABLE `question` (
      `id` bigint(20) NOT NULL auto_increment,
      `enquete_id` bigint(20) NOT NULL default '0',
      `question_id` bigint(20) NOT NULL default '0',
      `question` varchar(128) NOT NULL default '',
      KEY `id` (`id`,`enquete_id`,`question_id`)
    ) TYPE=MyISAM;


    ennuh nu zat ik me dus aftevragen of het mogelijk zou zijn om deze matrix optie toch te verwerken in dit huidige database systeem en of dat er misschien een veldje bij moet komen ofzo... Hebben jullie suggesties?

    Vragen beantwoord ik ook graag op MSN natuurlijk en natuurlijk ook hier met plezier maar soms is MSN even wat handiger, wil je een voorbeeld van m'n enquete zien of me admin eens een grondige inspectie geven!? dat mag met plezier maar de PSW krijg je alleen via MSN

    voor een preview van het huidige systeem check

    http://enquete.bruggema.nl

    Mogelijkheden in de oude versie
    - enquete invoeren via onhandige admin
    - vragen eenmaal beantwoorden
    - geen statistieken (dus ook niet lelijk)
    - fouten bij opslaan van data

    mogelijkheden in nieuwe versie
    - goede admin, oftewel invoeren van de vragen.
    - mensen kunnen nu ook een enquete herbeantwoorden.
    - de data wordt nu goed opgeslagen (echter nog geen validatie op input)
    - statistieken zijn nu te zien (lelijk maar goed!)
    - en nog veel meer
    existenzzaterdag 3 december 2005 @ 10:59
    quote:
    Op zaterdag 3 december 2005 10:23 schreef Chandler het volgende:
    Ik heb een leuk iets

    -knip-
    Ja, dat kan. Je zult dan alleen even moeten hobbien met de interpretatie van de tabellen door PHP wanneer je een dergelijke vraag bouwt. Je zult een aantal velden moeten "misbruiken".
    Chandlerzaterdag 3 december 2005 @ 11:10
    ik zat zelf te denken aan een veld toe te voegen aan de tabel question_index waarin ik de 'mogelijkheden' zet zoals Zeer goed; Goed; Matig; Slecht en dan de mogelijke antwoorden gewoon in het tabel questions te zetten en dus de vragen gewoon te voorzien van radio buttons die per lijn item[1][matrix][1] = 1,2,3,4 etc ofzo .. (count van question_index.matrix) ofzo
    PunisherADFzaterdag 3 december 2005 @ 12:20
    Ik kom er even niet uit,
    ik heb apache 2.0 draaien / php 5 / mysql 5.0 / phpmyadmin
    Deze werken allemaal prima via phpmyadmin kan ik nieuwe databases aanmaken etc.
    Alleen als ik vanuit een php script een aanroep doe naar; de mysql database doet ie helemaal niks.

    $ server = mysql_connect(); doet ie al helemaal niks op. Hij gaat ook niet verder met de rest van het script, mysql_select_db("db",$server) komt ie dus al niet eens :S.
    Jimmyzaterdag 3 december 2005 @ 12:24
    Vervang
    $ server = mysql_connect();

    eens door
    $ server = mysql_connect() or die(mysql_error());
    PunisherADFzaterdag 3 december 2005 @ 12:29
    Ik zie dan helemaal niks, lijkt erop dat er tog ergens een instelling niet helemaal lekker zit
    mscholzaterdag 3 december 2005 @ 12:37
    quote:
    Op zaterdag 3 december 2005 12:29 schreef PunisherADF het volgende:
    Ik zie dan helemaal niks, lijkt erop dat er tog ergens een instelling niet helemaal lekker zit
    met alleen
    mysql_connect()

    doet ie bij mij ook niks..
    [rpbeer eens"
    mysql_connect("host","username","password");
    denk dattie dan wel wat doet...

    uiteraard username, passowrd en host veranderen naar jouw waardes..

    wat parameter omgedraaid

    [ Bericht 11% gewijzigd door mschol op 03-12-2005 12:46:54 ]
    PunisherADFzaterdag 3 december 2005 @ 12:44
    Mm lijkt niks te helpen :S
    mscholzaterdag 3 december 2005 @ 12:47
    quote:
    Op zaterdag 3 december 2005 12:44 schreef PunisherADF het volgende:
    Mm lijkt niks te helpen :S
    lees dan eff de phph handleiding na:
    http://nl3.php.net/mysql_connect

    want hij herkent de functie wel anders geeft hij een melding dat hij de functie niet kent...
    PunisherADFzaterdag 3 december 2005 @ 12:49
    okeej bedankt
    Swetseneggerzaterdag 3 december 2005 @ 13:34
    quote:
    Op vrijdag 2 december 2005 23:45 schreef Ro�a� het volgende:
    In php kan je in principe gewoon een array in je session dumpen en daar telkens een url in dumpen.

    if($_SERVER['REQUEST_METHOD'] == 'GET') {
    array_unshift($_SESSION['requests'], $_SERVER['REQUEST_URI']);
    //eventueel de history beperken tot 10 items
    $_SESSION['requests'] = array_slice($_SESSION['requests'],0,10);
    }

    Kan je bijna een complete user history bijhouden.

    $currentPage = $_SESSION['request'][0];
    $previousPage = $_SESSION['request'][1];
    Mooi, maar in mijn geval gaat het echt maar om de vorige pagina.
    Roonaanzaterdag 3 december 2005 @ 13:48
    Dan zou je hem kunnen array_slicen op 0,2 natuurlijk :-)
    Swetseneggerzaterdag 3 december 2005 @ 13:51
    quote:
    Op zaterdag 3 december 2005 13:48 schreef Ro�a� het volgende:
    Dan zou je hem kunnen array_slicen op 0,2 natuurlijk :-)
    Is javascript:history.back() dan niet gewoon eenvoudiger?
    the_disheaverzaterdag 3 december 2005 @ 13:57
    quote:
    Op zaterdag 3 december 2005 13:51 schreef Swetsenegger het volgende:

    [..]

    Is javascript:history.back() dan niet gewoon eenvoudiger?
    Voorkomt niet dat je bv op google terecht komt (is alleen de vraag bij jou hoe groot de kans daarop is, als het een winkelmandje is...)

    Maar zoeits kun je lijkt me ook oplossen met een if functie onder de history.back met een referer als statement.
    Swetseneggerzaterdag 3 december 2005 @ 14:09
    quote:
    Op zaterdag 3 december 2005 13:57 schreef the_disheaver het volgende:

    [..]

    Voorkomt niet dat je bv op google terecht komt (is alleen de vraag bij jou hoe groot de kans daarop is, als het een winkelmandje is...)

    Maar zoeits kun je lijkt me ook oplossen met een if functie onder de history.back met een referer als statement.
    Dat klopt, maar daar hadden we het gisteren al overgehad.
    In mijn geval is het een winkelwagentje, waarop je alleen terecht komt als je in het zelfde domein op 'bekijk winkelwagentje' klikt.

    Ik was dus zelf ook al bezig met sessies en arrays en dergelijke, maar in dit geval was het een beetje overkill aan serverside scripting, terwijl het clientside een stuk eenvoudiger was op te lossen
    Onderbroekzaterdag 3 december 2005 @ 14:55
    ik moet als opdracht voor school een klein invulschermpje maken (php). alles is goed gegaan maar ik weet niet hoe ik alles netjes onder elkaar kan zetten, misschien dat jullie mij daarmee kunnen helpen.

    de code:
    quote:
    <body>
    <FORM name=Voornaam action=toon_keuze.php method=get>
    <?php echo ("voornaam")?><INPUT value=... name=Voornaam><BR>
    <?php echo ("achternaam")?><INPUT value=... name=Achternaam> <BR><BR>
    <?php echo ("geslacht")?><BR>
    <?php echo ("man")?><INPUT type=radio value=man name=geslacht> <BR>
    <?php echo ("vrouw")?><INPUT type=radio value=vrouw name=geslacht> <BR><BR>
    <?php echo ("interesse")?><BR>
    <?php echo ("Volkskrant")?><INPUT type=checkbox value=Volkskrant name=Interesse> <BR>
    <?php echo ("Algemeen Dagblad")?><INPUT type=checkbox value="Algemeen Dagblad" name=Interesse> <BR>
    <INPUT type=submit value=send name=submit> </FORM>
    </body>
    existenzzaterdag 3 december 2005 @ 15:00
    1
    2
    3
    4
    5
    6
    <table width="100%">
    <tr width=100%>
    <td width="40%"><?php echo "voornaam" ?></td>
    <td> <INPUT value=... name=Voornaam></td>
    </tr>
    </table>


    Hoeft dus niet in php te gebeuren Gewoon met tabellen of divjes in html werken.