abonnement Unibet Coolblue Bitvavo
  FOK!-Schrikkelbaas zaterdag 3 maart 2007 @ 17:44:56 #1
1972 Swetsenegger
Egocentrische Narcist
pi_46882346

cd niet bijgeleverd

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

Vorige delen
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39


Zie ook
  • PHP Dataverwerking
  • Officiële PHP website
  • PHP Documentatie
  • MySQL Reference Manual
  • Yet Another PHP Faq
  • PHP Cheat Sheet
  • PHP5 Power Programming - boek met uitleg over OOP, Pear, XML, etc

    Tutorials
  • W3Schools PHP
  • W3Schools SQL

    Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP
  • pi_46883302
    Zoekmachines, o.a. google, kunnen sitemaps indexeren. http://www.sitemaps.org/

    Weet iemand een (php) tool die ik kan implementeren op mijn site om zo (semi) automatisch zo een sitemap te laten genereren?
    pi_46890144
    Een mogelijkheid blijkt http://www.xml-sitemaps.com
    pi_46896249
    Hmmm, een simpel probleem, waarvoor ik de oplossing zo niet vind.

    In een tabel in de database staat de tijd als unix timestamp (seconden sinds epoch) Hier wil ik een gewone leesbare datum van maken. Hoe?
    1
    2
    $tijd = 1144175989;
    print date("Y-m-d",$tijd); 

    Doet het dus niet. Wat is de truck???
    pi_46896252
    ordinaire terug vind post
    quote:
    Op zondag 4 maart 2007 01:38 schreef beerten het volgende:
    Hmmm, een simpel probleem, waarvoor ik de oplossing zo niet vind.

    In een tabel in de database staat de tijd als unix timestamp (seconden sinds epoch) Hier wil ik een gewone leesbare datum van maken. Hoe?
    [ code verwijderd ]

    Doet het dus niet. Wat is de truck???
    $tijd moet een integer zijn, het is nu toch een string?
    pi_46897066
    quote:
    Op zondag 4 maart 2007 01:38 schreef beerten het volgende:
    Hmmm, een simpel probleem, waarvoor ik de oplossing zo niet vind.

    In een tabel in de database staat de tijd als unix timestamp (seconden sinds epoch) Hier wil ik een gewone leesbare datum van maken. Hoe?
    [ code verwijderd ]

    Doet het dus niet. Wat is de truck???
    Dit output hier "2006-04-04", zou moeten werken?
    quote:
    Op zondag 4 maart 2007 01:38 schreef mschol het volgende:
    ordinaire terug vind post
    [..]

    $tijd moet een integer zijn, het is nu toch een string?
    Het is een integer. En zelfs als ik het quote en er een string van maak doet hij het alsnog goed. PHP is daar niet zo streng mee
    pi_46899630
    quote:
    Op zondag 4 maart 2007 01:38 schreef beerten het volgende:
    Doet het dus niet. Wat is de truck???
    "Doet het dus niet"

    Wat doet ie niet, en wat doet ie wel? Geeft ie een fout, geeft ie niets terug, geeft ie wel een datum maar de verkeerde, geeft ie de input terug?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_46901569
    Hmmm, het werkt uitstekend zelfs. Het probleem was dat ik een lege integer lade.
    De waarde was er een uit een database en ik had een klein typootje gemaakt.

    How stupid. Maar gezien het tijdstip en de gemoedstoestand...

    Thanks anyway
    pi_46913285
    laat maar

    [ Bericht 96% gewijzigd door broodmonkeh op 04-03-2007 19:56:30 ]
      zondag 4 maart 2007 @ 19:58:41 #10
    85514 ralfie
    !Yvan eht nioj
    pi_46916258
    quote:
    Op zondag 4 maart 2007 18:32 schreef broodmonkeh het volgende:
    laat maar
    http://nl3.php.net/static
    pi_46920254
    quote:
    Op zondag 4 maart 2007 19:58 schreef ralfie het volgende:

    [..]

    http://nl3.php.net/static
    thnx zal er naar kijken , maar ik heb het opgelost door gewoon die 2 functies in 1 functie te stoppen. Niet netjes maar toch
    pi_46931986
    Hey PHP kenners

    Ik zit met een vrij groot probleem.
    Voor school sta ik in mijn eentje voor een project (eind dit jaar klaar) om een website te maken waarbij men klachten kan invoeren + uitlezen, met een login scriptje e.d.

    Nu is het probleem: PHP interesseert mij/ken ik totaal niet.
    Het ligt niet in mijn straatje, en iets leren is voor mij is heel moeilijk als iets mij niet boeit zeg maar.

    Nu is mijn vraag: Waar/hoe kan ik beginnen?
    Een layout van een site maken is geen probleem met Dreamweaver bijv, alleen die scripts maken...
    Wat zijn goude sites die mij kunnen helpen?
    Let wel, ik ben écht een PHP-leek.

    Mijn dank is groot.
      FOK!-Schrikkelbaas maandag 5 maart 2007 @ 09:20:20 #13
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46932099
    Zie de OP.
    pi_46932177
    What's wrong??

    Ik heb de volgende echo

    1echo $cnt . "-" . DATE_SEARCH_PERPAGE . "-" . ($cnt / DATE_SEARCH_PERPAGE);


    en dit geeft als resultaat op mijn lokale server (met 9 items)

    9-5-1.80

    maar op een online server krijg ik dit als output (met 10 items)

    10-5-20

    What's wrong? is iets in PHP op de server kapot??
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46932225
    En hoe wordt $cnt dan wel niet gevuld?
    pi_46933083
    $cnt = een mysql_result die altijd 0 of hoger is...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      maandag 5 maart 2007 @ 11:33:35 #17
    12880 CraZaay
    prettig gestoord
    pi_46934889
    tvphp
    pi_46935518
    quote:
    Op maandag 5 maart 2007 10:18 schreef Chandler het volgende:
    $cnt = een mysql_result die altijd 0 of hoger is...
    En op je server is dat altijd 1.0 hoger?
    pi_46937621
    hoezo? Geqxon? ik snap je vraag niet!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      maandag 5 maart 2007 @ 14:27:49 #20
    85514 ralfie
    !Yvan eht nioj
    pi_46940421
    quote:
    Op maandag 5 maart 2007 13:03 schreef Chandler het volgende:
    hoezo? Geqxon? ik snap je vraag niet!
    post is wat meer gegevens joh, hiermee is het alleen maar gissen...
      maandag 5 maart 2007 @ 15:42:25 #21
    120139 freiss
    Hertog Jan :9~
    pi_46942997
    quote:
    Op maandag 5 maart 2007 14:27 schreef ralfie het volgende:

    [..]

    post is wat meer gegevens joh, hiermee is het alleen maar gissen...
    Ik denk dat $cnt voor count staat . Het probleem is dus dat als $cnt 9 is PHP de deling wel goed uitvoert, maar dat als $cnt 10 is PHP voor 10/5 opeens 20 als waarde geeft.

    Denk ik dan.
    HJ 14-punt-gift.
    Lijst met rukmateriaal!
    pi_46947875
    $cnt = aantal items in de database
    DATE_SEARCH_PERPAGE = het aantal items per pagina

    oftwel

    10/2
    20/2
    5/2

    etc
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      maandag 5 maart 2007 @ 17:50:38 #23
    85514 ralfie
    !Yvan eht nioj
    pi_46948218
    Nee, dat snap ik wel, maar wat dacht je van server os, php versie?
    pi_46949056
    quote:
    Op zaterdag 3 maart 2007 17:41 schreef Swetsenegger het volgende:

    [..]

    Magic quotes zal waarschijnlijk aanstaan.
    Vanavond ga ik naar een cabaret voorstellingen maar ik zal morgen ff kijken wat dat ding precies doet en of het dan beter werkt.

    Het liefste wil ik gewoon 1 malig addslashes en niet later nog eens overal stripslashes uitvoeren, tenzij het de veiligheid in de weg staat, veiligheid boven alles natuurlijk.
    -
    pi_46949178
    Doe eens een var_dump() van $cnt, DATE_SEARCH_PERPAGE en $cnt/DATE_SEARCH_PERPAGE. Is DATE_SEARCH_PERPAGE soms gelijk aan .5 in plaats van 5?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      FOK!-Schrikkelbaas maandag 5 maart 2007 @ 18:21:42 #26
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46949349
    quote:
    Op maandag 5 maart 2007 18:13 schreef splendor het volgende:

    [..]

    Vanavond ga ik naar een cabaret voorstellingen maar ik zal morgen ff kijken wat dat ding precies doet en of het dan beter werkt.

    Het liefste wil ik gewoon 1 malig addslashes en niet later nog eens overal stripslashes uitvoeren, tenzij het de veiligheid in de weg staat, veiligheid boven alles natuurlijk.
    *zucht*, zoals gezegd alles door strip_slashes deep trekken ALS magiq quotes aanstaan en met mysql_real_escape_string naar db schrijven. Dan kan je vervolgens zonder probleem de data UIT database presenteren zonder strip_slashes.
    pi_46949538
    quote:
    Op maandag 5 maart 2007 18:21 schreef Swetsenegger het volgende:

    [..]

    *zucht*, zoals gezegd alles door strip_slashes deep trekken ALS magiq quotes aanstaan en met mysql_real_escape_string naar db schrijven. Dan kan je vervolgens zonder probleem de data UIT database presenteren zonder strip_slashes.
    Het is goed bedoeld dat weet ik wel. Maar ik doe niet zomaar iets omdat het gezegd wordt in dit topic, ik wil graag weten waarom het nodig is, en hoe het allemaal werkt.
    Dus morgen eerst even de php.net beschrijving van die functies lezen en kijken wat de voor en nadelen zijn.
    -
    pi_46949673
    quote:
    Op maandag 5 maart 2007 18:13 schreef splendor het volgende:
    Het liefste wil ik gewoon 1 malig addslashes en niet later nog eens overal stripslashes uitvoeren, tenzij het de veiligheid in de weg staat, veiligheid boven alles natuurlijk. :)
    Je moet encoding alleen gebruiken waar het nodig is. Het is niet handig om standaard alle input door addslashes() heen te halen (zoals magic quotes doet) omdat het misschien wel eens in een SQL statement gebruikt gaat worden.

    String in een SQL statement? mysql_real_escpae_string() of addslashes()
    1$sql = "SELECT foo FROM bar WHERE baz = '". mysql_real_escpae_string($baz) ."'";

    String als parameter in een url? urlencode()
    1$url = 'http://foo.net/bar.php?baz='.urlencode($baz);

    String in een stuk html? htmlentities() of htmlspecialchars()
    1$link = '<a href="'.htmlentities($url.'&bazz='.urlencode($bazz)).'">Foo</a>';
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      maandag 5 maart 2007 @ 20:17:24 #29
    51748 H4ze
    wait...what?
    pi_46953761
    Ik heb sinds kort de kracht van object georienteerd programmeren in PHP ontdekt Ik heb al wel aardig wat ervaring met OOP in Java, maar ik dacht altijd dat 't voor PHP een beetje doelloos was. Maar zeker voor de wat grotere projecten is het zeer geschikt
    *BURP*
    pi_46956662
    quote:
    Op maandag 5 maart 2007 20:17 schreef H4ze het volgende:
    Ik heb sinds kort de kracht van object georienteerd programmeren in PHP ontdekt Ik heb al wel aardig wat ervaring met OOP in Java, maar ik dacht altijd dat 't voor PHP een beetje doelloos was. Maar zeker voor de wat grotere projecten is het zeer geschikt
    ik heb voor school wel eens met OOP moeten werken, maar i.p.v. overzichtelijker werd het alleen maar onoverzichtelijker, je had een functie die 20x naar iets anders verwees voordat hij daadwerkelijk de functie aanriep
      maandag 5 maart 2007 @ 21:50:18 #31
    51748 H4ze
    wait...what?
    pi_46957628
    quote:
    Op maandag 5 maart 2007 21:28 schreef mschol het volgende:

    [..]

    ik heb voor school wel eens met OOP moeten werken, maar i.p.v. overzichtelijker werd het alleen maar onoverzichtelijker, je had een functie die 20x naar iets anders verwees voordat hij daadwerkelijk de functie aanriep
    Dan heb je 't niet goed uitgedacht Ik ben op m'n stage op 't moment bezig met een groot PHP project. Alle modules die ik ontwikkel, werk ik eerst uit in UML. Met een goed ontwerp kun je zeer efficient OO programmeren.
    *BURP*
    pi_46969637
    Gaat er nog iemand een artikel schrijven over OOP in PHP?
    pi_46969961
    Ik heb weer een leuke:

    Een simpele query. Tabel met vier kolommen, eerst gesorteerd op A, daarna op B en daarna op C. D is een extra kolom, met een los attribuut. Nu hoeft er niet op D gestorteerd te worden, tenzij D lager dan 16 is. Dan moet D helemaal bovenaan de searchresults komen.

    In PHP is dat op te vangen door twee query's te gebruiken, maar kan dit niet gewoon al direct in de query zelf?
    pi_46970050
    quote:
    Op dinsdag 6 maart 2007 11:47 schreef super-muffin het volgende:
    Gaat er nog iemand een artikel schrijven over OOP in PHP?
    Daar zijn volgens mij al genoeg artikelen over geschreven

    Maar het is echt ontzettend handig, dat OOP. Voordat ik voor FOK! dev-te maakte ik er nauwelijks gebruik van, maar zeker met een site als FOK! moet je haast wel OOP gebruiken om onderdelen soepel met elkaar te laten samenwerken. En dat maakt het programmeren heerlijk, je hoeft niet na te denken over allerlei functies die met elkaar moeten samenwerken, fantastisch.

    Misschien dat ik nog wel eens een stukje op de dev-weblog kan schrijven
    pi_46970266
    quote:
    Op dinsdag 6 maart 2007 11:57 schreef Geqxon het volgende:
    Ik heb weer een leuke:

    Een simpele query. Tabel met vier kolommen, eerst gesorteerd op A, daarna op B en daarna op C. D is een extra kolom, met een los attribuut. Nu hoeft er niet op D gestorteerd te worden, tenzij D lager dan 16 is. Dan moet D helemaal bovenaan de searchresults komen.

    In PHP is dat op te vangen door twee query's te gebruiken, maar kan dit niet gewoon al direct in de query zelf?
    Je zou kunnen proberen om met IF in je query te gaan werken. Dus IF d < 16 THEN ORDER BY d ELSE ORDER BY a, b, c END IF. Ik heb geen kant en klare query bij de hand, maar ik denk dat je in die richting moet zoeken
    Daarnaast weet ik eigenlijk niet precies hoeveel load dat op je mysql-server geeft, dus het zou kunnen zijn dat het sneller is om het in php te verwerken
    pi_46970775
    quote:
    Op maandag 5 maart 2007 21:50 schreef H4ze het volgende:

    [..]

    Dan heb je 't niet goed uitgedacht Ik ben op m'n stage op 't moment bezig met een groot PHP project. Alle modules die ik ontwikkel, werk ik eerst uit in UML. Met een goed ontwerp kun je zeer efficient OO programmeren.
    Kijk in dat kader ook even naar Zend Framework.
    pi_46970836
    quote:
    Op dinsdag 6 maart 2007 12:09 schreef Hmail het volgende:

    [..]

    Je zou kunnen proberen om met IF in je query te gaan werken. Dus IF d < 16 THEN ORDER BY d ELSE ORDER BY a, b, c END IF. Ik heb geen kant en klare query bij de hand, maar ik denk dat je in die richting moet zoeken
    Daarnaast weet ik eigenlijk niet precies hoeveel load dat op je mysql-server geeft, dus het zou kunnen zijn dat het sneller is om het in php te verwerken
    Idd, iets als:

    SELECT IF(d < 16, 0, 1) as d_low, a, b, c FROM TABLE ORDER BY d_low, a, b, c, d
    pi_46971113
    quote:
    Op dinsdag 6 maart 2007 12:28 schreef Roonaan het volgende:

    [..]

    Idd, iets als:

    SELECT IF(d < 16, 0, 1) as d_low, a, b, c FROM TABLE ORDER BY d_low, a, b, c, d
    hehe, you beat me Ik vond mijn query nog aardig gevonden
    pi_46972142
    Maar die (d < 16), op welke D slaat dat? Want in mijn tabel zijn er 1600 records, het is niet alsof ik maar een enkel record tevoorschijn tover
    pi_46973104
    quote:
    Op dinsdag 6 maart 2007 13:15 schreef Geqxon het volgende:
    Maar die (d < 16), op welke D slaat dat? Want in mijn tabel zijn er 1600 records, het is niet alsof ik maar een enkel record tevoorschijn tover
    Die d is een veld van je record.
    pi_46973942
    Ik krijg het gevoel dat ik het niet 100% begrijp. Zelf wil ik het in de trant van:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    +-------+-------+-------+-------+
    |   A   |   B   |   C   |   D   |
    +-------+-------+-------+-------+
    |   D**   |   I**   |   2**   |   4   |
    |   A**   |   E**   |   1**   |   120   |
    |   P**   |   Q**   |   1**   |   133   |
    |   P**   |   R**   |   2**   |   159   |
    |   Z**   |   H**   |   1**   |   141   |
    +-------+-------+-------+-------+


    Dus sorteren op A, gevolgd door B en daarna C. Niet op D sorteren, tenzij deze lager dan 16 is, dan moet deze bovenaan de resultaten. Werkt deze IF statement niet per rij, in plaats van in het geheel?
      dinsdag 6 maart 2007 @ 15:01:04 #42
    85514 ralfie
    !Yvan eht nioj
    pi_46975968
    1IF (d <16,0,1) AS d_low
    Dit betekent simpelweg dat als de 'd' van die rij kleiner is als 16, dat d_low dan 0 wordt, anders wordt die 1. Door nu eerst te sorteren op deze uitkomst, krijg je eerst alle rijen waar 'd' kleiner is als 16, en daarna alle rijen waar 'd' groter is als 16. En dat was dacht ik wat je wilde

    1SELECT *,IF(d<16,0,1) AS d_low FROM table ORDER BY d_low,A,B,C


    geeft dan

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    +------+------+------+------+-------+
    | A    | B    | C    | D    | d_low |
    +------+------+------+------+-------+
    | D**  | I**  | 2**  |    4 |   0   |
    | A**  | E**  | 1**  |  120 |   1   |
    | P**  | Q**  | 1**  |  133 |   1   |
    | P**  | R**  | 2**  |  159 |   1   |
    | Z**  | H**  | 1**  |  141 |   1   |
    +------+------+------+------+-------+
    5 rows in set (0.00 sec)


    [ Bericht 12% gewijzigd door ralfie op 06-03-2007 15:06:28 ]
    pi_46976871
    Dat is duidelijke praat, hij maakt simpelweg tijdelijk een extra kolom aan ,die 0 is if true en 1 if false, en sorteert daar op. Werkt prima, bedankt!
    pi_46977454
    quote:
    Op maandag 5 maart 2007 21:50 schreef H4ze het volgende:

    [..]

    Dan heb je 't niet goed uitgedacht Ik ben op m'n stage op 't moment bezig met een groot PHP project. Alle modules die ik ontwikkel, werk ik eerst uit in UML. Met een goed ontwerp kun je zeer efficient OO programmeren.
    ik heb het uitgedacht zoals het moest van de docenten..
      FOK!-Schrikkelbaas dinsdag 6 maart 2007 @ 15:59:12 #45
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46978259
    Query vraagje.
    Als ik nu een tabel heb met een veld initialen en een veld achternaam. En die wil ik vervolgens selecteren als naam.

    SELECT (intialen, achternaam) AS naam FROM tabel

    werkt in ieder geval niet
    pi_46978505
    SELECT CONCAT(initialen, " ", achternaam) AS naam FROM tabel.

    Waar laat je overigens je tussenvoegsel?

    Note: is het construeren van een naamsweergave uit onderdelen een data niveau kwestie of een template kwestie?
      FOK!-Schrikkelbaas dinsdag 6 maart 2007 @ 16:24:02 #47
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46979237
    quote:
    Op dinsdag 6 maart 2007 16:05 schreef Roönaän het volgende:
    SELECT CONCAT(initialen, " ", achternaam) AS naam FROM tabel.
    Bedankt! Helaas werkt dit niet met Access, maar wel met de & operator
    quote:
    Waar laat je overigens je tussenvoegsel?
    Hoe bedoel je?
    quote:
    Note: is het construeren van een naamsweergave uit onderdelen een data niveau kwestie of een template kwestie?
    eh... beide
      dinsdag 6 maart 2007 @ 16:58:21 #48
    52200 ViPeRII
    It's a good day to die
    pi_46980609
    Hi,

    Heb een probleem met een functie:
    de input komt uit een textarea en is b.v.:
    Home
    *test
    +menu
    -tje
    Contact
    Extra

    Alles met enters er achter n naar ik aanneem.

    Nu heb ik hier een functie, die code moet opbouwen voor een menu:
    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
    <?php
    function make_menu_data_2($data)
    {
       $menus1 = explode("n", $data);
       $menus = str_replace("n","",$menus1);
       print_r($menus);
       $aantal = count($menus);
       $menu = "var MENU_ITEMS = [n";
       for ($i = 0; $i < $aantal; $i++) 
       {      
       $menu .= "['";

       if ($menus[$i][0] == "*")
       {
       $menu .= str_replace("*","",$menus[$i]) . "', null, null,n";
       }
       else
       {
       if ($menus[$i][0] == "+")
       {
       $menus[$i] = str_replace("+", "", $menus[$i]);
       $menu .= $menus[$i] . "','page=" . str_replace(" ","",$menus[$i]) . "'],n";
                         }
       else
       if ($menus[$i][0] == "-")
       {
       $menus[$i] = str_replace("-", "", $menus[$i]);
       $menu .= $menus[$i] . "','page=" . str_replace(" ","",$menus[$i]) . "']n],n";
                         }
       else
       {
       $menu .= $menus[$i] . "','page=" . str_replace(" ","",$menus[$i]);
       $menu .= "'],n";
       }
                }
      }
    $menu .= "n];";

    $code = $menu;
    return $code;
    }
    ?>

    Volgens mij zou de output:
    var MENU_ITEMS = [
    ['Home','page=Home'],
    ['test', null, null,
    ['menu','page=menu'],
    ['tje','page=tje']
    ],
    ['Contact','page=Contact'],
    ['Extra','page=Extra'],

    ];

    moeten zijn (zoals ik het ook hebben moet, maar hij maakt er:
    var MENU_ITEMS = [
    ['Home
    ','page=Home
    '],
    ['test
    ', null, null,
    ['menu
    ','page=menu
    '],
    ['tje
    ','page=tje
    ']
    ],
    ['Contact
    ','page=Contact
    '],
    ['Extra','page=Extra'],

    ];

    van. zie iemand de fout in mijn code?

    Als hij er uit komt als het 2e voorbeeld, doet mijn code het niet.
    Het is belangrijk dat het er uit komt als: ['Extra','page=Extra'],
    en niet als
    ['Extra',
    'page=Extra'],

    Hopelijk heeft iemand een idee
    -- ViPeRII --
      FOK!-Schrikkelbaas dinsdag 6 maart 2007 @ 17:12:26 #49
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46981153
    onder windows is \r\n
      dinsdag 6 maart 2007 @ 17:20:22 #50
    128663 h.henkie
    Ik ontken alles
    pi_46981464
    Hoi
    Ik heb het volgende. Op deze pagina heb ik een upload scriptje staan met de volgende code:


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <?php
    <form name="upload formulier" enctype="multipart/form-data" method="post" action=" echo $_SERVER['PHP_SELF']; ">
      <
    input type="file" name="source_file">
      <
    br>
      <
    input type="submit" name="submit" value="Submit">
    </
    form><br />

      

    error_reporting(E_ALL);  

    if(isset(
    $_POST['submit'])) {  
        
    $size $_FILES['source_file']['size'];// / 1024 / 1024   om naar MB te gaan. 
        
    $size round($size2);  
        echo 
    "Het volgende bestand wordt geupload:<br />"
        echo 
    "Naam: '" $_FILES['source_file']['name'] . "'<br />"
        echo 
    "Grootte: '" $size " Bytes'<br />"
        echo 
    "<b>tmp_name:</b> '" $_FILES['source_file']['tmp_name'] . "'<br />"
        echo 
    "de upload wordt verwerkt...<br />"

        
    //Variabelen definiëren
        
    $ftp_server "ftp.edek.nl";  
        
    $ftp_user_name "hromiz";  
        
    $ftp_user_pass "XXXXXX";
        
    $source_file $_FILES['source_file']['tmp_name'];  
        
    $destination_file 'rooster/bestand/'.$_FILES['source_file']['name'];  
        echo 
    $destination_file."<br>"

        
    //Maak een basis connectie aan
        
    $conn_id ftp_connect($ftp_server);  
        
    ftp_pasv($conn_id,TRUE);  

        
    //Meldt je aan met een gebruikersnaam en wachtwoord
        
    $login_result ftp_login($conn_id$ftp_user_name$ftp_user_pass);  

         
    //Controleer de verbinding
        
    if ((!$conn_id) || (!$login_result)) {  
            echo 
    "FTP connectie is mislukt!<br />";  
            echo 
    "Probeerde naar '" $ftp_server "' te verbinden met de gebruiker '" $ftp_user_name "'<br />";  
            exit;  
        } else {  
            echo 
    "Verbonden met '" $ftp_server "', als gebruiker '" $ftp_user_name "'<br />";  
        }  
       
     
    //Upload een bestand
        
    $upload ftp_put($conn_id$destination_file$source_fileFTP_BINARY);  
     
     
    //Controleer de upload status
        
    if (!$upload) {  
            echo 
    "FTP upload is mislukt!<br />";  
        } else {  
            echo 
    "<b>Geupload: '" $source_file "' naar '" $ftp_server "' als '" $destination_file "'</b><br />";  
        }  
        
    //Sluit de FTP stream
        
    ftp_close($conn_id);  
    }  
    ?>


    Ik krijg bij de link de fout melding:
    quote:
    Warning: ftp_put() [function.ftp-put]: rooster/bestand/license.txt: The system cannot find the path specified. in c:domainsedek.nlwwwrootrooster1.php on line 46

    Als ik dit script op mijn prive webserver zet werkt het wel. (ook van buitenaf)

    Wie weet waar de fout zit? Voor mijn gevoel heeft het iets met rechten oid te maken.

    gegroet
    "Een kat heeft 40 miljoen haren: 5 miljoen op de rug, 10 miljoen op de
    buik, en 25 miljoen op uw bankstel" -- Midas Dekkers
    pi_46981620
    quote:
    Op dinsdag 6 maart 2007 16:24 schreef Swetsenegger het volgende:


    Hoe bedoel je?
    [..]

    eh... beide
    Hans van den Berg wordt in jouw voorbeeld "H. Berg"
      FOK!-Schrikkelbaas dinsdag 6 maart 2007 @ 17:25:31 #52
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46981693
    quote:
    Op dinsdag 6 maart 2007 17:24 schreef Geqxon het volgende:

    [..]

    Hans van den Berg wordt in jouw voorbeeld "H. Berg"
    Ow ja, die kan ik er eventueel nog bij pakken. Maar niet van belang voor de toepassing.
      dinsdag 6 maart 2007 @ 17:32:31 #53
    52200 ViPeRII
    It's a good day to die
    pi_46982014
    @swetsenecker...

    Dus ik moet filteren op rn ?
    En wat bedoel je onder windows? De post data is onder een windows client anders dan onder een linux client of bedoel je server sided?
    -- ViPeRII --
      dinsdag 6 maart 2007 @ 20:56:30 #54
    51748 H4ze
    wait...what?
    pi_46990441
    quote:
    Op dinsdag 6 maart 2007 15:40 schreef mschol het volgende:

    [..]

    ik heb het uitgedacht zoals het moest van de docenten..
    En dat was gewoon gaan zitten en coden zeker? Serieus, een goed ontwerp is het halve werk.
    *BURP*
      woensdag 7 maart 2007 @ 09:17:31 #55
    21410 Fliepke
    Serieuze waarheid
    pi_47005700
    Ik heb wat items ingevoerd in een database en er is ook allemaal een tijd aan gekoppeld (0:00), maar ze moeten allemaal een tijd krijgen van 1 minuut later (0:01). Hoe maak ik een goede update query, zodat ze allemaal 60 unixtijdjes erbij krijgen?

    effe in pseudo code
    UPDATE `items`
    SET `start_date` +60

    Zoiets, maar hoe doe ik dat in het echt?
    pi_47005838
    UPDATE items SET start_date = start_date + 60
    Werkt dat niet?

    [ Bericht 0% gewijzigd door Hmail op 07-03-2007 09:33:31 ]
    pi_47006525
    quote:
    Op woensdag 7 maart 2007 09:23 schreef Hmail het volgende:
    UPDATE items SET start_date = start_date + 60
    Werkt dat niet?
    Zou moeten werken, heeft het hier zojuist prima gedaan
      woensdag 7 maart 2007 @ 10:05:01 #58
    21410 Fliepke
    Serieuze waarheid
    pi_47006950
    Zo simpel
    Jezus, ik durfde het al niet te proberen
    pi_47007628
    Twee vraagjes:

    Ik wil net zo tof als Fok! niet meer met index.php?page=25, maar met "www.website.tld/index/25". Kan dit met enkel PHP, of heb ik daar ook een .htaccess aanpassing voor nodig?
    pi_47007901
    Dat kan met htaccess:

    1
    2
    RewriteEngine On
    RewriteRule ^/index/([0-9]+)$ http://www.website.tld/index.php?page=$1.php

    Zo iets.
    pi_47008166
    En nu we toch met .htaccess bezig zijn :
    Ik wil de .htaccess bewerken via een web form, dus daar schrijf ik een functie voor:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    function writeHtaccess($file, $content, $permission) {
        if(
    file_exists($file) || is_writable($file)) {
            
    $htaccess = fopen($file, $permission) or die ("kan bestand niet openen");
            
    fwrite($file, $concent);
            
    fclose($htaccess);
        } else {
            echo
    'het bestand <strong>' . $file . '</strong> kan niet gevonden of bewerkt worden!';
        }
    }

    writeHtaccess(".htaccess", "boeh", "w+");
    ?>

    Maar ik krijg een foutmelding op lijn 5, invalid argument voor frwrite. Maar volgens de specs op php.net klopt het wel. En het .htacces (of een .txt bestand) word wel geleegd, er staat na 1 keer toepassen van de functie niks meer in.
      woensdag 7 maart 2007 @ 10:55:56 #62
    46383 Tiemie
    sowieso wel!
    pi_47008364
    verander het eens naar fwrite($htaccess, $content);

    je write namelijk naar een string waar de bestandsnaam instaat ipv naar de resource-handle
    pi_47008533

    stom van me. Ach, het is nog vroeg
    pi_47018162
    quote:
    Op woensdag 7 maart 2007 10:40 schreef super-muffin het volgende:
    Dat kan met htaccess:
    [ code verwijderd ]

    Zo iets.
    Bedankt! En dan nu mijn tweede vraag:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $expires
    = $date - time();
    if (
    $expires > 0){
        
    $exhours = str_pad(floor($expires / 3600), 2, "0", STR_PAD_LEFT);
        
    $expires = $expires % 3600;
        
    $exminutes = str_pad(floor($expires / 60), 2, "0", STR_PAD_LEFT);
        
    $expires = $expires % 60;
        
    $exseconds = str_pad($expires, 2, "0", STR_PAD_LEFT);
        
    $expires = $exhours.":".$exminutes.":".$exseconds;
    }
    else {
        
    $expires = "<b>Expired</b>";
    }
    ?>


    Goed, dit pakt het aantal seconden tot en met $date, en laat dat keurig in een 23:59:59 (uur, minuut, seconde) formaat zien. Imho omslachtig.

    Heeft PHP hier niet één of andere hippe functie voor? Een variant op date is eigenlijk wat ik zoek. Alvast bedankt
      woensdag 7 maart 2007 @ 16:11:00 #65
    12880 CraZaay
    prettig gestoord
    pi_47019139
    strftime() ?
    pi_47020000
    Ik zoek eerder een direct manier om het aantal minuten / seconden / uren die binnen een X aantal seconden de extracten. strftime doet meer hetzelfde als date.
      woensdag 7 maart 2007 @ 16:55:09 #67
    12880 CraZaay
    prettig gestoord
    pi_47020850
    Ik bedoelde overigens strtotime().
      FOK!-Schrikkelbaas woensdag 7 maart 2007 @ 18:11:02 #68
    1972 Swetsenegger
    Egocentrische Narcist
    pi_47023393
    quote:
    Op dinsdag 6 maart 2007 17:32 schreef ViPeRII het volgende:
    @swetsenecker...

    Dus ik moet filteren op rn ?
    En wat bedoel je onder windows? De post data is onder een windows client anders dan onder een linux client of bedoel je server sided?
    Newlines verschillen per OS
    Onder windows is het \r\n, onder linux n

    \r\n is het veiligst.
      woensdag 7 maart 2007 @ 20:14:25 #69
    85514 ralfie
    !Yvan eht nioj
    pi_47028218
    quote:
    Op dinsdag 6 maart 2007 17:32 schreef ViPeRII het volgende:
    @swetsenecker...

    Dus ik moet filteren op rn ?
    En wat bedoel je onder windows? De post data is onder een windows client anders dan onder een linux client of bedoel je server sided?
    makkelijkste is als je explode op "\r\n", dan worden al die newlines meteen gefiltert uit je input,heb je nergens meer last van, bijv

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?php
    function make_menu_data_2($data)
    {
       
    $menus explode("\r\n"$data);
       
    $out="var MENU_ITEMS = [\n";

       foreach(
    $menus as $x) {
          
    $out.="['";
          
    $y=substr($x,1);
          switch(
    $x[0]) {
          case 
    '*':
            
    $out.="$y', null, null ";
            break;
          case 
    '+':
            
    $z=str_replace(' ','',$y);
            
    $out.="$y', 'page=$z' ";
            break;
          case 
    '-':
            
    $z=str_replace(' ','',$y);
            
    $out.="$y', 'page=$z' ],\n";
            break;
          default:
            
    $z=str_replace(' ','',$x);
            
    $out.="$x', 'page=$z' ";
          }
          
    $out.="],\n";
       }
       return 
    "$out\n];";
    }
    ?>
      vrijdag 9 maart 2007 @ 11:12:15 #70
    128663 h.henkie
    Ik ontken alles
    pi_47085024
    quote:
    Op dinsdag 6 maart 2007 17:20 schreef h.henkie het volgende:
    Hoi
    Ik heb het volgende. Op deze pagina heb ik een upload scriptje staan met de volgende code:
    ...
    Probleem zelf opgelost. Stond een haakje verkeerd.
    "Een kat heeft 40 miljoen haren: 5 miljoen op de rug, 10 miljoen op de
    buik, en 25 miljoen op uw bankstel" -- Midas Dekkers
    pi_47097574
    Hoe kun je met mysql in een subquery meerdere dingen selecteren?
    Bijvoorbeeld:
    SELECT *, (SELECT a,b FROM efg WHERE id =1) AS (a,b) FROM abc WHERE id = 1;
    Dit werkt niet, maar hoe moet het wel?
    -
    pi_47098073
    Je kan toch een join gebruiken hiervoor?
    pi_47098271
    Ik zal de hele query even geven.. het probleem is namelijk dat ik al een JOIN erin heb zitten mét een GROUP BY.. dus nóg een join zou dan zijn eigen GROUP BY moeten hebben

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    SELECT t . * ,
    u.name AS author,
    COUNT( p.id ) AS cntPosts, (
     SELECT lastUpdate
     FROM r2_posts
     WHERE topicID = t.id
     ORDER BY lastUpdate
     LIMIT 0 , 1
    ) AS lastUpdate
    FROM r2_topics t
    LEFT JOIN r2_posts p ON p.topicID = t.id
    LEFT JOIN si_users u ON u.id = t.userID
    WHERE t.deleted =0
    AND t.forumID =2
    GROUP BY t.id
    ORDER BY lastUpdate


    Hij moet dus behalve lastUpdate nog een koppeling maken naar tabel users aan de hand van posts.userID = users.id en daar dus de naam van de persoon die de laatste post deed ophalen.
    -
    pi_47102738
    quote:
    Op vrijdag 9 maart 2007 17:17 schreef splendor het volgende:
    Ik zal de hele query even geven.. het probleem is namelijk dat ik al een JOIN erin heb zitten mét een GROUP BY.. dus nóg een join zou dan zijn eigen GROUP BY moeten hebben
    [ code verwijderd ]

    Hij moet dus behalve lastUpdate nog een koppeling maken naar tabel users aan de hand van posts.userID = users.id en daar dus de naam van de persoon die de laatste post deed ophalen.
    Het moet weer ingewikkeld hoor, voor onze mister Splendor. Je moet gewoon een tweede subquery maken, je kan namlijk niet meerdere resultaten in 1 subquery terug krijgen. Lees dit namelijk maar eens:
    quote:
    A scalar subquery is a simple operand, and you can use it almost anywhere a single column value or literal is legal, and you can expect it to have those characteristics that all operands have: a data type, a length, an indication whether it can be NULL, and so on.
    Bron: mysql.com (http://dev.mysql.com/doc/refman/5.0/en/scalar-subqueries.html)
    World of Warcraft RP spelers opgelet!
    Hier is ie dan, de enige echte..
    Phantasia WoW RP Profiler Site!
    pi_47117911
    klein vraagje:
    ik heb een kleine template parser:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?php

    class templateParser
    {
        var
    $output;
        function
    templateParser($templateFile='default_template.htm')
        {
          (
    file_exists($templateFile))?$this->output=file_get_contents($templateFile):die('Error:Template file '.$templateFile.' not found');
        }

        function
    parseTemplate($tags=array())
        {
              if(
    count($tags)>0)
              {
                   foreach(
    $tags as $tag=>$data)
                   {
                   
    $data=(file_exists($data))?$this->parseFile($data):$data;
                   
    $this->output=str_replace('{'.$tag.'}',$data,$this->output);
                   }
              }
              else
              {
                   die(
    'Error: No tags were provided for replacement');
              }
        }
        
        function
    parseFile($file)
        {
              
    ob_start();
              include(
    $file);
              
    $content=ob_get_contents();
              
    ob_end_clean();
              return
    $content;
        }

        function
    display()
        {
              return
    $this->output;
        }
    }
    ?>


    die roep ik alsvolgt aan:
    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
    <?php


    // include the class

    require_once('templateparser.php');
    require_once(
    '../includes/functions.inc');
    $con = mysql_connect($cfg['DB_host'],$cfg['DB_user'],$cfg['DB_pass']) or die(mysql_error());
    mysql_select_db($cfg['DB_DB'],$con) or die(mysql_error());

    // instantiate a new template Parser object
    $tp=&new templateParser('index.html');

    // define parameters for the class
    $tags=array(
    'title'=>'You are seeing the template parser class in action!',
    'sitename'=>$_SERVER['HTTP_HOST'],
    'utility'=>'utility.php',
    'maincontent'=>'content.php',
    'footer'=>'footer.php',
    'navGlobalbar'=>'navGlobalBar.php',
    'navSubBar'=>'navSubBar.php',
    'SiteInfo'=>'<a href="#">About Us</a> | <a href="#">Site Map</a> | <a href="#">Privacy Policy</a> | <a href="#">Contact Us</a> | ©2003 Company Name ');

    // parse template file

    $tp->parseTemplate($tags);

    // display generated page

    echo $tp->display();
    ?>

    nu woerdt er in navGlobalBar.php de variable $nums aangemaakt, echter heb ik die variable ook nodig in navSubBar.php
    is het mogelijk om die variable beschikbaar te maken voor dat 2de bestand?

    anders moet ik een rits querie's opnieuw uitvoeren in het 2de bestand, das performance techniesch niet echt handig
    pi_47117927
    quote:
    Op vrijdag 9 maart 2007 19:32 schreef Stijn1983 het volgende:

    [..]

    Het moet weer ingewikkeld hoor, voor onze mister Splendor. Je moet gewoon een tweede subquery maken, je kan namlijk niet meerdere resultaten in 1 subquery terug krijgen. Lees dit namelijk maar eens:
    [..]
    Jij ook hier.
    Maar waarom kan het dan wel met een subquery in een WHERE? Of is dit gewoon iets wat in SQL eventueel wel kan maar in MySQL (nog) niet?

    Overigens is het niet zo'n ramp.. ik wilde in 1 script alle topics lezen, post optellen van dat topic, laatste post de datum weergeven en ook nog de topicstarter van de laatste post uit de user tabel lezen.
    Nu laat ik de user gewoon weg, heb alleen de datum
    -
      zaterdag 10 maart 2007 @ 13:59:11 #77
    65471 SkaterSam
    Lurking Galore
    pi_47122807
    Ik ben een database class aan het schrijven, om te kijken in hoeverre ik database gerelateerde code efficienter kan inzetten in mijn code. Nu heb ik daarbij de volgende vraag: hoeveel functies heb je minimaal nodig eigenlijk ? Ik heb nu de volgende:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    class DBclass {
      function 
    dbConnect($host$user$pass) {}
      function 
    dbSelect($selectedDB) {}
      function 
    checkConnection() {} // Controleer de opgezette verbinding met de DB
      
    function query($query) {}
      function 
    checkQueryResource($resource) {} // Controleer de result van de query
      
    function fetch($resource) {} // mysql_fetch_assoc()
      
    function result($this->queryResource) {} // mysql_result()
      
    function dbClose() {}
      function 
    checkError() {} // Controleer en output de gegeven errors
    }
    ?>

    Ben ik nog belangrijke functies vergeten, of ben ik juist te ver doorgeschoten ?

    edit [18.27]: Nevermind de tweede vraag...

    [ Bericht 6% gewijzigd door SkaterSam op 10-03-2007 18:27:25 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
      zaterdag 10 maart 2007 @ 16:56:29 #78
    65471 SkaterSam
    Lurking Galore
    pi_47127163
    edit: laat maar... ik was een beetje dom
    Let's make life easy
    Typo's are the demon spawn from hell !
      zaterdag 10 maart 2007 @ 16:58:09 #79
    46383 Tiemie
    sowieso wel!
    pi_47127201
    haal je de hele query door mysql_real_escape_string?

    je kunt beter iedere variabele apart door mysql_real_escape_string halen

    dus

    1
    2
    3
    4
    5
    6
    7
    8
    $query = "
      SELECT 
        u.name, 
        u.id
      FROM user AS u
      WHERE 
        u.id = ".mysql_real_escape_string($id)."
    ";
      zaterdag 10 maart 2007 @ 17:00:03 #80
    65471 SkaterSam
    Lurking Galore
    pi_47127249
    quote:
    Op zaterdag 10 maart 2007 16:58 schreef Tiemie het volgende:
    je kunt beter iedere variabele apart door mysql_real_escape_string halen
    Ja, ik besefte het net pas... Een beetje dom...

    Nu even kijken of ik iets kan schrijven die dat soort dingen in de query automatisch escaped...

    edit [18.29]: een beetje van mijzelf en een beetje van Maggi...

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <?php
      
    function escapeQuery($query) {
      
        
    // Haal de argumenten op
        
    $this->arguments = func_get_args();
        
        
    // Het eerste resultaat is de query
        
    $this->query = array_shift($this->arguments);
        
        
    // Loop door de resterende elementen en geef ze een corresponderend nummer
        
    foreach ($this->arguments as $index => $name) {
          
    $this->arguments[$index+1] = $name;
        }

        
    // Loop nogmaals door de resultaten en vervang de nummers met de escaped waarden
        
    foreach ($this->arguments as $number => $value) {
          
    $this->query = str_replace(":$number", "'" . mysql_real_escape_string($value) . "'", $this->query);
        }
        
        
    // Return de schoongemaakte query
        
    return $this->query;
        
      }
    ?>

    Die spreek je dus alsvolgt aan, je maakt een query, waarbij je alle escaped waarden in numerieke volgorde zet (:1, :2, etc...) en vervolgens doe je met $this->prepareQuery($query, $arg1, $arg2) en dan heeft die hem geescaped. Alleen jammer dat het niet werkt voor dingen als Tabel namen (als je die al buiten de query heb gedefinieerd in een variabele en deze variabele gebruikt in plaats van de naam (eg. SELECT * FROM $tabel)...

    Ik zit trouwens wel een beetje een monoloog te houden

    [ Bericht 21% gewijzigd door SkaterSam op 10-03-2007 18:29:12 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
      zaterdag 10 maart 2007 @ 20:10:28 #81
    85514 ralfie
    !Yvan eht nioj
    pi_47132790
    quote:
    Op zaterdag 10 maart 2007 09:47 schreef mschol het volgende:
    klein vraagje:
    ik heb een kleine template parser:
    [ code verwijderd ]

    die roep ik alsvolgt aan:
    [ code verwijderd ]

    nu woerdt er in navGlobalBar.php de variable $nums aangemaakt, echter heb ik die variable ook nodig in navSubBar.php
    is het mogelijk om die variable beschikbaar te maken voor dat 2de bestand?

    anders moet ik een rits querie's opnieuw uitvoeren in het 2de bestand, das performance techniesch niet echt handig
    je zou in ParseFile() die variabele aan $GLOBALS toe kunnen voegen, dan in het tweede bestand eerst kijken of die bestaat, voordat die hem zelf probeert aan te maken.

    @skaterSam: Wat ik altijd handig vind in een db class is een functie die een simpele query uitvoert en alleen de eerste regel teruggeeft/danwel MYSQL_NUM_ROWS in het geval van een SELECT, of een MYSQL_AFFECTED_ROWS in het geval van een andere soort query, danwel false als de query mislukt is. Iets in de richting van
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    function simple_query$query$returnfirstrow=false) {
       if (
    strpos($query"SELECT")!==false)) $is_select=true;
       if( 
    $res=mysql_query($query) ) {
          if (
    $returnfirstrow && $is_select) return ( mysql_fetch_assoc($res) );
          else if(
    $is_select) return ( $x=mysql_num_rows($res) == false $x );
          else return  ( 
    $x=mysql_affected_rows($res) == false $x );
       }
       return 
    false;
    }
    ?>
    Niet getest overigens, maar je begrijpt de bedoeling wel denk ik. Niets is zaliger dan een DELETE query, of een SELECT query met LIMIT 1 uit te kunnen voeren door één simpele functie aan te roepen

    [ Bericht 72% gewijzigd door ralfie op 10-03-2007 20:22:44 ]
    pi_47133495
    quote:
    Op zaterdag 10 maart 2007 17:00 schreef SkaterSam het volgende:

    [..]

    Ja, ik besefte het net pas... Een beetje dom...

    Nu even kijken of ik iets kan schrijven die dat soort dingen in de query automatisch escaped...

    edit [18.29]: een beetje van mijzelf en een beetje van Maggi...
    [ code verwijderd ]
    Het feit dat je $this gebruikt betekent niet dat het automatisch ook OOP is en jouw code is daar weer een mooi voorbeeld van. Je gebruikt properties voor acties binnen een method die buiten de scope van de method niet meer gebruikt worden.

    Een voorbeeld daarvan is: $this->arguments = func_get_args();
    Die $arguments property heb je buiten deze method helemaal niet nodig, dus logischer was:
    $arguments = func_get_args();

    Idem met met de parameter $query, deze wordt meegegeven bij de aanroep maar verder nergens meer gebruikt.

    Handiger was denk ik dat je een $query property maakt binnen die class zodat je niet die $query hoeft over te gooien (via return bijv) binnen je class. Nu is het gewoon functioneel programmeren en is het toevallig een class omdat er class voor staat en niet omdat het iets met OO te maken heeft.
      zaterdag 10 maart 2007 @ 21:34:18 #83
    65471 SkaterSam
    Lurking Galore
    pi_47135980
    quote:
    Op zaterdag 10 maart 2007 20:30 schreef smesjz het volgende:
    Handiger was denk ik dat je een $query property maakt binnen die class zodat je niet die $query hoeft over te gooien (via return bijv) binnen je class.
    Huh, hoe bedoel je "een query property binnen je class" ? Wat ik nu doe is het volgende, eerst escape ik die query met de functie, dan return ik hem in een variabele, die ik weer gebruik in de echte query. Maar als je het kan verhelderen, graag
    quote:
    Nu is het gewoon functioneel programmeren en is het toevallig een class omdat er class voor staat en niet omdat het iets met OO te maken heeft.
    Ja dat klopt denk ik ook wel. Ik denk dat het meeste in die class ook "gewoon" functies zijn. Ik ben er ook nog mee aan het experimenteren. Maar als je ook hier meer informatie over hebt (hoe zou dit er in OO hebben uitgezien ?) dan lees ik het graag.

    O, en ik wilde nog vragen of het nadelig was dat ik $this-> gebruikte ? Is het trouwens zo dat variabelen die je alleen binnen de scope van één functie (zoals $arguments dus) dus geen $this-> krijgen ?
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47147281
    quote:
    Op zaterdag 10 maart 2007 21:34 schreef SkaterSam het volgende:

    Huh, hoe bedoel je "een query property binnen je class" ? Wat ik nu doe is het volgende, eerst escape ik die query met de functie, dan return ik hem in een variabele, die ik weer gebruik in de echte query. Maar als je het kan verhelderen, graag :)
    Ik bedoelde meer zoiets: (ff quick&dirty voor PHP5)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?php
    class Database {
        
    private $query null

        
    private function prepareQuery() 
        {
           
    blabla();
           
    $query escpape_meuk_hier();
           
    $this->query $query;
        }

        
    public function execQuery($query
       {
        
    // Eerst escapen.
         
    $this->query $query;
         
    $this->prepareQuery();
         
    mysql_query($this->query);
       }


    }
    ?>


    Het kan natuurlijk ook nog op tig andere manieren, dit voorbeeldje laat alleen zien dat je door het gebruik van die query property (private $query) je niet meer 'return' hoeft te gebruiken.

    Verder is een database class al 100 keer in OO gemaakt voor PHP en met een beetje Google werk kan je daar genoeg voorbeelden van vinden.

    Als je error reporting aanze
    Ja dat klopt denk ik ook wel. Ik denk dat het meeste in die class ook "gewoon" functies zijn. Ik ben er ook nog mee aan het experimenteren. Maar als je ook hier meer informatie over hebt (hoe zou dit er in OO hebben uitgezien ?) dan lees ik het graag.

    O, en ik wilde nog vragen of het nadelig was dat ik $this-> gebruikte ? Is het trouwens zo dat variabelen die je alleen binnen de scope van één functie (zoals $arguments dus) dus geen $this-> krijgen ?
    [/quote]

    BIj het ontwikkelen van je code kan ik je aanraden om error_reporting(E_ALL); aan te zetten zodat PHP je zelf waarschuwt bij misbruik van $this .

    Je hebt zelf alle vrijheid om $this te gebruiken binnen je class, maar alles wat binnen de scope van een functie mag blijven (en dus nergens anders nodig is) hoeft geen $this er bij.

    Het beste kan je de OOP pagina's op php.net lezen, daar is het vrij goed uitgelegd: http://www.php.net/manual/en/language.oop5.php
    pi_47147500
    quote:
    Op zaterdag 10 maart 2007 20:10 schreef ralfie het volgende:

    [..]

    je zou in ParseFile() die variabele aan $GLOBALS toe kunnen voegen, dan in het tweede bestand eerst kijken of die bestaat, voordat die hem zelf probeert aan te maken.
    ik heb in het eerste bestand, navGlobalBar.php, 2 globals toegewezen die ik nodig had, en die kon ik vervolgens aanroepen in het 2de bestand,
    Thnx voor het meedenk werk

    ik zelf zat eerst te klooien met global $var;
    pi_47149061
    *bookmarked*
    pi_47149445
    Ik heb een vraagje over de RewriteRules.. fok bijvoorbeeld heeft continue nieuwe topics, hoe blijven de rewrite rules up to date dan met de nieuwe topic nrs? wordt elke keer de .htaccess opnieuw geschreven of is er een trucje voor?
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_47149705
    er is een truukje voor, er word een regex gebruikt :)
    1
    2
    RewriteEngine On
    RewriteRule ^/?([A-Za-z]+)$ http://www.danielpunt.nl/?p=$1.php

    Deze gebruik ik op mijn website.
    pi_47149861
    aaah tof! merci
    As a rule, I never touch anything more sophisticated and delicate than myself.
      zondag 11 maart 2007 @ 13:28:35 #90
    65471 SkaterSam
    Lurking Galore
    pi_47151774
    quote:
    Op zondag 11 maart 2007 10:00 schreef smesjz het volgende:
    Ik bedoelde meer zoiets: (ff quick&dirty voor PHP5)
    [ code verwijderd ]

    Het kan natuurlijk ook nog op tig andere manieren, dit voorbeeldje laat alleen zien dat je door het gebruik van die query property (private $query) je niet meer 'return' hoeft te gebruiken.
    Ja, dat zou natuurlijk ideaal zijn! Ik had het echter op deze manier gedaan, omdat ik ook argumenten moet opgeven die vervangen moeten worden in de query (dus een :1 wordt bijvoorbeeld $obj_id), maar ik vond het handiger dat dit in twee stappen ging. Ik neem aan dat ik het bijvoorbeeld ook gewoon in de execQuery had kunnen zetten ($db->execQuery($query, $enkele_argumenten_ter_vervanging)), ik geloof dat jij iets dergelijks bedoelt. Want mijn vraag was hoe ik die vervangende argumenten in de prepareQuery function kreeg.

    edit [13.52]: Hmm, ik kan natuurlijk gewoon een statische array maken ofzo $db->replaceArguments = array($etc, $etc...) en die aanroepen...
    quote:
    Verder is een database class al 100 keer in OO gemaakt voor PHP en met een beetje Google werk kan je daar genoeg voorbeelden van vinden.
    Ja dat heb ik gezien, en hoewel ik daar ook naar kijk, probeer ik liever zelf een in elkaar te zetten natuurlijk, leerervaring enzo
    quote:
    BIj het ontwikkelen van je code kan ik je aanraden om error_reporting(E_ALL); aan te zetten zodat PHP je zelf waarschuwt bij misbruik van $this.
    Hmmm, ja dat kan, ik werk echter met een script die de Errorlog uitleest van Apache2. Dan krijg ik op mijn browserscherm altijd de laatste errors die Apache2 ontdekt. Maar ik weet niet zeker of de Errorlog alle errors die error_reporting(E_ALL) oppikt, ook pakt.

    [ Bericht 2% gewijzigd door SkaterSam op 11-03-2007 13:51:51 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47152288
    Ik wil graag de volledige inhoud van alle bestanden op mijn webserver inlezen in een array.
    Dit wil ik gebruiken om een sitemap te maken. De pagina's/directory's worden vervolgens weergegeven op een pagina om ge(de)selecteerd te worden en wat overige opties.

    Maar hoe lees ik de volledige inhoud van de root uit en stop deze in een array?
    Ik dacht aan het volgende, maar dat werkt mooi niet! Sterker nog, als ik de functie aanroep wordt een bestand ter download aangeboden.
    Kan iemand me op weg helpen?

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function readfilelist($dir)
     {
      if ($handle = opendir($dir)) 
       {
        // Dit is de juiste manier om door een directory te wandelen. 
        while (false !== ($file = readdir($handle))) 
         { if(is_dir($file))
          {
           readfilelist($file);
          }
          $file_arr[]= $file;
         }
        closedir($handle);
       }
      }
    pi_47152746
    quote:
    Op zondag 11 maart 2007 13:28 schreef SkaterSam het volgende:

    [..]

    Ja, dat zou natuurlijk ideaal zijn! Ik had het echter op deze manier gedaan, omdat ik ook argumenten moet opgeven die vervangen moeten worden in de query (dus een :1 wordt bijvoorbeeld $obj_id), maar ik vond het handiger dat dit in twee stappen ging. Ik neem aan dat ik het bijvoorbeeld ook gewoon in de execQuery had kunnen zetten ($db->execQuery($query, $enkele_argumenten_ter_vervanging)), ik geloof dat jij iets dergelijks bedoelt. Want mijn vraag was hoe ik die vervangende argumenten in de prepareQuery function kreeg.
    Je kan ook eens kijken naar de aanpak in PDO (>= php5.1): http://nl2.php.net/manual/en/ref.pdo.php

    Bijv:

    1
    2
    3
    4
    5
    6
    <?php
    $sth
    = $dbh->prepare('SELECT name, colour, calories
       FROM fruit
       WHERE calories < ? AND colour = ?'
    );
    $sth->execute(array(150, 'red'));
    ?>
    quote:
    Hmmm, ja dat kan, ik werk echter met een script die de Errorlog uitleest van Apache2. Dan krijg ik op mijn browserscherm altijd de laatste errors die Apache2 ontdekt. Maar ik weet niet zeker of de Errorlog alle errors die error_reporting(E_ALL) oppikt, ook pakt.
    Tijdens het ontwikkelen kan je het beste gewoon errors op je scherm weergeven ipv alleen een error log te gebruiken.
    Ik zou wel Apache errors (404s, 403s) scheiden van PHP logs. Die hebben niks met elkaar te maken.

    [ Bericht 3% gewijzigd door smesjz op 11-03-2007 13:56:53 (quote tag fix) ]
      zondag 11 maart 2007 @ 14:20:49 #93
    65471 SkaterSam
    Lurking Galore
    pi_47153676
    Thanks smesjz! Ik ben misschien gewoon nog te veel bezig met functioneel programmeren en overgooien van waardes, terwijl dat dus ook anders kan. Het vergt even een andere manier van denken. Ik zal eens even kijken hoe ik mijn code nu kan aanpassen om het beter OO te maken, en beter te laten werken.

    edit [14.25]: Ik zie nu pas dat het volgende gebeurt: $dbh->prepare() wordt opgeslagen in $stmt en deze wordt vervolgens gebruikt voor de rest. Hoe werkt dit dan ? Neemt $stmt de class eigenschappen over ofzo ?

    [ Bericht 12% gewijzigd door SkaterSam op 11-03-2007 14:33:44 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
      zondag 11 maart 2007 @ 14:21:29 #94
    85514 ralfie
    !Yvan eht nioj
    pi_47153713
    quote:
    Op zondag 11 maart 2007 13:45 schreef beerten het volgende:
    Ik wil graag de volledige inhoud van alle bestanden op mijn webserver inlezen in een array.
    Dit wil ik gebruiken om een sitemap te maken. De pagina's/directory's worden vervolgens weergegeven op een pagina om ge(de)selecteerd te worden en wat overige opties.

    Maar hoe lees ik de volledige inhoud van de root uit en stop deze in een array?
    Ik dacht aan het volgende, maar dat werkt mooi niet! Sterker nog, als ik de functie aanroep wordt een bestand ter download aangeboden.
    Kan iemand me op weg helpen?
    [ code verwijderd ]
    deze functie werkt niet omdat hij in een oneindige lus raakt. Deze manier van directories uitlezen retourneert namelijk in elke directory ook een handle naar zijn parent directory (. en ..) waardoor php van parent naar child directory en vice versa blijft gaan tot hij ergens vast loopt. Daarnaast is het voor grote directories mogelijk dat php crashed omdat hij in een te diepe recursiviteit raakt (of hoe je dat ook zegt )

    Anyway, een paar van deze threads terug heeft iemand een functie gemaakt die zonder recursiviteit werkt gepost, dit kwam neer op het volgende:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    $dirstack
    =array('C:\\program files\\Apache group\\Apache2\htdocs');
    while(
    sizeof($dirstack)!=0) {
       
    $dir=array_shift($dirstack);
       if (
    $handle=opendir($dir)) {
          while(
    false!==($file=readdir($handle))) {
            if (
    $file=='.' || $file=='..') continue;
            if (
    is_dir($dir.'\\'.$file)) $dirstack[]=$dir.'\\'.$file;
            else
    $files[]=$dir.'\\'.$file;
          }
       }
    }
    ?>
    of zoiets
    pi_47153833
    bestaat er een programma dat realtime kan refreshen zodra er een melding in bijvoorbeeld je errorlog bij komt (in linux kan je dit doen) echter onder windows zou ik het ook wel handig vinden als ik bijvoorbeeld de laatste 5 meldingen kan zien (in realtime)
      zondag 11 maart 2007 @ 14:33:15 #96
    65471 SkaterSam
    Lurking Galore
    pi_47154147
    quote:
    Op zondag 11 maart 2007 14:24 schreef mschol het volgende:
    bestaat er een programma dat realtime kan refreshen zodra er een melding in bijvoorbeeld je errorlog bij komt (in linux kan je dit doen) echter onder windows zou ik het ook wel handig vinden als ik bijvoorbeeld de laatste 5 meldingen kan zien (in realtime)
    Die errorlog zit een file, misschien zou je iets met filemtime() kunnen doen, en dan vergelijken met de huidige datum ofzo ? Ik weet niet of je het echt realtime kan maken, want dan zou je in een constante stream moeten staan toch ? Ik heb zelf een script voor de Apache Errorlog die om de 60 seconden de errorlog uitleest en vervolgens de laatste 20 rijen pakt.
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47159059
    quote:
    Op zondag 11 maart 2007 14:33 schreef SkaterSam het volgende:

    [..]

    Die errorlog zit een file, misschien zou je iets met filemtime() kunnen doen, en dan vergelijken met de huidige datum ofzo ? Ik weet niet of je het echt realtime kan maken, want dan zou je in een constante stream moeten staan toch ? Ik heb zelf een script voor de Apache Errorlog die om de 60 seconden de errorlog uitleest en vervolgens de laatste 20 rijen pakt.
    volgens mij zoekt ie gewoon een editor die de file gewoon bijwerkt als deze gewijzigd wordt. ConTEXT is een editor die dit doet onder windows (moet je wel eerst minimizen, dan restoren, en dan geeft ie een melding dat de file gewijzigd is). Het is dus niet helemaal gelijk aan tail -f onder linux, maar het werkt wel
    pi_47160426
    quote:
    Op zondag 11 maart 2007 16:40 schreef Floxxx het volgende:

    [..]

    volgens mij zoekt ie gewoon een editor die de file gewoon bijwerkt als deze gewijzigd wordt. ConTEXT is een editor die dit doet onder windows (moet je wel eerst minimizen, dan restoren, en dan geeft ie een melding dat de file gewijzigd is). Het is dus niet helemaal gelijk aan tail -f onder linux, maar het werkt wel
    ik ben dus eigenlijk opzoek naar een windows equivalent van tail -f (thnx, kwam eff niet meer op de naam )

    dat minimize en restore kan ik e.v.t. met dreamweaver ook doen

    --edit--

    doordat ik nu de naam weet, kon ik googlen:

    http://sourceforge.net/projects/tailforwin32/
    eens kijken of dat iets is..
    pi_47169978
    shit mijn template parser vind de punten in domein namen niet leuk:
    zie [PHP/(My)SQL] voor dummies - Deel 40 daar mijn template parser..

    zodra ik http://home.mschol.eu/pagina.php intik als een url stikt mijn template parser met de volgende melding:
    1
    2
    3
    Warning: parsefile( | About Us | Site Map | Privacy Policy | Contact Us | ©2003 Company Name): failed to open stream: No error in d:wwwanime_argewebtemplatetemplateparser.php on line 29

    Warning: parsefile(): Failed opening '<a href='http://home.mschol.eu/pagina.php' target='_blank' ><img src='../images/valid-401.gif' alt='' /></a> | <a href='#'>About Us</a> | <a href='#'>Site Map</a> | <a href='#'>Privacy Policy</a> | <a href='http://tweakers.net'>Contact Us</a> | ©2003 Company Name' for inclusion (include_path='.;c:php4pear') in d:wwwanime_argewebtemplatetemplateparser.php on line 29


    hij wil dus de opgegeven string als bestand gaan behandelen, maar waarom weet ik niet

    --edit--

    oplossing gevonden:
    http://www.devshed.com/sh(...)ass-with-PHP-Part-I/
    en dan bij topic getting info from mysql .

    [ Bericht 10% gewijzigd door mschol op 12-03-2007 09:13:10 ]
      FOK!-Schrikkelbaas maandag 12 maart 2007 @ 07:58:53 #100
    1972 Swetsenegger
    Egocentrische Narcist
    pi_47179933
    quote:
    Op zondag 11 maart 2007 12:19 schreef super-muffin het volgende:
    er is een truukje voor, er word een regex gebruikt
    [ code verwijderd ]

    Deze gebruik ik op mijn website.
    Maar vlak ook de mogelijkheid van Multiviews niet uit.
    pi_47187644
    Wat bedoel je precies Swets?
      maandag 12 maart 2007 @ 13:42:56 #102
    21410 Fliepke
    Serieuze waarheid
    pi_47188524
    Ik postte laatst ongeveer dit en ik wilde deze count groeperen per dag. Zodat ik per dag weet hoeveel nieuws er is gepost.

    SELECT Count(*) FROM `items` WHERE type = 'nieuws'
    AND posttime BETWEEN 1167609600
    AND 1173657600

    Deze laatste regel kreeg ik als tip in het vorige topic, maar dat werkt niet. Ik moet dus vast nog een trucje uithalen, maar ik weet niet wat:
    GROUP BY FROM_UNIXTIME(timestamp, '%Y%m%d')
      FOK!-Schrikkelbaas maandag 12 maart 2007 @ 14:22:18 #103
    1972 Swetsenegger
    Egocentrische Narcist
    pi_47190016
    quote:
    Op maandag 12 maart 2007 13:16 schreef super-muffin het volgende:
    Wat bedoel je precies Swets?
    Met multiviews kan je de extentie weglaten dus www.domein.nl/pagina/index ipv www.domein.nl/pagina/index.php

    en je kan dan ook alles wat normaal met een ? achter je pagina komt dmv een / neerzetten.

    Zie bv http://www.123swets.com/archief/1 waar dus eigenlijk http://www.123swets.com/archief.php?id=1 staat
      maandag 12 maart 2007 @ 14:29:37 #104
    21410 Fliepke
    Serieuze waarheid
    pi_47190234
    quote:
    Op maandag 12 maart 2007 13:42 schreef Fliepke het volgende:
    Ik postte laatst ongeveer dit en ik wilde deze count groeperen per dag. Zodat ik per dag weet hoeveel nieuws er is gepost.

    SELECT Count(*) FROM `items` WHERE type = 'nieuws'
    AND posttime BETWEEN 1167609600
    AND 1173657600

    Deze laatste regel kreeg ik als tip in het vorige topic, maar dat werkt niet. Ik moet dus vast nog een trucje uithalen, maar ik weet niet wat:
    GROUP BY FROM_UNIXTIME(timestamp, '%Y%m%d')
    Ik heb nu dit maar dan krijg ik eigenlijk niks
    SELECT Count( * ), day(posttime) AS blaat
    FROM `items`
    WHERE TYPE = 'nieuws'
    AND posttime
    BETWEEN 1167609600
    AND 1173657600
    GROUP BY day( posttime )

    (dit dus
    Count( * ) blaat
    874 NULL )
    pi_47190787
    1
    2
    3
    4
    5
    6
    7
    8
    [14:34:26] <Hmail> SELECT Count( id ) , day( FROM_UNIXTIME( posttime ) ) AS blaat
    [14:34:26] <Hmail> FROM `items`
    [14:34:26] <Hmail> WHERE TYPE = 'nieuws'
    [14:34:26] <Hmail> AND posttime
    [14:34:26] <Hmail> BETWEEN 1167609600
    [14:34:26] <Hmail> AND 1173657600
    [14:34:26] <Hmail> GROUP BY blaat
    [14:34:26] <Hmail> LIMIT 0 , 30

    Dat dus
      maandag 12 maart 2007 @ 14:44:14 #106
    21410 Fliepke
    Serieuze waarheid
    pi_47190841
    hehe
      maandag 12 maart 2007 @ 14:48:06 #107
    65471 SkaterSam
    Lurking Galore
    pi_47190998
    Even vraagje, als ik moet kiezen tussen md5() en sha1(), welke van de twee raden jullie dan aan ? Ik heb helaas geen beschikking over hash()...
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47191336
    md5
    pi_47191674
    Ik zou idd ook voor md5 kiezen, maar alleen omdat ik daarmee bekend ben. Geen idee hoe het zit met performance, of ingewikkeldheid van parameters bij SHA1
      maandag 12 maart 2007 @ 15:18:36 #110
    65471 SkaterSam
    Lurking Galore
    pi_47192158
    Behehe, dit staat ook echt in het commentaar voor sha1():
    quote:
    Note that the sha1 algorithm has been compromised and is no longer being used by government agencies.
    Let's make life easy
    Typo's are the demon spawn from hell !
      maandag 12 maart 2007 @ 15:44:06 #111
    65471 SkaterSam
    Lurking Galore
    pi_47193129
    Als ik bijvoorbeeld een paar sessie variabelen heb:

    1
    2
    3
    $_SESSION['admin']['validated']['user']
    $_SESSION['admin']['validated']['token']
    $_SESSION['admin']['validated']['time']

    Kan ik deze allemaal tegelijkertijd leegmaken door een hogere stap te unsetten ? Zo dus:

    1unset($_SESSION['admin']['validated']);
    Let's make life easy
    Typo's are the demon spawn from hell !
      maandag 12 maart 2007 @ 15:49:18 #112
    42636 TheSeeker_NL
    Damn fine coffee
    pi_47193402
    nevermind, fixed

    [ Bericht 96% gewijzigd door TheSeeker_NL op 12-03-2007 16:08:23 ]
    pi_47194027
    quote:
    Op maandag 12 maart 2007 15:18 schreef SkaterSam het volgende:
    Behehe, dit staat ook echt in het commentaar voor sha1():
    Desondaks is sha1 nog veiliger dan MD5. Je kan via mhash module of hash (php5) veel meer hashing algoritmes aan dan bovengenoemde.
    Let wel op dat je problemen kan krijgen met compatibiliteit (zo snapt pam_mysql geen sha256 encryptie) en hetzelfde geldt bijv. voor Dovecot IMAP
      maandag 12 maart 2007 @ 16:38:29 #114
    65471 SkaterSam
    Lurking Galore
    pi_47195569
    quote:
    Op maandag 12 maart 2007 16:03 schreef smesjz het volgende:
    Desondaks is sha1 nog veiliger dan MD5. Je kan via mhash module of hash (php5) veel meer hashing algoritmes aan dan bovengenoemde.
    Het vervelende is alleen dat ik verder geen rechten of niks heb op de server, ik heb mij maar te houden aan de instellingen van de server, dus ik kan wel kijken of die module er al op staat, maar anders wordt het toch sha1...
    Let's make life easy
    Typo's are the demon spawn from hell !
      maandag 12 maart 2007 @ 17:25:18 #115
    65471 SkaterSam
    Lurking Galore
    pi_47197325
    Ik heb mijn database class nu zo geschreven dat je zo een query uitvoert:

    1
    2
    3
    4
    5
    $db->prepareQuery($query);
    $db->execQuery($obj_id);
    while($result = $db->fetch()) { 
      // echo of weet ik veel wat
    }

    Maar nu zie ik bijvoorbeeld bij PDO en andere classes ook dat ze het liever anders doen, dus dat een nieuwe instantie van een class in een variabele wordt gedaan, zoals dit:

    1
    2
    3
    4
    5
    $stmt = $db->prepareQuery($query);
    $stmt->execQuery($obj_id);
    while($result = $stmt->fetch()) { 
      // echo of weet ik veel wat
    }

    Ik vroeg me af wat het verschil tussen deze twee manieren van code was, en of het een dus betere praktijk is dan de ander. Ik weet in ieder geval (ik probeerde het even), dat je voor de tweede methode dus een nieuwe class moet maken (je scheid verbinding maken met uitvoeren) en dat je een nieuwe class instantieert (als je dan twee queries hebt, heb je dan ook een nieuwe class instantie nodig...?). Het lijkt me logisch om de tweede code te doen vanwege de scheiding van MySQL verbinding class met MySQL query uitvoeren class, maar zoals ik al aangaf verlies ik bepaalde functies uit de ene class die ik nodig heb bij de ander, en ben ik benieuwd wat er gebeurt als je twee instanties van dezelfde class hebt (twee queries...). Iemand (smesjz? )
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47198852
    weet iemand of het mogelijk is om de 'extension' php_pdo_mysql.dll te laden in php? Mijn hosting is zo slim geweest om alleen sqlite2 drivers voor pdo beschibaar te stellen
    ..///
    pi_47204138
    quote:
    Op maandag 12 maart 2007 15:18 schreef SkaterSam het volgende:
    Behehe, dit staat ook echt in het commentaar voor sha1():
    [..]
    En ook in het commentaar voor MD5, en in zekere mate met hoger belang omdat MD5 reduceert naar een hash met minder bits
      dinsdag 13 maart 2007 @ 00:46:13 #118
    12880 CraZaay
    prettig gestoord
    pi_47214953
    quote:
    Op maandag 12 maart 2007 14:56 schreef Darkomen het volgende:
    md5
    Omdat? SHA1 is nog steeds veiliger dan MD5.
    pi_47228364
    quote:
    Op maandag 12 maart 2007 17:25 schreef SkaterSam het volgende:
    Ik heb mijn database class nu zo geschreven dat je zo een query uitvoert:
    [ code verwijderd ]

    Maar nu zie ik bijvoorbeeld bij PDO en andere classes ook dat ze het liever anders doen, dus dat een nieuwe instantie van een class in een variabele wordt gedaan, zoals dit:
    [ code verwijderd ]

    Ik vroeg me af wat het verschil tussen deze twee manieren van code was, en of het een dus betere praktijk is dan de ander.
    Ik zou de functie query() een class laten returnen zodat je met het resultaat verschillende dingen kan doen. :)
    1
    2
    3
    4
    5
    6
    7
    <?php
    $result
    = $db->query('SELECT name FROM news WHERE id = ?', $id);
    echo
    $result->numRows();
    while(
    $news = $result->fetchRow()) {
       echo
    $news->name;
    }
    ?>
    ..///
    pi_47230391
    ik heb zojuist op windows vista weer apache 2.0, php 5, mysql5.0 en pma 2.9.2 geinstalleerd en geconfigureerd. enkel als ik v mysql gui tools (query browser) naar mysql gaat is het geen probleem. me pagina's maken ook gewoon connectie met mysql en dit in php.ini allemaal gewoon de mysql extensies geladen. Das alles werkt. Enkel blijft PMA zeueren dat die mysql extensie niet geladen kan worden. ik heb hier naar gezocht maar enigste wat ik kan vinden is de dll en de lib van mysql toevoegen. dat is ook gewoon gedaan. maar pma blijft enkel zeuren...
    pi_47233251
    Ik werk hier met het verouderde osCommerce, onder PHP5. global_vars al aangezet (testomgeving > boeiend).

    Nu moet ik dus in elk PHP bestand HTTP_GET_VARS naar _GET (& POST) veranderen.

    1
    2
    perl -pi -e 's/HTTP_POST_VARS/_POST/g' *.php
    perl -pi -e 's/HTTP_GET_VARS/_GET/g' *.php


    Dit in elke map gaat goed, maar dan moet ik dus wel elke map in duiken. En aangezien dat er toch wel erg veel zijn.... iemand tips? Ik zit onder SSH met de linuxserver, draai als OS Mac OS X met TextMate.
    pi_47234265
    Beetje bash/perl script moet wel kunnen of evt. iets als:

    find -name '*.php' - exec perl -pi blabla {} ?
      FOK!-Schrikkelbaas dinsdag 13 maart 2007 @ 17:23:10 #123
    1972 Swetsenegger
    Egocentrische Narcist
    pi_47234434
    quote:
    Op dinsdag 13 maart 2007 16:48 schreef Geqxon het volgende:
    iemand tips?
    osCommerce upgraden is zeker te eenvoudig voor je?
    pi_47257552
    quote:
    Op dinsdag 13 maart 2007 17:23 schreef Swetsenegger het volgende:

    [..]

    osCommerce upgraden is zeker te eenvoudig voor je?
    Ik heb de laatste versie al binnengehaald.
    pi_47258563
    1
    2
    3
    4
    5
    for file in `find  /var/data/html/shop/ -name *.php -print `
    do
       perl -pi -e 's/HTTP_POST_VARS/_POST/g' $file
       perl -pi -e 's/HTTP_GET_VARS/_GET/g' $file
    done


    Heersend, werkt prima.
    pi_47261119
    Ik heb het volgende:
    1
    2
    3
    4
    5
    <?php
    $result
    = mysql_query("INSERT INTO t_relatiegids
    (relatiegids_bedrijfsnaam, relatiegids_telefoonnummer)
    VALUES('"
    . $bedrijfsnaam . "','" . $telefoonnummer . "');");
    ?>

    En als ik die $result laat zien in een echo, staat er een "1". Ik zie dan niet de hele zin met de juiste informatie in de variabelen. Kan dit wel in php?
    In ieder geval komt er ook niets in de database, er is iets fout in de query. Kan iemand me helpen?
    pi_47261283
    Nee, er gaat niets mis, je krijgt gewoon een 1, oftewel TRUE terug, je query is goed verlopen. Wat je nog kunt proberen is de query eerst in een string te zetten, en die te echo-en, waarschijnlijk zie je dan al de fout. Met mysql_error() kun je zien of er errors zijn.
    pi_47261305
    - zie boven
    pi_47261449
    Hoi, dit is misschien niet het juiste topic om te reageren, maar misschien kunnen jullie mijn kleine probleem oplossen.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <script type="text/javascript">
       var idx = 1 ;
        var e1;
        function addBox ( parName ){
          if(idx == 1){
               e1 = document.createElement ( 'input' ) ;
               e1.name = 'taak_uren' + idx++ ;
               e1.type = 'text';
             e1.value = 'Aantal uren?';
             document.getElementById ( parName ).appendChild ( e1 ) ;
            } else {
                 document.getElementById ( parName ).removeChild ( e1 ) ;
               idx -- ;
          }
        }
    </script>

    Waar ik dus mee bezig ben is een functie maken om een textbox weer te laten geven op het moment dat ik een checkbox aanvink, heel leuk en aardig allemaal, het werkt allemaal ook, maar zodra ik iets toe wil voegen gaat het mis.

    Wat is toe wil voegen is
    1 e1.class = 'textbox' 
    Wannneer ik dat doe krijg ik in IE de fout "Object wordt verwacht". Iemand die bereid is om mij te helpen. Alvast Bedankt.
    Lieutenant General Omar Bradley
    "I have returned many times to honour the valiant men who died…every man who set foot on Omaha Beach was a hero."
    pi_47263008
    [Javascript] voor dummies deel 5 is een betere plaats

    Om een css class attribuut te zetten gebruik je e1.className = 'text'.
    (Verder ziet de functie er verre van logisch uit)
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_47263380
    Ah oke dank je wel, het werkt nu
    Lieutenant General Omar Bradley
    "I have returned many times to honour the valiant men who died…every man who set foot on Omaha Beach was a hero."
    pi_47299976
    1
    2
    3
    4
    <?php
    $result
    = mysql_query("INSERT INTO t_nieuws(nieuws_titel, nieuws_bericht, nieuws_auteur, nieuws_email, nieuws_datum)
    VALUES('"
    .$titel."', '".$bericht."', '".$email."', NOW());") or die(mysql_error());
    ?>

    Hij geeft een error aan: Column count doesn't match value count at row .

    Ik snap niet wat er fout is, iemand een idee?
      FOK!-Schrikkelbaas donderdag 15 maart 2007 @ 14:04:45 #133
    1972 Swetsenegger
    Egocentrische Narcist
    pi_47300192
    quote:
    Op donderdag 15 maart 2007 13:58 schreef Qunix het volgende:

    [ code verwijderd ]

    Hij geeft een error aan: Column count doesn't match value count at row .

    Ik snap niet wat er fout is, iemand een idee?
    je specificeert 5 kolommen terwijl je maar 3 waardes INSERT
    pi_47300244
    quote:
    Op donderdag 15 maart 2007 14:04 schreef Swetsenegger het volgende:

    [..]

    je specificeert 5 kolommen terwijl je maar 3 waardes INSERT
    Ah.. ik zie hem.. thanks.
    pi_47303510
    quote:
    Op dinsdag 13 maart 2007 15:25 schreef BlueCurl het volgende:
    ik heb zojuist op windows vista weer apache 2.0, php 5, mysql5.0 en pma 2.9.2 geinstalleerd en geconfigureerd. enkel als ik v mysql gui tools (query browser) naar mysql gaat is het geen probleem. me pagina's maken ook gewoon connectie met mysql en dit in php.ini allemaal gewoon de mysql extensies geladen. Das alles werkt. Enkel blijft PMA zeueren dat die mysql extensie niet geladen kan worden. ik heb hier naar gezocht maar enigste wat ik kan vinden is de dll en de lib van mysql toevoegen. dat is ook gewoon gedaan. maar pma blijft enkel zeuren...
    niemand?
    pi_47304288
    quote:
    Op donderdag 15 maart 2007 15:38 schreef BlueCurl het volgende:

    [..]

    niemand?
    Doe eens een phpinfo() en kijk eens of daar de juiste MySQL extensies tussen staan?
    pi_47322964


    je bedoelt dit ? snap al 1 en ander van php config en co maar nog nooit probs gehad met mysql erbij dus weet ook niet zo 1 2 3 precies waar dit aan kan liggen dus ik hoor het wel als me screenshot nutteloos is

    edit: linkje
    pi_47323424
    quote:
    Op vrijdag 16 maart 2007 00:38 schreef BlueCurl het volgende:
    [afbeelding]

    je bedoelt dit ? snap al 1 en ander van php config en co maar nog nooit probs gehad met mysql erbij dus weet ook niet zo 1 2 3 precies waar dit aan kan liggen dus ik hoor het wel als me screenshot nutteloos is

    edit: linkje
    Heb je phpMyAdmin toevallig zo ingesteld dat hij gebruik wil maken van de MySQLi-extensie? (let op de 'i' )
    pi_47325620
    quote:
    Op vrijdag 16 maart 2007 01:00 schreef JeRa het volgende:

    [..]

    Heb je phpMyAdmin toevallig zo ingesteld dat hij gebruik wil maken van de MySQLi-extensie? (let op de 'i' )
    neen, heb ff php.ini opnieuw gedaan en alles werkt nu. Ik zal wel ergens wat verkeerds hebben gedaan, weet wel zeker! Later eens kijken wat want heb dat php.ini bestandje ff ergens anders gezet!

    maar iig bedankt voor de hulp
    pi_47335726
    Ik heb een klein forum gemaakt en mensen de mogelijkheid gegeven om met [ B ] tekst bold te maken.. werkt allemaal best aardig maar wanneer iemand een aantal keren iets bold maakt en vervolgens de tag nooit sluit, zullen de volgende posts ook bold worden, dat moet natuurlijk niet.
    Wat is een goede manier om dit te doen?

    Ik zou natuurlijk het aantal [ B ] kunnen tellen en daarna evenveel < / strong > aan het einde van de post zetten maar dat is zo omslachtig.

    De functie ziet er zo uit trouwens:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    function makeTitlesInFieldBold($field) {
       $original = array(
                      "[B]",
                      "[b]",
                      "[/B]",
                      "[/b]",
                      "[I]",
                      "[i]",
                      "[/I]",
                      "[/i]"
                   );
       $replace = array(
                      "<strong>",
                      "<strong>",
                      "</strong>",
                      "</strong>",
                      "<em>",
                      "<em>",
                      "</em>",
                      "</em>"
                   );

       return str_replace($original, $replace, $field);
    }
    -
    pi_47335868
    @splendor

    De meest gebruikte manier om dit te doen (en zo wordt het hier ook in Replique gedaan) is door regular expressions te gebruiken. Je kunt dan ongeveer zo tags verwerken:

    1
    2
    3
    4
    <?php
    $tekst 
    preg_replace('#[b](.*)[/b]#Uis''<b>$1</b>'$tekst);
    // Let op: bug in Replique, er staan backslashes in bovenstaande regel
    ?>


    Dit zorgt ervoor dat tags áltijd in tweetallen moeten voorkomen, maar je krijgt er weer wel andere bugs door. Bijvoorbeeld door de tags [b]door elkaar[/b] te gebruiken (quote me om het te zien).

    Een andere methode is een stackbased UBB-parser, dit vereist echter wel wat meer code maar is uiteindelijk robuuster. Hier kun je denk ik genoeg over vinden met google
    pi_47335942
    Dankje, zoiets zocht ik inderdaad.
    En nu zou het ook mogelijk moeten zijn om urls erin te verwerken, dan wat was met mijn functie ook niet echt te doen.

    Die bug vind ik overigens geen echte bug.. iemand die tags zo gebruikt die verdient het om een foute layout te krijgen.
    Als de user's eigen post er slecht uitziet door foute tags dan is dat zijn eigen probleem, zolang andere posts die later komen er maar geen last van hebben.
    -
    pi_47336222
    Het is mij ook nog niet gelukt om 'www.fok.nl' om te zetten naar => ' <a href="http://www.fok.nl">www.fok.nl</a>'
    pi_47336333
    quote:
    Op vrijdag 16 maart 2007 14:01 schreef splendor het volgende:
    Die bug vind ik overigens geen echte bug.. iemand die tags zo gebruikt die verdient het om een foute layout te krijgen.
    Dat klopt, maar het is niet altijd fout. Denk aan quotes in quotes, dus [q..] blaat blaat [q...] ... [/q...] blaat blaat [/q...]
    pi_47336353
    quote:
    Op vrijdag 16 maart 2007 14:01 schreef splendor het volgende:
    Dankje, zoiets zocht ik inderdaad.
    En nu zou het ook mogelijk moeten zijn om urls erin te verwerken, dan wat was met mijn functie ook niet echt te doen.

    Die bug vind ik overigens geen echte bug.. iemand die tags zo gebruikt die verdient het om een foute layout te krijgen.
    Als de user's eigen post er slecht uitziet door foute tags dan is dat zijn eigen probleem, zolang andere posts die later komen er maar geen last van hebben.
    Je kunt heel ranzig achter elke post standaard een </b> </u> </i> zetten
    quote:
    Op vrijdag 16 maart 2007 14:09 schreef super-muffin het volgende:
    Het is mij ook nog niet gelukt om 'www.fok.nl' om te zetten naar => ' <a href="http://www.fok.nl">www.fok.nl</a>'
    http://nl2.php.net/function.parse-url

    Heb je hier wat aan?
    pi_47336907
    Nee dat is niet wat ik bedoel Geqxon.

    Ik heb ook een soort parser, maar ik wil nog dat als iemand gewoon een link www.fok.nl invoerd, dat dat het dan geparsed word naar <a href="http://www.fok.nl">www.fok.nl</a>
    pi_47337024
    1
    2
    3
       $field = preg_replace("#\[B\](.*?)\[/B\]#si","<strong>\\1</strong>", $field);
       $field = preg_replace("#\[I\](.*?)\[/I\]#si","<em>\\1</em>", $field);
       $field = preg_replace("#\[URL\](.*?)\[/URL\]#si","<a href=\"\\1\" target=\"_blank\" rel=\"nofollow\">\\1</a>", $field); 


    Dit is hem uiteindelijk geworden.

    Worden smileys op dezelfde manier gedaan? Dat : P vervangen wordt door het plaatje? Of kan ik dat beter anders doen?
    -
    pi_47337113
    quote:
    Op vrijdag 16 maart 2007 14:29 schreef super-muffin het volgende:
    Nee dat is niet wat ik bedoel Geqxon.

    Ik heb ook een soort parser, maar ik wil nog dat als iemand gewoon een link www.fok.nl invoerd, dat dat het dan geparsed word naar <a href="http://www.fok.nl">www.fok.nl</a>
    En met bovenstaande parser kun je an sich kijken of iets een geldige URL. En omdat ik nu toch weinig tot niets te doen heb ga ik er even aan zitten
    pi_47347348
    quote:
    Op vrijdag 16 maart 2007 14:32 schreef splendor het volgende:
    Worden smileys op dezelfde manier gedaan? Dat : P vervangen wordt door het plaatje? Of kan ik dat beter anders doen?
    Smilies kan je op dezelfde manier doen. Alleen kan je daar in plaats van preg_replace een gewone str_replace voor gebruiken, die is (waarschijnlijk) sneller.

    Zie trouwens ook mijn 2 jaar oude post in deeltje 5.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_47348304
    quote:
    Op vrijdag 16 maart 2007 19:31 schreef SuperRembo het volgende:

    [..]

    Smilies kan je op dezelfde manier doen. Alleen kan je daar in plaats van preg_replace een gewone str_replace voor gebruiken, die is (waarschijnlijk) sneller.

    Zie trouwens ook mijn 2 jaar oude post in deeltje 5.
    Dankje
    Zoiets wilde ik zelf gaan maken, scheelt veel werk.

    Ik ben overigens bezig met een Remember me checkbox aan mijn login te hangen, in combinatie met cookies. Hoe kan ik dit veilig maken?
    Wat ik al heb:
    $_COOKIE wordt gefilterd, net als POST eigenlijk.
    Hij saved je login + md5 van password + unique key
    unique key staat ook in de database

    Als je op de site komt kijkt ie of er een cookie bestaat, zo ja, bestaat de combinatie login+pass+unique key --> dan ben je ingelogged.
    Zo nee? heb je wel gewoon een session loggedIn=true ? Dan ben je ook ingelogged.

    Hoewel ik misshcien in de sessie beter ook je login + pass kan opslaan, anders als je iemands session ID hebt terwijl die persoon is ingelogged dan ben jij ook ingelogged. Kleine kans maar vooruit.

    Maar het gaat vooral om de cookies, moet ik nog meer aan security doen of is dit voldoende?
    -
    pi_47349786
    Op welke schaal wil je dit gaan gebruiken??
    pi_47350210
    Op dit moment voor een forum van een heel oud spel wat amper iemand meer kent en waar misschien 2-3mensen per dag van gebruik van maken.. hooguit.
    Maar het is wel onderdeel van mijn eigen CMS dus het gaat straks ook gebruikt worden voor andere sites.

    Heeft dat er mee te maken dan?
    -
    pi_47357695
    quote:
    Op vrijdag 16 maart 2007 20:36 schreef Geqxon het volgende:
    Op welke schaal wil je dit gaan gebruiken??
    Hoezo, gaat je bouwwerk voor URL-detectie traag zijn?
    pi_47357783
    quote:
    Op zaterdag 17 maart 2007 00:51 schreef JeRa het volgende:

    [..]

    Hoezo, gaat je bouwwerk voor URL-detectie traag zijn?


    Ik duidde natuurlijk op slendor
    pi_47358068
    quote:
    Op zaterdag 17 maart 2007 00:55 schreef Geqxon het volgende:

    [..]



    Ik duidde natuurlijk op slendor
    Ik zie niets wat met schaalbaarheid te maken hoeft te hebben, en beveiliging is onafhankelijk van de schaal liever meer dan minder aanwezig natuurlijk. En aangezien je dit zei
    quote:
    Op vrijdag 16 maart 2007 14:35 schreef Geqxon het volgende:

    [..]

    En met bovenstaande parser kun je an sich kijken of iets een geldige URL. En omdat ik nu toch weinig tot niets te doen heb ga ik er even aan zitten
    pi_47392467
    Ik heb een vraagje aan de experts.

    Omdat ik me weer eens verveelde wilde ik een andere versie schrijven van Linkbase ( http://linkbase.bruggema.nl ) en tot nu toe heb ik dit gerealiseerd! http://startpagina.bruggema.nl/ maar nu wil ik graag weten of de HTML technische opbouw (let niet op de headers, etc, deze zitten er namelijk nog niet in) juist is? ofdat jullie zeggen dat het op een andere manier beter is.

    De 'startpagina' script die ik aan het schrijven ben gaat veel mogelijkheden ondersteunen, een paar zal ik opnoemen.

    1 In categorieen kun je html, afbeeldingen, rss feeds en php code gebruiken!
    2. links kun je stuk voor stuk verplaatsen (sorteren) maar ook verplaatsen naar andere categorieen!
    3. categorieen kun je verplaatsen, sorteren

    Nu wil ik zelf het liefst werken met templates, maar de huidige code is zonder templates en zie ook niet snel of dit echt makkelijk mogelijk is om dit in templates te verwerken

    Voorbeeld van hoe het nu werkt!

    1
    2
    3
    4
    5
    6
    7
    8
        <div style='border:1px solid black; margin-bottom: 15px;'>
        <h2>A1-1 test</h2>
        <ul>
            <li><a href="out.php?link=http://www.titel.nl" title="Titel" target="1">Titel</a></li>

            <li><span class='tip'>TIP</span> <a href="out.php?link=http://www.titel2.nl" title="Titel II" target="2">Titel II</a></li>
        </ul>
        </div>


    Nu een voorbeeld waarbij er ook HTML (andere data dan items worden gebruikt)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        <div style='border:1px solid black; margin-bottom: 15px;'>
        <h2>A1-1 test</h2>
        <ul>
            <li><a href="out.php?link=http://www.titel.nl" title="Titel" target="1">Titel</a></li>
        </ul>
        <p>HTML Code</p>
        <ul>

            <li><span class='tip'>TIP</span> <a href="out.php?link=http://www.titel2.nl" title="Titel II" target="2">Titel II</a></li>
        </ul>
        </div>


    en dan nu een voorbeeld met geen links maar wel html code

    1
    2
    3
    4
        <div style='border:1px solid black; margin-bottom: 15px;'>
        <h2>A1-1 test</h2>
        <p>HTML Code</p>
        </div>


    Wat is jullie mening? en is de laadtijd lang/kort voor een startpagina concept?

    [ Bericht 19% gewijzigd door Chandler op 18-03-2007 12:43:05 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47420674
    Heeft iemand toevallig een class in de aanbieding die html kan opschonen? en ook html op de juiste manier laat inspringen.
    ..///
    pi_47420959
    quote:
    Op maandag 19 maart 2007 00:22 schreef wipes66 het volgende:
    Heeft iemand toevallig een class in de aanbieding die html kan opschonen? en ook html op de juiste manier laat inspringen.
    Het eerste waar ik aan denk is Tidy maar of die extension ook automagisch kan inspringen, geen idee.
    pi_47422951
    quote:
    Op maandag 19 maart 2007 00:36 schreef JeRa het volgende:

    [..]

    Het eerste waar ik aan denk is Tidy maar of die extension ook automagisch kan inspringen, geen idee.
    Tidy kan dat denk wel, maar zoals gewoonlijk ondersteunt mijn webhost het niet.
    ..///
    pi_47424159
    quote:
    Op zondag 18 maart 2007 11:39 schreef Chandler het volgende:
    Ik heb een vraagje aan de experts.

    Omdat ik me weer eens verveelde wilde ik een andere versie schrijven van Linkbase ( http://linkbase.bruggema.nl ) en tot nu toe heb ik dit gerealiseerd! http://startpagina.bruggema.nl/ maar nu wil ik graag weten of de HTML technische opbouw (let niet op de headers, etc, deze zitten er namelijk nog niet in) juist is? ofdat jullie zeggen dat het op een andere manier beter is.

    De 'startpagina' script die ik aan het schrijven ben gaat veel mogelijkheden ondersteunen, een paar zal ik opnoemen.

    1 In categorieen kun je html, afbeeldingen, rss feeds en php code gebruiken!
    2. links kun je stuk voor stuk verplaatsen (sorteren) maar ook verplaatsen naar andere categorieen!
    3. categorieen kun je verplaatsen, sorteren

    Nu wil ik zelf het liefst werken met templates, maar de huidige code is zonder templates en zie ook niet snel of dit echt makkelijk mogelijk is om dit in templates te verwerken

    Voorbeeld van hoe het nu werkt!
    [ code verwijderd ]

    Nu een voorbeeld waarbij er ook HTML (andere data dan items worden gebruikt)
    [ code verwijderd ]

    en dan nu een voorbeeld met geen links maar wel html code
    [ code verwijderd ]

    Wat is jullie mening? en is de laadtijd lang/kort voor een startpagina concept?
    Zodra ik het vakje Bruggema.nl sluit, open en dan weer sluit blijft er een wit ruimte over ipv dat de andere categoriën zoals Direct Connect naar boven schieten. Open en sluit ik ze weer dan schiet alles weer de hoogte van 1 categorie naar beneden, steeds dieper.. dus de witruimte wordt steeds groter. Javascript bugje denk ik.
    getest op FF 1.5.

    Verder zou ik niet voor LI en P gaan maar dat is denk ik meer persoonlijk, ik zou in ieder geval weinig argumenten kunnen aanleveren waarom div of span fijner werkt, ik ben het gewend denk ik.
    -
    pi_47424450
    @splendor; klopt, waar die fout in zit weet ik nog steeds niet (linkbase) maar het is inderdaad zeer vervelend..

    maar waarom niet voor ul/li en p? dan gebruik je bestaande html elementen ipv het zelf defenieren van divs...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47424840
    quote:
    Op maandag 19 maart 2007 08:20 schreef Chandler het volgende:
    maar waarom niet voor ul/li en p? dan gebruik je bestaande html elementen ipv het zelf defenieren van divs...
    Psst, vertel dan dat je die gebruikt om semantisch correcte HTML te schrijven, en dus bijvoorbeeld listitems voor lijsten van gegevens gebruikt.
      maandag 19 maart 2007 @ 09:15:49 #163
    12880 CraZaay
    prettig gestoord
    pi_47425187
    quote:
    Op maandag 19 maart 2007 07:42 schreef splendor het volgende:

    Verder zou ik niet voor LI en P gaan maar dat is denk ik meer persoonlijk, ik zou in ieder geval weinig argumenten kunnen aanleveren waarom div of span fijner werkt, ik ben het gewend denk ik.
    Off topic in een PHP topic, maar wat mij betreft is dat geen kwestie van voorkeur. P en LI hebben meer/andere semantische waarde dan DIV's: P bevat een paragraaf, LI een list item. Dat veel mensen te pas en te onpas DIV's gebruiken is simpelweg omdat ze nog in tabellen denken. Dan krijg je combinaties als <div class="header"><h1>Title</h1></div> met tig overbodige DIV's. Ik zou zeggen: gebruik de elemten waar ze voor bedoeld zijn, en gebruik DIV's om te groeperen per functiegroep (bijvoorbeeld "footer met copyright notice en selectbox").

    Het gebruikte list element vind ik daarom uitermate geschikt, je kunt een lijst van links niet anders zien dan een lijst/opsomming.

    Het gekozen paragraaf element gaat problemen opleveren waarschijnlijk, omdat je daar niet zomaar alle HTML in kan stoppen (op w3.org staat prima beschreven welke elementen er wel en niet in een P mogen/kunnen).

    Chandler, maak in ieder geval je pagina compleet met de juiste tags (<html>, etc) en voeg een doctype toe. Op deze manier kun je namelijk onmogelijk testen en valideren. De tabellen gebruik je zoals je ongetwijfeld weet totaal verkeerd, aangezien je ze simpelweg gebruik om drie kolommen te maken. Dat is iets waar DIV's weer prima geschikt voor zijn. En voor de tabel met je login form kun je prima uit de voeten met labels om zo de boel te stylen
    pi_47427034
    @Jera; je hebt gelijk, het is inderdaad om lijsten te gereneren!

    @CraZaay; absoluut gelijk heb je m.b.t. het kleine TABEL die ik in deze voorbeeld heb verwerkt, wil alleen kijken of dit een goede manier is om een startpagina concept gemakkelijk aanpasbaar te maken. Zal in de volgende versie de juiste doctype en dergeljike gegevens toevoegen.

    PS. dit login form is ff snel getyped omdat deze weer in de database vermeld staat als stuk html code ;P
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47433763
    klein MySQL vraagje

    Ik wil aan een query 2 statements toevoegen, waar ik al veel AND vragen heb staan. Nu heb ik geprobeerd om er een AND en OR vraag aan toe te voegen maar nu gaat het fout.

    Nu wil ik aan deze query toevoegen of iets uit 'land' of uit 'land' (voorbeeld) komt.

    SELECT * FROM tabel
    WHERE grootte >= 20
    AND jaar = 2006
    AND status =1
    AND land = 'nl'
    OR land = 'be'

    maar hier gaat iets fout, want als het land be is dan krijg ik ook items die geen status 1 hebben etc... what am i doing wrong?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47433884
    AND land IN ('nl','be')

    OF

    ... AND (land = 'nl' OR land='be')
      maandag 19 maart 2007 @ 14:10:31 #167
    120139 freiss
    Hertog Jan :9~
    pi_47433929
    quote:
    Op maandag 19 maart 2007 14:06 schreef Chandler het volgende:
    klein MySQL vraagje

    Ik wil aan een query 2 statements toevoegen, waar ik al veel AND vragen heb staan. Nu heb ik geprobeerd om er een AND en OR vraag aan toe te voegen maar nu gaat het fout.

    Nu wil ik aan deze query toevoegen of iets uit 'land' of uit 'land' (voorbeeld) komt.

    SELECT * FROM tabel
    WHERE grootte >= 20
    AND jaar = 2006
    AND status =1
    AND land = 'nl'
    OR land = 'be'

    maar hier gaat iets fout, want als het land be is dan krijg ik ook items die geen status 1 hebben etc... what am i doing wrong?
    Haakjes plaatsen.
    HJ 14-punt-gift.
    Lijst met rukmateriaal!
    pi_47434352
    had ik eerst ook gedaan maar lan dIN is idd beter

    en als ik nu wil dat alles toegelaten mag worden behalve de land IN?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47434585
    quote:
    Op maandag 19 maart 2007 14:22 schreef Chandler het volgende:
    had ik eerst ook gedaan maar lan dIN is idd beter

    en als ik nu wil dat alles toegelaten mag worden behalve de land IN?
    Je zou eens kunnen beginnen met een SQL boekje open slaan ipv alles laten voorkauwen?

    AND land NOT IN (a,b,c)
    pi_47435654
    haha je hebt gelijk, maar had het antwoord zelf al gevonden... ben slecht in multitasken heb ik door
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47436417
    Ik heb een tabel genaamd nieuws. Ik heb een pagina waar ik nieuws toon. Ik wil een aparte pagina waar ik alleen nieuws toon over Notulen. In de titel komt het woord Notulen in voor. Ik heb dit opgelost met WHERE LIKE functie van SQL. Nu wil ik de berichten op de pagina die alle berichten toont, met in de titel Notulen weg hebben. Hoe doe ik dit?
    pi_47437607
    WHERE titel NOT LIKE '%notulen%'

    Het kostte je meer tijd om deze post te maken dan zelf ff een SQL boek open te slaan
    pi_47438413
    quote:
    Op maandag 19 maart 2007 15:44 schreef smesjz het volgende:
    WHERE titel NOT LIKE '%notulen%'

    Het kostte je meer tijd om deze post te maken dan zelf ff een SQL boek open te slaan
    Momenteel heb ik dat niet. Ik haal mijn informatie uit wikipedia en kon ik het niet vinden.
    Bedankt.
    pi_47438511
    quote:
    Op maandag 19 maart 2007 16:03 schreef Qunix het volgende:

    [..]

    Momenteel heb ik dat niet. Ik haal mijn informatie uit wikipedia en kon ik het niet vinden.
    Bedankt.
    w3schools is dan wel handig

    maar ja boeit het wat? het is niet voor niks een voor dummies topic
    pi_47439924
    @mschol; eingelijk zou het handig zijn als er een vragen database van gemaakt zou kunnen worden, zodat je in een opslag handige antwoorden kan vinden
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47440265
    quote:
    Op maandag 19 maart 2007 16:38 schreef Chandler het volgende:
    @mschol; eingelijk zou het handig zijn als er een vragen database van gemaakt zou kunnen worden, zodat je in een opslag handige antwoorden kan vinden
    Ja, daar zit de wereld echt op de wachten. Ik vind die W3schools site er goed omdat bij die code voorbeelden ook het result staat.
    http://www.w3schools.com/sql/default.asp

    Het lijkt me een goed alternatief voor wikipedia om SQL te leren.
      maandag 19 maart 2007 @ 17:05:44 #177
    73209 dnzl
    Minimalist.
    pi_47440980
    Ik wil door middel van checkboxes meerdere waardes in een MySQL cel voegen.
    Hoe doe ik dit? Hoe voeg ik een bijvoorbeeld een komma of streepje toe?
    pi_47442351
    quote:
    Op maandag 19 maart 2007 16:47 schreef smesjz het volgende:

    [..]

    Ja, daar zit de wereld echt op de wachten. Ik vind die W3schools site er goed omdat bij die code voorbeelden ook het result staat.
    http://www.w3schools.com/sql/default.asp

    Het lijkt me een goed alternatief voor wikipedia om SQL te leren.
    Tja w3schools is idd erg goed, juist omdat ze zich richten op mensen die minder goed met textuele zaken om kunnen gaan en beter kunnen werken met code voorbeelden (zoals ik! )

    zoals irt.org, deze website vind ik echt verdomde handig, jammer alleen dat deze amper meer geupdated wordt
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47442383
    quote:
    Op maandag 19 maart 2007 17:05 schreef dnzl het volgende:
    Ik wil door middel van checkboxes meerdere waardes in een MySQL cel voegen.
    Hoe doe ik dit? Hoe voeg ik een bijvoorbeeld een komma of streepje toe?
    Wat voor informatie? en eventueel zou je alles (van bv een array) om kunnen zetten naar een comma seperated string oid...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      Donald Duck held maandag 19 maart 2007 @ 17:52:40 #180
    46149 __Saviour__
    Superstapelsmoor op Kristel
    pi_47442690
    hoe krijg ik een getal tussen 1 en een bepaald getal dat écht random is. Nouja, semirandom he voor zover een computer dat kan.
    ik gebruik nu
    srand((double)microtime()*1000000); // Set a random seed up
    en
    $n = rand(0,(count($image)-1)); // Create a random number from 0 to the size of the array

    maar daar lijkt nogal veel herhaling in te zitten, alsof het niet echt random is.
    ❤ Rozen zijn rood ❤
    ❤ Viooltjes zijn blauw ❤
    ❤ Kristel, ik hou van jou! ❤
    pi_47443042
    llijkt? heb je een voorbeeld welke random uitkomsten je hebt?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      Donald Duck held maandag 19 maart 2007 @ 18:08:47 #182
    46149 __Saviour__
    Superstapelsmoor op Kristel
    pi_47443245
    nou ja, het is geen lijst ofzo.
    maar het gaat om het script van mijn avatar. die trekt een willekeurig getal. maar hij lijkt nogal te vaak dezelfde te pakken.
    ❤ Rozen zijn rood ❤
    ❤ Viooltjes zijn blauw ❤
    ❤ Kristel, ik hou van jou! ❤
    pi_47445033
    Je kan proberen de rand niet meer de seeden. Vanaf PHP 4.2.0 is de seed niet meer nodig. Wellicht zorgt de standaard seed in PHP voor betere resultaten?
    pi_47445129
    En volgens een comment die bij de rand() staat kun je beter mt_rand() gebruiken, die schijnt betere resultaten in 'randomness' te geven.
    quote:
    Here's an interesting note about the inferiority of the rand() function. Try, for example, the following code...

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $r
    = array(0,0,0,0,0,0,0,0,0,0,0);
    for (
    $i=0;$i<1000000;$i++) {
      
    $n = rand(0,100000);
      if (
    $n<=10) {
       
    $r[$n]++;
      }
    }
    print_r($r);
    ?>


    which produces something similar to the following output (on my windows box, where RAND_MAX is 32768):

    Array
    (
    [0] => 31
    [1] => 0
    [2] => 0
    [3] => 31
    [4] => 0
    [5] => 0
    [6] => 30
    [7] => 0
    [8] => 0
    [9] => 31
    [10] => 0
    )

    Within this range only multiples of 3 are being selected. Also note that values that are filled are always 30 or 31 (no other values! really!)

    Now replace rand() with mt_rand() and see the difference...

    Array
    (
    [0] => 8
    [1] => 8
    [2] => 14
    [3] => 16
    [4] => 9
    [5] => 11
    [6] => 8
    [7] => 9
    [8] => 7
    [9] => 7
    [10] => 9
    )

    Much more randomly distributed!

    Conclusion: mt_rand() is not just faster, it is a far superior algorithm.
      maandag 19 maart 2007 @ 19:08:13 #185
    73209 dnzl
    Minimalist.
    pi_47445302
    quote:
    Op maandag 19 maart 2007 17:44 schreef Chandler het volgende:

    [..]

    Wat voor informatie? en eventueel zou je alles (van bv een array) om kunnen zetten naar een comma seperated string oid...
    Gewoon text
    Kun je een voorbeeldje geven hoe ik dit doe?
      Donald Duck held maandag 19 maart 2007 @ 19:11:42 #186
    46149 __Saviour__
    Superstapelsmoor op Kristel
    pi_47445436
    ok bedankt HuHu.
    Dat mt_rand ziet er wel beter uit, want in dat gegeven voorbeeld blijkt rand dus niet zo heel netjes willekeurig te zijn dus zoals ik dacht.
    ❤ Rozen zijn rood ❤
    ❤ Viooltjes zijn blauw ❤
    ❤ Kristel, ik hou van jou! ❤
    pi_47446970
    quote:
    Op maandag 19 maart 2007 19:03 schreef HuHu het volgende:
    En volgens een comment die bij de rand() staat kun je beter mt_rand() gebruiken, die schijnt betere resultaten in 'randomness' te geven.
    [..]
    In een andere range doet ie het wel beter, zet maar eens rand(0,10.000) ipv rand(0,100.000)
    Dit geeft een al veel betere waarde. (uiteraard moeten de punten in de functie weg, maar dit was voor de duidelijkheid. Heeft dit misschien te maken met het feit dat die random maximaal ~30.000 aan kan?

    Het is inderdaad wel bekend dat de standaard random van PHP niet echt optimaal werkt
    Toch een interessant voorbeeld, geeft wel aan dat er iets niet helemaal goed is.
    World of Warcraft RP spelers opgelet!
    Hier is ie dan, de enige echte..
    Phantasia WoW RP Profiler Site!
    pi_47450792
    Is het mogelijk om in php aan te geven op welke pagina (en eventueel zelfs welke regel) een stuk code zich bevindt?
    Ik heb een aantal classes en functies die elkaar aanroepen en als ik een foutmelding in een query krijg staat er vaak At line 1 (functie mysql_error()) en dan is het toch ff zoeken waar de query zelf nou eigenlijk staat. Vandaar dus.
    -
    pi_47450972
    quote:
    Op maandag 19 maart 2007 21:08 schreef splendor het volgende:
    Is het mogelijk om in php aan te geven op welke pagina (en eventueel zelfs welke regel) een stuk code zich bevindt?
    Ik heb een aantal classes en functies die elkaar aanroepen en als ik een foutmelding in een query krijg staat er vaak At line 1 (functie mysql_error()) en dan is het toch ff zoeken waar de query zelf nou eigenlijk staat. Vandaar dus.
    Ik maak altijd mijn eigen errors

    1
    2
    3
    4
    5
    6
    7
    <?php
    $connection
    = mysql_connect(.....


    if (!
    $connection)
    $errorlog .= "Could not connect to database in " . $_SERVER['PHP_SELF'];
    ?>
    pi_47451387
    quote:
    Op maandag 19 maart 2007 21:08 schreef splendor het volgende:
    Is het mogelijk om in php aan te geven op welke pagina (en eventueel zelfs welke regel) een stuk code zich bevindt?
    Ik heb een aantal classes en functies die elkaar aanroepen en als ik een foutmelding in een query krijg staat er vaak At line 1 (functie mysql_error()) en dan is het toch ff zoeken waar de query zelf nou eigenlijk staat. Vandaar dus.
    http://nl2.php.net/manual/en/language.constants.predefined.php
    pi_47451764
    Dankje dat zocht ik inderdaad.
    Ik had al een site gevonden waar het stond maar ik had $__LINE__
    stom!

    Dit ga ik inderdaad gebruiken voor eigen error parsing.
    Voorbeeld van wat ik nu heb:

    mysql_error() geeft:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDAER BY name' at line 1

    Mijn error daaronder:
    Query: on line 21
    SELECT u.*, g.name as groupName FROM si_users u LEFT JOIN si_groups g ON u.groupID = g.id ORDAER BY name

    En dat netjes in een divje met rood lijntje.
    -
    pi_47483953
    Ik ben een echte n00b qua PHP, maar eigenlijk wil ik wel iets maken. In dit topic staan allemaal topics, en ik wil graag snel kunnen zien wanneer zo'n topic vol is, zodat ik de nieuwe link kan plaatsen. Het aantal posts van een topic moet dus geteld worden, zodat ik bij 300 de link kan verversen. Hoe kan ik dat het beste doen ?
    Achter-elkaar-bezochte-Ajax-thuiswedstrijden-meter: [b]29[/b].
    [b]Laatste wedstrijd:[/b] FC Timişoara. [b]Volgende:[/b] ADO Den Haag.
    Ray's Statshoekje - 2009/2010.
      dinsdag 20 maart 2007 @ 20:22:10 #193
    85514 ralfie
    !Yvan eht nioj
    pi_47485601
    quote:
    Op dinsdag 20 maart 2007 19:45 schreef RayMania het volgende:
    Ik ben een echte n00b qua PHP, maar eigenlijk wil ik wel iets maken. In dit topic staan allemaal topics, en ik wil graag snel kunnen zien wanneer zo'n topic vol is, zodat ik de nieuwe link kan plaatsen. Het aantal posts van een topic moet dus geteld worden, zodat ik bij 300 de link kan verversen. Hoe kan ik dat het beste doen ?
    het beste kun je dat niet doen. De enige manier (zonder direct database toegang te hebben) is om elk topic met php te openen en dan te bepalen of er wel of geen 300 posts zijn. Dat slibt elke willekeurige server dicht Naja, snel is anders in ieder geval.
    pi_47486034
    Een wilde theorie: Elk topic met "/1/330" erachter f-openen (alle posts laten zijn), en dan preg_matchen op "msg(*,*,*,".

    Of het topic met "/300/1" erachter f-openen en dan kijken of "<span class="ap">" bestaat
    pi_47488350
    -weggeedit-

    [ Bericht 44% gewijzigd door Geqxon op 20-03-2007 23:39:41 ]
    pi_47494782
    Dat ging fout. Dan nogmaals:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <?php
    if (isset($_POST['topics'])){
        
    $topics = explode("n",$_POST['topics']);

        foreach (
    $topics as $topicURL){
            if (
    preg_match("/http:/i", $topicURL)){
                
    $found = false;
                
    $lines = @file($topicURL . "/300/1");                                
                
    $regex = "/class="ap"/i";

                if (
    $lines)
                    foreach (
    $lines as $line){
                        if (
    preg_match ($regex, $line))
                            
    $found = true;
            
                        
    eregi("<title>(.*)</title>", $line, $title);
                    }
        
                if (
    $found == true)
                    echo
    "<a href="".$topicURL."">".$title[1]."</a> heeft een 300ste post <br />";
            }
        }
    }
    ?>

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <br />
    <form method="POST" action="p300.php">
       <textarea cols="30" rows="20" name="topics">
          http://forum.fok.nl/topic/926270
          http://forum.fok.nl/topic/614138
          http://forum.fok.nl/topic/845403
          http://forum.fok.nl/topic/710464
          http://forum.fok.nl/topic/686411
          http://forum.fok.nl/topic/946336
          http://forum.fok.nl/topic/792154
          http://forum.fok.nl/topic/629891
       </textarea>
       <br />
       <input type="submit">
    </form>


    Edit: Gadver, wat heeft fok een shitload bugs. Er moet een backslash voor de "n" bij de explode functie, twee backslashes bij de quotes rond "ap" en nog twee backslashes rond HREF van <a ... >.
    pi_47502663
    die bug in kan je voorkomen door de slash te escapen in de code tag, php tag werkt het volgens mij niet bij

    1 \ <--hier staan 2 slashes
    pi_47504450
    En als ik een textarea afsluit-tag plaats denkt Fok dat het preview veld van mijn reply daar ophoudt, en gaat de rest van mijn post verder in de layout van fok. Editen van de post gaat dus wat lastig. Heerlijk
    pi_47535025
    Ik ben wat met youtube flimpjes aan het klooien. Die wil ik niet op de site van youtube bekijken, die wil ik in een klein handig pop-up venster zien, op een pagina met alleen de video.

    pagina.php
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php

    $vid = $_GET["vid"]; 
    ?>

    <div align="center">
    <object width="320" height="258">
    <param name="movie" value="http://www.youtube.com/v/<?php echo "$vid" ?>">
    </param>
    <embed src="http://www.youtube.com/v/<?php echo "$vid" ?>" type="application/x-shockwave-flash" width="320" height="258">
    </embed>
    </object>


    Da's vrij simpel.

    Maar ik wil gebruik maken van de Quick Search Functie van Firefox, zodat ik alleen maar

    1v http://www.youtube.com/watch?v=AS8nQD85jTk


    In hoef te typen zodat ik naar pagina.php?vid=AS8nQD85jTk gestuurd word.

    Maar dan moet dat http://www.youtube.com/watch?v= gedeelte er dus automatisch uitgesloopt worden..

    Kan dat met PHP?
    pi_47541318
    str_replace("watch?v=", "v/", $text)

    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47541439
    Ik zit met een vraag en dit is eingelijk geen PHP maar doe het toch maar hier

    Nu heb ik reeds het ontwerp gemaakt voor mijn eigen persoonlijke startpage (concurrentje van mijn linkbase ) en nu moet ik bezig gaan met het administratie gedeelte van de startpagina (categorieen, links, html gedeeltes aanmaken, verwijderen, veranderen, verplaatsen etc)

    Nu dacht ik in de 1e instantie dat dit een goed idee was (zie pic)


    maar nu lijkt het mij toch niet echt een heel goed idee... hoe zouden jullie de beheerders gedeelte van een startpagina achtig concept aanpakken?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 22 maart 2007 @ 11:28:07 #202
    4159 GI
    Nee ik heet geen JOE
    pi_47541517
    HTML ALLEEN VREDE ZONDER titel


    Maar op je vraag: Op die manier. Ik zou alleen de knippen rechts alignen.
      donderdag 22 maart 2007 @ 11:30:44 #203
    46383 Tiemie
    sowieso wel!
    pi_47541592
    .
    pi_47541614
    quote:
    Op donderdag 22 maart 2007 11:28 schreef GI het volgende:
    HTML ALLEEN VREDE ZONDER titel


    Maar op je vraag: Op die manier. Ik zou alleen de knippen rechts alignen.
    Ik wou exact hetzelfde typen
      donderdag 22 maart 2007 @ 11:31:52 #205
    4159 GI
    Nee ik heet geen JOE
    pi_47541630
    quote:
    Op donderdag 22 maart 2007 11:31 schreef Geqxon het volgende:

    [..]

    Ik wou exact hetzelfde typen
    *shoots himself in the face*
    pi_47541871
    Ach wat maken de teksten nou uit in een test omgeving? en ja ook mijn engels is ongv net zo slekt als mijn NL

    Dus knoppen rechts zetten ipv links..

    Maar jullie vinden de opzet van het beheren van links en categorieen zelf in een zelfde soort layout een juiste optie?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 22 maart 2007 @ 13:20:33 #207
    12880 CraZaay
    prettig gestoord
    pi_47545068
    Volgorde veranderen met drag & drop? Kan eenvoudig met Scriptaculous bijvoorbeeld (Sortables).
    pi_47545184
    quote:
    Op donderdag 22 maart 2007 11:31 schreef GI het volgende:

    [..]

    *shoots himself in the face*
    Ik hou ook van jou

    PS: Je webicon is te groot.
      donderdag 22 maart 2007 @ 13:24:59 #209
    4159 GI
    Nee ik heet geen JOE
    pi_47545208
    PS, hij is ook klikbaar.
    pi_47545364
    quote:
    Op donderdag 22 maart 2007 13:24 schreef GI het volgende:
    PS, hij is ook klikbaar.
    En helaas 4 kilobyte te groot.
    pi_47546439
    quote:
    Op donderdag 22 maart 2007 13:20 schreef CraZaay het volgende:
    Volgorde veranderen met drag & drop? Kan eenvoudig met Scriptaculous bijvoorbeeld (Sortables).
    Weer een onderdeel van Ruby on Rails

    maar drag en drop zou idd een leuke toevoeging zijn...
    quote:
    Op donderdag 22 maart 2007 13:24 schreef GI het volgende:
    PS, hij is ook klikbaar.
    Hoe krijg je dat voor elkaar??
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      donderdag 22 maart 2007 @ 14:46:31 #212
    12880 CraZaay
    prettig gestoord
    pi_47548035
    quote:
    Op donderdag 22 maart 2007 14:01 schreef Chandler het volgende:

    [..]

    Weer een onderdeel van Ruby on Rails
    Niet echt

    De Prototype en Scriptaculous libraries zitten standaard bij RoR, maar je kan ze ook prima los downloaden en draaien i.c.m. PHP. Ze worden niet gemaakt/onderhouden door de makers van RoR ofzo.

    Wel heeft Rails handige helpers om i.c.m. die libraries unobtrusive Ajax te bouwen enzo.
      donderdag 22 maart 2007 @ 15:17:02 #213
    65471 SkaterSam
    Lurking Galore
    pi_47549052
    Vraagje, ik kan met een functie makkelijk een array returnen naar een sessie. Maar nou wil ik diezelfde sessie array controleren op het bestaan van bepaalde keys (en of ze gevuld zijn). Ik heb dus het volgende:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    function createSession() {
      return array(
    "user" => "jan""time" => 1234"token" => "abcdefg");  
    }

    // Zo vraag je hem op
    $_SESSION['controleren'] = createSession();

    // Sessie weer controleren op USER, TIME en TOKEN als key
    checkSession($_SESSION['controleren']);
    ?>

    Maar nu is mijn vraag, hoe controleer ik iedere key apart (USER, TIME en TOKEN dus...) maar creeer ik één output (dus als er één key niet goed is, dan geeft die FALSE). Ik probeerde het in een foreach loop, maar ik kan niet bedenken hoe je ieder individueel controleert met één output. Of pak ik het verkeerd aan...?
    Let's make life easy
    Typo's are the demon spawn from hell !
      donderdag 22 maart 2007 @ 15:24:56 #214
    12880 CraZaay
    prettig gestoord
    pi_47549324
    quote:
    Op donderdag 22 maart 2007 15:17 schreef SkaterSam het volgende:
    Maar nu is mijn vraag, hoe controleer ik iedere key apart (USER, TIME en TOKEN dus...) maar creeer ik één output (dus als er één key niet goed is, dan geeft die FALSE). Ik probeerde het in een foreach loop, maar ik kan niet bedenken hoe je ieder individueel controleert met één output. Of pak ik het verkeerd aan...?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    function checkSession($ses) {
      if ($ses['user'] && $ses['time'] && $ses['token']) {
        return true;
      } else {
        return false;
      }
    }
    ?>

    Doet vast niet wat je wilt, maar heb je iets aan het idee an sich?
      donderdag 22 maart 2007 @ 15:31:13 #215
    65471 SkaterSam
    Lurking Galore
    pi_47549540
    quote:
    Op donderdag 22 maart 2007 15:24 schreef CraZaay het volgende:
    Doet vast niet wat je wilt, maar heb je iets aan het idee an sich?
    Nee, ik wil de namen van de keys die ingegeven worden, controleren op juistheid. Dus dat er ten eerste 3 keys op zijn gegeven. En dan controleren of de namen van die 3 keys USER, TIME en TOKEN zijn. En daarna controleren of ze niet leeg, of foutief zijn. Maar het gaat mij om het controleren van de namen van de keys.
    Let's make life easy
    Typo's are the demon spawn from hell !
      donderdag 22 maart 2007 @ 16:31:27 #216
    12880 CraZaay
    prettig gestoord
    pi_47551654
    quote:
    Op donderdag 22 maart 2007 15:31 schreef SkaterSam het volgende:

    [..]

    Nee, ik wil de namen van de keys die ingegeven worden, controleren op juistheid. Dus dat er ten eerste 3 keys op zijn gegeven. En dan controleren of de namen van die 3 keys USER, TIME en TOKEN zijn. En daarna controleren of ze niet leeg, of foutief zijn. Maar het gaat mij om het controleren van de namen van de keys.
    1
    2
    3
    if (array_key_exists('user', $ses) && array_key_exists('time', $ses) && array_key_exists('token', $ses)) {
       ...
    }

    Nog meer opties op http://nl2.php.net/manual/en/ref.array.php ;)
      donderdag 22 maart 2007 @ 16:43:15 #217
    65471 SkaterSam
    Lurking Galore
    pi_47552097
    quote:
    Op donderdag 22 maart 2007 16:31 schreef CraZaay het volgende:

    [..]
    [ code verwijderd ]

    Nog meer opties op http://nl2.php.net/manual/en/ref.array.php


    OMG, zo makkelijk he, ik had die functie nog in een aantal testjes...
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47564098
    quote:
    Op donderdag 22 maart 2007 11:21 schreef Chandler het volgende:
    str_replace("watch?v=", "v/", $text)

    Iets uitgebreider?

    Ik kom er niet uit.
      donderdag 22 maart 2007 @ 23:56:19 #219
    65471 SkaterSam
    Lurking Galore
    pi_47567456
    quote:
    Op donderdag 22 maart 2007 22:32 schreef roelofjan het volgende:
    Iets uitgebreider?

    Ik kom er niet uit. ;(
    Ik geloof dat hij bedoelt dat als je dan een link van youtube hebt, dus: http://www.youtube.com/watch?v=AS8nQD85jTk, dat in php het volgende gebeurt:

    1
    2
    3
    4
    5
    6
    7
    <?php
    $link 
    "http://www.youtube.com/watch?v=AS8nQD85jTk"

    $newlink str_replace("watch?v=""v/"$link);

    // Nieuwe link: http://www.youtube.com/v/AS8nQD85jTk
    ?>

    Dit is wat er gebeurt, of wilde je dat niet hebben...? Kijk ook even bij str_replace() anders.

    Ik snapte verder niet wat je nou precies wilde... Maar in ieder geval, als je dan je quick search aanroept, krijg je de gehele link bij pagina.php?vid=http://www.youtube.com/watch?v=AS8nQD85jTk en die kan je dan met str_replace al gelijk in die snelle code omtoveren. Dan hoeft dat ook niet meer in de harde code te staan. Dan krijg je in je HTML de waarde <param value="<?php echo $newlink ?>"> of iets dergelijks. Ik geloof dat Chandler het zo bedoelde...
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47567881
    Ik wil

    http://www.youtube.com/watch?v=AS8nQD85jTk

    Omtoveren in

    AS8nQD85jTk

    Dat ik dus van

    $link = "http://www.youtube.com/watch?v=AS8nQD85jTk";

    naar

    $videoid = "AS8nQD85jTk";

    ga..
      vrijdag 23 maart 2007 @ 00:10:45 #221
    12880 CraZaay
    prettig gestoord
    pi_47567939
    $videoid = str_replace('http://www.youtube.com/watch?v=', '', $link)

    pi_47567968
    Om Sams voorbeeld maar te rippen:

    1
    2
    3
    4
    5
    6
    7
    <?php
    $link 
    "http://www.youtube.com/watch?v=AS8nQD85jTk"

    $newlink str_replace("http://www.youtube.com/watch?v="""$link);

    // Nieuwe link: AS8nQD85jTk
    ?>
      vrijdag 23 maart 2007 @ 00:14:27 #223
    65471 SkaterSam
    Lurking Galore
    pi_47568040
    quote:
    Op vrijdag 23 maart 2007 00:11 schreef Geqxon het volgende:
    Om Sam's voorbeeld maar te rippen:
    [ code verwijderd ]
    Wat hij zegt dus...
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47568151
    Hehe, ik snap het eindelijk. :')

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php

    $url = $_GET["url"]; 

    $videoid = str_replace("http://www.youtube.com/watch?v=", "", $url);

    ?>

    <div align="center">
    <object width="320" height="258">
    <param name="movie" value="http://www.youtube.com/v/<?php echo "$videoid" ?>">
    </param>
    <embed src="http://www.youtube.com/v/<?php echo "$videoid" ?>" 

    type="application/x-shockwave-flash" width="320" height="258">
    </embed>
    </object>


    Thanks!
    pi_47573840
    Vraagje aan de experts!

    Ik heb een scriptje geschreven waarbij een gebruiker wat informatie kan versturen incl een plaatje. Na het verwerken van de data gebruik ik een header("Location: om naar een andere pagina te gaan) Dit gaat goed.

    Nu moest ik echter een resize routine inbouwen voor het verkleinen van het plaatje. Dit alles gaat goed, totdat ik aan de header ("Location: kom en deze werkt opeens niet meer.

    Is dit een bug in PHP? en hoe kun je zien of er al headers zijn verstuurd?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47573946
    Heb je al iets naar de browser gestuurd? Let op: Een simpele spatie voor je <? kan alles al bepaald hebben
    pi_47574295
    Als ik een echo voor de header zet krijg ik gewoon de melding dat de headers niet verstuurd kunnen worden en zonder het resize gedeelte gaat het gewoon helemaal goed
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47574356
    quote:
    Op vrijdag 23 maart 2007 10:55 schreef Chandler het volgende:
    Als ik een echo voor de header zet krijg ik gewoon de melding dat de headers niet verstuurd kunnen worden en zonder het resize gedeelte gaat het gewoon helemaal goed
    Klopt. De header is het eerste dat verstuurd moet worden, daar mag niks tussen zitten
    pi_47574736
    Klopt, maar nu vraag ik me af of de volgende functies een header uitspugen!

    imagecreatefromjpeg
    ImageCreateTrueColor
    ImageCopyResized
    ImageJpeg
    ImageDestroy

    Want kan daar helaas niets over vinden op php.net...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47575039
    Verschijnt er wat in je browser nadat je die functie(s) hebt uitgevoerd?
    pi_47575255
    quote:
    Op vrijdag 23 maart 2007 11:09 schreef Chandler het volgende:
    Klopt, maar nu vraag ik me af of de volgende functies een header uitspugen!

    imagecreatefromjpeg
    ImageCreateTrueColor
    ImageCopyResized
    ImageJpeg
    ImageDestroy

    Want kan daar helaas niets over vinden op php.net...
    ImageJpeg spuugt geen header uit maar wel contents als je geen filename hebt opgegeven. Verder kunnen we bar weinig zo, zonder code
    pi_47575314
    Niets, helemaal niets...

    zal even een stukje code plaatsen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    if (isSet($_FILES['foto1']) && $_FILES['foto1']['error'] == "0" && $_FILES['foto1']['size'] > 0)
                    {
                        $new  = "./gallery/org-" . $id . "-" . $_FILES['foto1']['name'];
                        $new1 = "./gallery/" . $id . "-" . $_FILES['foto1']['name'];

                        if (move_uploaded_file($_FILES['foto1']['tmp_name'], $new))
                        {

                            function cSize($im_width, $im_height, $size)
                            {
                                if ($im_width >= $im_height)
                                {
                                    $factor     = $size / $im_width;
                                    $new_width  = $size;
                                    $new_height = $im_height * $factor;
                                }
                                else
                                {
                                    $factor     = $size / $im_height;
                                    $new_height = $size;
                                    $new_width  = $im_width * $factor;
                                }

                                return array("width" => round($new_width, 0), "height" => round($new_height, 0));
                            }


                            // insert into db
                            mysql_query("INSERT INTO `fotos` (`vis_id`, `foto`)
                                         VALUES ('" . $id . "',
                                                 '" . $_FILES['foto1']['name'] . "');");
                                                 
                            // kijken of we het plaatje moeten verkleinen
                            
                            // alle teksten vasthouden.
                            ob_start("ob_end");
                            // is the orginal file still existing.
                            $im = @imagecreatefromjpeg($new);

                            // file is opend for editing
                            if ($im)
                            {
                                // set up thumbnail sizes
                                $im_width  = imageSX($im);
                                $im_height = imageSY($im);

                                if (500 >= $im_width && 500 >= $im_height)
                                {
                                    // doe niets
                                    ImageJpeg($im,
                                              $new1,
                                              75);
                                }
                                else
                                {
                                    $new_size = cSize($im_width, $im_height, 500);

                                    // create new image.
                                    $new_im = ImageCreateTrueColor($new_size['width'],
                                                                   $new_size['height']);

                                    // thumbnail the image.
                                    ImageCopyResized($new_im,
                                                     $im,
                                                     0,
                                                     0,
                                                     0,
                                                     0,
                                                     $new_size['width'],
                                                     $new_size['height'],
                                                     $im_width,
                                                     $im_height);


                                    // make image as jpeg.
                                    ImageJpeg($new_im,
                                              $new1,
                                              75);

                                    // remove build settings. (cache)
                                    ImageDestroy($im);
                                    ImageDestroy($new_im);

                                }
                            }
                            ob_end_clean();
                        }
                    }


    daarna volgt een email actie en

    1
    2
                    header("Location: voegtoe.php?actie=klaar");
                    exit();


    dit alles werkt goed zonder de 'THUMBNAIL' functie maar met krijg ik dus een lege pagina
    quote:
    Op vrijdag 23 maart 2007 11:23 schreef JeRa het volgende:
    ImageJpeg spuugt geen header uit maar wel contents als je geen filename hebt opgegeven. Verder kunnen we bar weinig zo, zonder code
    gedaan voordat ik je post zag

    -edit-

    ob_etc er in gezet om eventueel buffers op te vangen... maar geeft 0.0 resultaat
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47575493
    Die ob_start('ob_end') is een beetje vreemd. Die functie ob_end() bestaat naar mijn weten niet. Maar of dat het probleem oplost is een tweede
    pi_47575558
    Volgens mij hoeft dat er niet eens in te staan
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47575597
    quote:
    Op vrijdag 23 maart 2007 11:31 schreef Chandler het volgende:
    Volgens mij hoeft dat er niet eens in te staan
    Ik zou zeggen, comment de hele body van die functie eens uit en schakel weer regels in totdat het niet meer werkt

    En als een sidenote, een Location-header moet normaal gesproken een complete URI bevatten, en geen relatieve paden.
    pi_47575694
    dat is simpel, dat is de header.. als ik het gedeelte van resizen tussen /* en */ zet dan werkt het wel!

    Tevens heb je gelijk met het complete pad, maar ook relatief moet werken!

    maar ik zal het even testen!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47575737
    quote:
    Op vrijdag 23 maart 2007 11:33 schreef JeRa het volgende:

    [..]


    En als een sidenote, een Location-header moet normaal gesproken een complete URI bevatten, en geen relatieve paden.
    Uit nieuwsgierigheid: Is dit vanwege de netheid, strictheid of omdat de kans groot is dat het dan totaal niet werkt?
    pi_47575865
    quote:
    Op vrijdag 23 maart 2007 11:36 schreef Geqxon het volgende:

    [..]

    Uit nieuwsgierigheid: Is dit vanwege de netheid, strictheid of omdat de kans groot is dat het dan totaal niet werkt?
    Uit de RFC:
    quote:
    14.30 Location

    The Location response-header field is used to redirect the recipient to a location other than the Request-URI for completion of the request or identification of a new resource. For 201 (Created) responses, the Location is that of the new resource which was created by the request. For 3xx responses, the location SHOULD indicate the server's preferred URI for automatic redirection to the resource. The field value consists of a single absolute URI.

    Location = "Location" ":" absoluteURI
    Dus vanwege netheid, strictheid én omdat er een kans is dat sommige systemen er anders op vastlopen dat de meeste browsers het pikken betekent nog niet dat het een vrijbrief is om te doen. Dat is net zoiets als <center> en <font> mixen met CSS-styles, of de DOCTYPE weglaten.
    pi_47575944
    Al lijkt mij dat niet handig voor standaardscript dat op veel server gedeployed moet worden. Al kun je dan wel weer met $_SERVER spelen
    pi_47575998
    quote:
    Op vrijdag 23 maart 2007 11:42 schreef Geqxon het volgende:
    Al lijkt mij dat niet handig voor standaardscript dat op veel server gedeployed moet worden. Al kun je dan wel weer met $_SERVER spelen
    Dát, en een additionele mogelijkheid is natuurlijk het hanteren van configfiles ontzettend veel applicaties en websystemen (voor zover ze de informatie niet uit $_SERVER kunnen halen) vereisen dat je de FQDN (Fully Qualified Domain Name) opgeeft.
    pi_47577260
    Ps. Is het logisch als je een bestand van 2MB hebt deze 20MB aan geheugen in beslag neemt met imageCreateFromJpeg?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47577514
    quote:
    Op vrijdag 23 maart 2007 12:24 schreef Chandler het volgende:
    Ps. Is het logisch als je een bestand van 2MB hebt deze 20MB aan geheugen in beslag neemt met imageCreateFromJpeg?
    Ja, ik geloof dat je het als een bmp moet voorstellen, echt elke pixel stelt een byte voor. Tenminste dat las ik ergens toen ik er mee aan de slag ging.
    -
    pi_47577531
    quote:
    Op vrijdag 23 maart 2007 12:24 schreef Chandler het volgende:
    Ps. Is het logisch als je een bestand van 2MB hebt deze 20MB aan geheugen in beslag neemt met imageCreateFromJpeg?
    Als hij het naar een rauw formaat omzet, kan dat best logisch zijn. Ik heb geen flauw idee dus
    pi_47577796
    Dus dan zou het handiger zijn dat wanneer je met images gaat werken je altijd het geheugen / 10 = max upload MB oid
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47578266
    Het kan dan dus soms ook handig zijn om bijvoorbeeld ImageMagick te installeren op je server.
    pi_47578921
    Klopt maar in dit geval niet echt handig

    Tevens kom ik nog iets raars tegen

    Als ik een bestand van 2MB upload krijg ik netjes in $_FILES alle gegevens terug behalve de grootte van het bestand, deze staat namelijk dan op 0???

    Hoe is dat mogelijk?

    -edit-
    kan dit komen door de limiet die is opgesteld in PHP?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47579165
    Het bestand is inderdaad volledig geüpload?
    pi_47579184
    Hoe kan ik zien of deze volledig is geuploaded? want afgekapte bestanden zie je toch niet terug in $_FILES?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47579215
    Post eens een print_r($_FILES)
    pi_47579236
    Waar doel je op Geqxon?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47579295
    quote:
    Op vrijdag 23 maart 2007 13:30 schreef Chandler het volgende:
    Waar doel je op Geqxon? :D
    In je sourcecode even

    1
    2
    3
    <?php
    print_r
    ($_FILES);
    ?>


    neerzetten, en wat hij uitpoept hier neerzetten :)
    pi_47579311
    quote:
    Op vrijdag 23 maart 2007 12:59 schreef HuHu het volgende:
    Het kan dan dus soms ook handig zijn om bijvoorbeeld ImageMagick te installeren op je server.
    das waar die moet ik ook nog installeren op mn server!
    pi_47582291
    quote:
    Op vrijdag 23 maart 2007 13:32 schreef Geqxon het volgende:

    [..]

    In je sourcecode even
    [ code verwijderd ]

    neerzetten, en wat hij uitpoept hier neerzetten
    Ik heb de error reeds gevonden, ik moet toch echt wat meer letten op errors van php zelf
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47582321
    quote:
    Op vrijdag 23 maart 2007 14:57 schreef Chandler het volgende:

    [..]

    Ik heb de error reeds gevonden, ik moet toch echt wat meer letten op errors van php zelf
    Gewoon lekker ruig "E_ALL" in je php.ini zetten
    pi_47583438
    ik ben ook even bezig met een scriptje..
    maar ik krijg deze melding:

    Warning: imagecreatefrompng() [function.imagecreatefrompng]: 'icon.png' is not a valid PNG file

    Hoe kan ik dat png bestandje wel valid maken?
    pi_47583737
    Is het wel een PNG bestand dat? Of is het een JPG/GIF/BMP die je naar *.png hebt gerenamed?

    En werkt je script wel met andere PNG bestanden?
    pi_47584085
    quote:
    Op vrijdag 23 maart 2007 15:31 schreef HuHu het volgende:
    Is het wel een PNG bestand dat? Of is het een JPG/GIF/BMP die je naar *.png hebt gerenamed?

    En werkt je script wel met andere PNG bestanden?
    Het is een origineel png bestand

    en andere png afbeeldingen worden gewoon weergegeven.
    pi_47584275
    quote:
    Op vrijdag 23 maart 2007 15:39 schreef cw2cu het volgende:

    [..]

    Het is een origineel png bestand

    en andere png afbeeldingen worden gewoon weergegeven.
    Ik las nog ergens op php.net dat er een probleem was met PNG bestanden die meer dan 256 kleuren bevatten... misschien ligt het daar aan?
    pi_47584460
    Ik had wel problemen met GIF maar dat kwam omdat ivm die patenten ruzies een tijd terug bepaalde versies van GDlibrary geen gif ondersteuning meer hadden, en die versie stond toevallig op mijn server. Maar PNG is geloof ik patentvrij.
    Misschien heeft het met de transperatie te maken? Daar wil ie soms ook wel eens over vallen.
    -
    pi_47585442
    quote:
    Op vrijdag 23 maart 2007 15:44 schreef HuHu het volgende:

    [..]

    Ik las nog ergens op php.net dat er een probleem was met PNG bestanden die meer dan 256 kleuren bevatten... misschien ligt het daar aan?
    dankje, ik weet niet waarom maar het is idd opgelost
      vrijdag 23 maart 2007 @ 19:14:58 #261
    65471 SkaterSam
    Lurking Galore
    pi_47591360
    edit: zie onder

    [ Bericht 34% gewijzigd door SkaterSam op 24-03-2007 17:17:33 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47597705
    Je zal moeten controleren of er een geldige waarde in staat, niet alleen of er iets in staat wat niet false is.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      zaterdag 24 maart 2007 @ 13:52:13 #263
    65471 SkaterSam
    Lurking Galore
    pi_47609598
    edit: lekker, de errors werden niet als een array naar de sessie gestuurd, dus bleven ze elkaar overschrijven...

    [ Bericht 96% gewijzigd door SkaterSam op 24-03-2007 17:17:11 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
      zaterdag 24 maart 2007 @ 17:44:26 #264
    116535 Smoked
    Ally Sheedy FTW!1
    pi_47615146
    Wat is er fout aan deze notatie?

    1$query = "DELETE FROM tbl_persoon WHERE persoonID=" .$_POST["persoonID"];
    There IS no global warming -- The Matrix
    pi_47615482
    quote:
    Op zaterdag 24 maart 2007 17:44 schreef Smoked het volgende:
    Wat is er fout aan deze notatie?
    [ code verwijderd ]
    1$query = "DELETE FROM tbl_persoon WHERE persoonID="  . $_POST['persoonID'];


    Beter. Het lag aan de quotes. Verder is dit levensgevaarlijk, en raad ik je aan eerst te kijken of er geen rotzooi in de $_POST staat, maar daar laat ik het even bij.
      zaterdag 24 maart 2007 @ 18:36:25 #266
    51748 H4ze
    wait...what?
    pi_47616536
    quote:
    Op zaterdag 24 maart 2007 17:44 schreef Smoked het volgende:
    Wat is er fout aan deze notatie?
    [ code verwijderd ]
    Geef de URL van de site waarop je deze query gebruikt is?
    *BURP*
    pi_47616886
    Inderdaad, ga eens na wat er gebeurd bij het volgende:

    $_POST['persoonID'] = "1 OR 1=1";

    pi_47617441
    quote:
    Op zaterdag 24 maart 2007 17:57 schreef Geqxon het volgende:

    [..]
    [ code verwijderd ]

    Beter. Het lag aan de quotes. Verder is dit levensgevaarlijk, en raad ik je aan eerst te kijken of er geen rotzooi in de $_POST staat, maar daar laat ik het even bij.
    Als je toch over quotes valt, waarom maak je er dan niet gelijk
    1$query = 'DELETE FROM tbl_persoon WHERE persoonID='  . $_POST['persoonID'];
    van?
    pi_47618179
    quote:
    Op zaterdag 24 maart 2007 19:08 schreef Light het volgende:

    [..]

    Als je toch over quotes valt, waarom maak je er dan niet gelijk
    [ code verwijderd ]

    van?
    Waarom is ' beter dan "?
    -
    pi_47619085
    Omdat bij " PHP nog gaat kijken of er iets te parsen valt binnen de string en bij ' niet. Dus ' is sneller dan ".
    pi_47619139
    quote:
    Op zaterdag 24 maart 2007 19:08 schreef Light het volgende:

    [..]

    Als je toch over quotes valt, waarom maak je er dan niet gelijk
    [ code verwijderd ]

    van?
    Dat is persoonlijk. De inhoud van een variabele zet ik altijd in double-quotes, de key van een array in single-quotes.
      zaterdag 24 maart 2007 @ 22:59:02 #272
    12880 CraZaay
    prettig gestoord
    pi_47626932
    quote:
    Op zaterdag 24 maart 2007 19:58 schreef HuHu het volgende:
    Omdat bij " PHP nog gaat kijken of er iets te parsen valt binnen de string en bij ' niet. Dus ' is sneller dan ".
    Je hebt het dan wel over een verwaarloosbare snelheidswinst:
    quote:
    I put together a different benchmark that does measure parsing time. It consists of two files

    < ?php echo 'very long string'; ?>

    and

    < ?php echo "very long string"; ?>

    The very long string I used was the text of the US constitution: 27,787 bytes. I measured using ab, which includes parsing time. My results:

    single quotes: 27.59 ms
    double quotes: 27.74 ms

    Hardly earth-shattering. Single quotes was consistently faster, but by the same minor margin. This is with a 27k literal string. My guess is that you will never have enough literals in a typical PHP program for any parsing performance differential to matter.
    pi_47627243
    Het is niet echt wat je noemt een groot verschil nee
      zondag 25 maart 2007 @ 00:49:19 #274
    65471 SkaterSam
    Lurking Galore
    pi_47630358
    Wederom, zie onder

    [ Bericht 97% gewijzigd door SkaterSam op 25-03-2007 13:54:51 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
    pi_47630427
    @SkaterSam

    Je zult toch wat voorbeelden moeten geven, want PHP4 kan prima var $session in classes aan.
      zondag 25 maart 2007 @ 01:08:31 #276
    65471 SkaterSam
    Lurking Galore
    pi_47630742
    GRMMMBLLL.... Ik dus de alle functies escapen, na een uurtje kwam ik er achter dat ctype_digit() de boosdoener was...

    [ Bericht 20% gewijzigd door SkaterSam op 25-03-2007 13:54:27 ]
    Let's make life easy
    Typo's are the demon spawn from hell !
      zondag 25 maart 2007 @ 12:42:06 #277
    116535 Smoked
    Ally Sheedy FTW!1
    pi_47636277
    Ik wil met behulp van $_POST een uit een vorige pagina geselecteerd e-mail adres in een mailform knallen en dat doe ik zo.

    1$recipientemail = $_POST["emailadres"];


    recipientemail ziet er zo uit
    1mail($recipientemail,"$subject","$message","From: $Name <$Email>");


    Het probleem is nu alleen dat als ik de form wil versturen, ik deze melding krijg:

    Warning: mail() [function.mail]: SMTP server response: 503 RCPT first (#5.5.1) in C:wampwwwmeelvorm.php on line 116

    (waar line 116 de recipient code is)
    There IS no global warming -- The Matrix
    pi_47638776
    Heb je wel een SMTP server ingesteld in php.ini?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_47646225
    Ik zit met een vaag iets... Eingelijk zou het volgende moeten werken maar goed.

    het volgende stukje code gebruik ik om HTML en een timestamp te serializen en weg te schrijven. Daarna wil ik het weer uitlezen maar krijg ik een error

    schrijf functie
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if (PAGE_CACHE == true)
    {
        $file = PAGE_CACHE_PATH . "page_" . $startPage->id . ".tpl";
                    
        $fd  = fopen($file, "w+");
                    
        fputs($fd, serialize(array("update" => $pageArr['update'],
                                   "html"   => parseTemplate($tplContainer))));
                    
        fclose($fd);
    }


    lees functie
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    if (PAGE_CACHE == true && file_exists($file))
    {
        $fd = fopen($file, "r");

        $buf = fgets($fd, filesize($file));

        fclose($fd);

        $uns = unserialize($buf); // regel 47!

        if ($uns['update'] == $lastupdate)
        {
            return $uns;
        }
    }


    error
    quote:
    Notice: unserialize() failed at offset 38440 of 84 bytes op regel 47
    wat doe ik nu fout? niets toch? of zitten er bepaalde limieten aan serialize?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zondag 25 maart 2007 @ 18:49:46 #280
    85514 ralfie
    !Yvan eht nioj
    pi_47647246
    Ik denk (zonder te testen) dat je fout zit in fgets(), die stopt bij newlines
    quote:
    Returns a string of up to length - 1 bytes read from the file pointed to by handle. Reading ends when length - 1 bytes have been read, on a newline (which is included in the return value), or on EOF (whichever comes first). If no length is specified, it will keep reading from the stream until it reaches the end of the line.
    Waarom gebruik je niet gewoon file_get_contents(), of fread()
    pi_47649746
    omg je hebt helemaal gelijk wat een simpele fout eingelijk
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_47664040
    Ik heb een pagina systeem:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?php
    $nieuwsid 
    mysql_query("SELECT nieuws_id,nieuws_titel FROM t_nieuws WHERE nieuws_titel NOT LIKE "%notulen%"");
    $aantalberichten mysql_num_rows($nieuwsid);
    $aantpages $aantalberichten/5;
    $page $_GET['bladzijde'];
    $begin $page 5;
    $eind 5;

    //wat code

        
    if (!$page==0) {
            echo 
    "<a href="?pagina=".$_GET['pagina']."&bladzijde=".$vorige."&aantber=".$aantalberichten."" title="Vorige pagina">&laquo;</a>n";
        }
        
        for (
    $i 0$i $aantpages$i++) {
            
    $i2 $i 1;
            if (
    $page==$i && $aantalberichten 5) {
                echo 
    $i2;
            } elseif (
    $aantalberichten 6) {
                echo 
    "&nbsp;&nbsp;<a href="?pagina=".$_GET['pagina']."&bladzijde=".$i."&aantber=".$aantalberichten."" title="Ga naar pagina ".$i2."">".$i2."</a>&nbsp;&nbsp;";
            }
        }
        
        if (
    $aantpages && $volgende $aantpages) {
            echo 
    "<a href="?pagina=".$_GET['pagina']."&bladzijde=".$volgende."&aantber=".$aantalberichten."" title="Volgende pagina">&raquo;</a>";
        }
    ?>


    Alleen bij veel pagina's krijg ik een lange rits met getallen te zien. Ik wil dit verkorten naar een paar maar.

    « 11 12 13 14 15 »
    En dan dat men op pagina 13 is. Pijlen buiten is een link naar eerste of laatste pagina.

    Hoe moet ik mijn code uitbreiden?
    pi_47670063
    quote:
    Op maandag 26 maart 2007 10:12 schreef Qunix het volgende:
    Hoe moet ik mijn code uitbreiden?
    Gewoon logisch nadenken. Je gaat van de huidige pagina 2 terug en 2 verder, alleen moet je even controleren of je niet voorbij het begin of eind komt.
    Het helpt wel om logische namen voor variabelen te kiezen. Als je $page, $pagina en $bladzijde gebruikt dan raak je denk ik snel de weg kwijt.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_47679628
    Ik haal uit een DB gegevens over foto's op, en daar wil ik oa linkjes van maken.
    Ik doe dat met een mysql_fetch_array, en dan een while dingetje die de linkjes echoot.
    Hoe kan ik nou eerst nog iets loslaten op die mysql_fetch_array, zodat ik het linkje dat actief is een kleurtje kan geven?

    Ik ben een kei-n00b, trouwens!
      maandag 26 maart 2007 @ 17:58:20 #285
    12880 CraZaay
    prettig gestoord
    pi_47679842
    quote:
    Op maandag 26 maart 2007 17:51 schreef veldmuis het volgende:
    Ik haal uit een DB gegevens over foto's op, en daar wil ik oa linkjes van maken.
    Ik doe dat met een mysql_fetch_array, en dan een while dingetje die de linkjes echoot.
    Hoe kan ik nou eerst nog iets loslaten op die mysql_fetch_array, zodat ik het linkje dat actief is een kleurtje kan geven? :)

    Ik ben een kei-n00b, trouwens!
    Waarom doe je dat niet gewoon in de loop?

    1
    2
    3
    4
    5
    6
    while ($array = mysql_fetch_array($sql)) {
       if (...) {
          echo('deze is active: ');
       }
       echo($array['link']);
    }
      maandag 26 maart 2007 @ 21:45:19 #286
    107951 JortK
    Immer kwaliteitsposts
    pi_47689536
    Waar ik benieuwd naar ben, is hoe bijvoorbeeld blog software als Wordpress die URL's goed voor elkaar krijgt.

    Wanneer ik bijvoorbeeld www.domein.nl/dit-is-mijn-pagina/ intik, dat hij ook op de pagina komt die ik hier onder hebt geblogd.

    Hoe wordt dit door Wordpress gedaan bijvoorbeeld, kan iemand dit uitleggen?
      maandag 26 maart 2007 @ 22:43:34 #287
    12880 CraZaay
    prettig gestoord
    pi_47692570
    Google eens op "url rewriting"
      maandag 26 maart 2007 @ 22:47:27 #288
    107951 JortK
    Immer kwaliteitsposts
    pi_47692774
    quote:
    Op maandag 26 maart 2007 22:43 schreef CraZaay het volgende:
    Google eens op "url rewriting"
    * JortK gaat aan de gang

    Thanks
    pi_47692816
    quote:
    Op maandag 26 maart 2007 17:58 schreef CraZaay het volgende:

    [..]

    Waarom doe je dat niet gewoon in de loop?


    [ code verwijderd ]
    Kan ik daar dan ook gewoon een span class bijzetten?
      maandag 26 maart 2007 @ 23:07:17 #290
    51748 H4ze
    wait...what?
    pi_47693732
    Heeft er hier iemand ervaring met www.rentacoder.com? En als coder zijnde bedoel ik dan. Het lijkt me namelijk wel wat
    *BURP*
      maandag 26 maart 2007 @ 23:52:23 #291
    12880 CraZaay
    prettig gestoord
    pi_47696043
    quote:
    Op maandag 26 maart 2007 22:48 schreef veldmuis het volgende:

    [..]

    Kan ik daar dan ook gewoon een span class bijzetten?
    Je kan erin zetten wat je wilt, tot een uittreksel van de universele verklaring voor de rechten van de mens aan toe
    pi_47700875
    quote:
    Op maandag 26 maart 2007 23:52 schreef CraZaay het volgende:

    [..]

    Je kan erin zetten wat je wilt, tot een uittreksel van de universele verklaring voor de rechten van de mens aan toe
    Ow, dat lijkt me wel wat!
      FOK!-Schrikkelbaas dinsdag 27 maart 2007 @ 08:46:11 #293
    1972 Swetsenegger
    Egocentrische Narcist
    pi_47700977
    quote:
    Op dinsdag 27 maart 2007 08:37 schreef veldmuis het volgende:

    [..]

    Ow, dat lijkt me wel wat!
    Wel klikbaar maken he!
    pi_47701009
    quote:
    Op dinsdag 27 maart 2007 08:46 schreef Swetsenegger het volgende:

    [..]

    Wel klikbaar maken he!
    Wat denk jij dan?!
    pi_47710507
    Ik zou iets als dit wel werkend willen krijgen:

    1
    2
    3
    <?php
    $array
    [$number][] = $value => $key;
    ?>


    Iemand mogelijk tips?
    pi_47710659
    quote:
    Op dinsdag 27 maart 2007 13:46 schreef Geqxon het volgende:
    Ik zou iets als dit wel werkend willen krijgen:
    [ code verwijderd ]

    Iemand mogelijk tips?
    Dat kan het beste zo:

    1
    2
    3
    <?php
    $array
    [$number][$value] = $key;
    ?>


    :)
    pi_47710794
    quote:
    Op dinsdag 27 maart 2007 08:48 schreef veldmuis het volgende:

    [..]

    Wat denk jij dan?!
    is toch helemaal niet logisch, een actief item (dus ze zijn al op de pagina), klikbaar maken.

    Waarom werkt dit niet bij mij?
    SELECT LAST_INSERT_ID()

    Ik zou dan mijn laatste ingevoegde ID (smallint veld, key en autoincrement) maar ik krijg telkens 0 terug.
    pi_47711489
    quote:
    Op dinsdag 27 maart 2007 13:55 schreef super-muffin het volgende:

    [..]

    is toch helemaal niet logisch, een actief item (dus ze zijn al op de pagina), klikbaar maken.

    Waarom werkt dit niet bij mij?
    SELECT LAST_INSERT_ID()

    Ik zou dan mijn laatste ingevoegde ID (smallint veld, key en autoincrement) maar ik krijg telkens 0 terug.
    SELECT LAST_INSERT_ID() AS blabla ?
    Wat eventueel ook mogelijk is, een unieke code tijdelijk opslaan (in php maken dus) en aan de hand van die code weer de select uitvoeren. Ik weet niet hoe veilig die Last insert id is namelijk, wat als er 2 entries door elkaar lopen van 2 users die zich registeren?
    Het hangt natuurlijk wel af waar je het voor gaat gebruiken.
    -
    pi_47711699
    Als workaround:

    select max(keynaam) as lastid from blabla;
    pi_47713136
    Ik heb mij helemaal rot gegoogled, maar: Hoe hang ik een doodsimpele foreing key tussen twee fields in een InnoDB MySQL database?
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')