abonnement Unibet Coolblue
pi_62629203

cd niet bijgeleverd

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

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


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
  • "Reality is an illusion created by a lack of alcohol."
    pi_62629237
    Lapo:

    Aangezien hij die constructie met [] ook niet kende zal hij het nog wel niet zo lang doen, dus ook een vrij grote kans dat hij nog maar net begonnen is met programmeren, dan is dat allemaal nog niet zo vanzelfsprekend.
    "Reality is an illusion created by a lack of alcohol."
      vrijdag 24 oktober 2008 @ 00:50:05 #3
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_62629504
    Ook weer even koekeloeren..
      vrijdag 24 oktober 2008 @ 00:50:13 #4
    12880 CraZaay
    prettig gestoord
    pi_62629506
    Even in een notendop dan De [] zorgt ervoor dat de inputs (of meer: hun waarden) als elementen in een array terecht komen. Met print_r() kun je de inhoud van een array human-readable tonen. Zo, dat was de les voor vandaag (tevens TVP)
      vrijdag 24 oktober 2008 @ 07:26:25 #5
    137676 TommyGun
    Stik er maar in!
    pi_62632373
    quote:
    Op vrijdag 24 oktober 2008 00:35 schreef Dzy het volgende:
    Lapo:

    Aangezien hij die constructie met [] ook niet kende zal hij het nog wel niet zo lang doen, dus ook een vrij grote kans dat hij nog maar net begonnen is met programmeren, dan is dat allemaal nog niet zo vanzelfsprekend.
    Je hebt het goed begrepen
      vrijdag 24 oktober 2008 @ 07:26:54 #6
    137676 TommyGun
    Stik er maar in!
    pi_62632380
    quote:
    Op vrijdag 24 oktober 2008 00:50 schreef CraZaay het volgende:
    Even in een notendop dan De [] zorgt ervoor dat de inputs (of meer: hun waarden) als elementen in een array terecht komen. Met print_r() kun je de inhoud van een array human-readable tonen. Zo, dat was de les voor vandaag (tevens TVP)
    Bedankt, zal er eens mee gaan spelen.
      vrijdag 24 oktober 2008 @ 08:55:50 #7
    107951 JortK
    Immer kwaliteitsposts
    pi_62633166
    quote:
    Op vrijdag 24 oktober 2008 00:50 schreef CraZaay het volgende:
    Even in een notendop dan De [] zorgt ervoor dat de inputs (of meer: hun waarden) als elementen in een array terecht komen. Met print_r() kun je de inhoud van een array human-readable tonen. Zo, dat was de les voor vandaag (tevens TVP)
    Dan neem ik deze TVP even van je over
    pi_62633675
    TVPhp
    Enschede, onze stad! ons domein!
      vrijdag 24 oktober 2008 @ 09:42:49 #9
    62215 qu63
    ..de tijd drinkt..
    pi_62634115
    quote:
    Op vrijdag 24 oktober 2008 08:55 schreef JortK het volgende:

    [..]

    Dan neem ik deze TVP even van je over
    Doe ik mee
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_62634126
    THP
    Just say hi!
      vrijdag 24 oktober 2008 @ 10:24:50 #11
    136730 PiRANiA
    All thinking men are atheists.
    pi_62635082
    Wie weet hoe je het beste resultaten van queries kan cachen?
      vrijdag 24 oktober 2008 @ 10:28:04 #12
    63192 ursel
    "Het Is Hier Fantastisch!
    pi_62635162
    quote:
    Op vrijdag 24 oktober 2008 10:24 schreef PiRANiA het volgende:
    Wie weet hoe je het beste resultaten van queries kan cachen?
    Memcache was daar voor geloof ik
      vrijdag 24 oktober 2008 @ 11:03:31 #14
    137676 TommyGun
    Stik er maar in!
    pi_62636053
    quote:
    Op vrijdag 24 oktober 2008 00:50 schreef CraZaay het volgende:
    Even in een notendop dan De [] zorgt ervoor dat de inputs (of meer: hun waarden) als elementen in een array terecht komen. Met print_r() kun je de inhoud van een array human-readable tonen. Zo, dat was de les voor vandaag (tevens TVP)
    De output is als volgt:

    1
    2
    3
    4
    5
    6
    7
    Array ( [werknemer] => 5 
    [specificatie] => 2 
    [afdeling] => 24 
    [uren] => Array ( [0] => 8 [1] => 4 [2] => 3 [3] => 1 [4] => 2 ) 
    [callnr] => Array ( [0] => 1234 [1] => 4321 [2] => 1243 [3] => 1343 [4] => 1344 ) 
    [omschrijving] => Array ( [0] => omschrijving1 [1] => omschrijving2 [2] => omschrijving3 [3] => omschrijving4 [4] => omschrijving5 ) 
    [submit] => Submit )


    Alles klopt in principe, behalve specificatie en afdeling. Ik krijg het niet voor elkaar om die in een array te zetten.

    Deze worden als volgt aangeroepen:

    <td width=\"10%\">";include("spec.php");echo "</td>
    <td width=\"20%\">";include("afd.php");echo "</td>

    spec.php
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    $query2 
    mysql_query(
    "SELECT `specid`,
    `specificatie`
    FROM `specificatie`
    ORDER BY `specificatie` ASC"
    ) or die (mysql_error());

    echo 
    "<select name='specificatie'>\n";
    while (
    $data mysql_fetch_assoc($query2))
    {
    echo 
    "<option value='".$data['specid']."'>".$data['specificatie']."</option>\n";
    }
    echo 
    "</select>\n";
    ?>


    afd.php
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    $query2 
    mysql_query(
    "SELECT `afdelingid`,
    `afdeling`
    FROM `afdelingen`
    ORDER BY `afdeling` ASC"
    ) or die (mysql_error());

    echo 
    "<select name='afdeling'>\n";
    while (
    $data mysql_fetch_assoc($query2))
    {
    echo 
    "<option value='".$data['afdelingid']."'>".$data['afdeling']."</option>\n";
    }
    echo 
    "</select>\n";
    ?>


    Hoe kan ik dit doen? B.v.d
      vrijdag 24 oktober 2008 @ 11:11:54 #15
    12880 CraZaay
    prettig gestoord
    pi_62636295
    quote:
    Op vrijdag 24 oktober 2008 10:24 schreef PiRANiA het volgende:
    Wie weet hoe je het beste resultaten van queries kan cachen?
    Ik gebruik altijd memcached (nu bezig met een project met 4 memcached servers, samen goed voor 16GB gereserveerd geheugen voor memcached ), maar je zou het ook op schijf op kunnen slaan (serialized).
      vrijdag 24 oktober 2008 @ 11:13:58 #16
    12880 CraZaay
    prettig gestoord
    pi_62636355
    quote:
    Op vrijdag 24 oktober 2008 11:03 schreef TommyGun het volgende:

    Alles klopt in principe, behalve specificatie en afdeling. Ik krijg het niet voor elkaar om die in een array te zetten.
    Waarom wil je dat? Wil je meerdere afdelingen aan whatever-je-doet hangen? Zo ja, dan heb je iets nodig waarmee je meerdere waarden kunt selecteren (dus geen standaard <select>). Wil je gewoon één afdeling hebben, dan heb je ook geen array nodig toch?
      vrijdag 24 oktober 2008 @ 11:15:29 #17
    107951 JortK
    Immer kwaliteitsposts
    pi_62636404
    quote:
    Op vrijdag 24 oktober 2008 11:11 schreef CraZaay het volgende:

    [..]

    Ik gebruik altijd memcached (nu bezig met een project met 4 memcached servers, samen goed voor 16GB gereserveerd geheugen voor memcached ), maar je zou het ook op schijf op kunnen slaan (serialized).
    Serializen, hoe werkt dat?
      vrijdag 24 oktober 2008 @ 11:24:16 #18
    12880 CraZaay
    prettig gestoord
    pi_62636667
    quote:
    Op vrijdag 24 oktober 2008 11:15 schreef JortK het volgende:

    Serializen, hoe werkt dat?
    Je hebt een array/object/whatever en gooit het door serialize(), waarna het een string is geworden. Deze kun je bijvoorbeeld opslaan in een bestand (of database, of wherever). Later kun je deze string met unserialize() weer omzetten naar het originele type & structuur. Zo doet memcached het bijvoorbeeld ook op de achtergrond: je gooit er een object en een key in, deze wordt serialized opgeslagen in het geheugen onder "key", en later wanneer je de waarde van "key" terug vraagt weer unserialized.\

    Het mooie van memcached is ten eerste natuurlijk dat het geheugen rete-snel is (sneller dan welke schijf dan ook) en dat je een pool kunt maken van meerdere servers. Is het geheugen vol, dan wordt de oudste entry weer verwijderd.

    Waar je natuurlijk wel rekening mee moet houden is dat je moet checken of iets al in de cache zit, dus in je model (als je dat gebruikt) "indien X in geheugen zit, geef dan de waarde terug, zo niet voer dan deze code uit en sla het resultaat op als X". Je kunt dan als je memcached gebruikt nog aangeven na hoeveel tijd het vanzelf geinvalideerd (verwijdert) moet worden, of dit op oneindig zetten. In het laatste geval moet je bij een update niet vergeten om het resultaat van je select handmatig te invalideren.

    Memcached is de enige reden waarom grote sites kunnen bestaan zonder downtime Iets als Netlog (zoiets als Hyves, maar dan veel groter (30 miljoen gebruikers)) bijvoorbeeld gebruikt 60 memcached servers met samen 450GB geheugen voor memcached. Hiermee worden 250.000 request per seconde afgevangen die anders naar een van de 200 MySQL servers zou gaan (die hierdoor nog maar 60.000 request per seconde moeten afhandelen).

    [ Bericht 19% gewijzigd door CraZaay op 24-10-2008 11:34:00 ]
      vrijdag 24 oktober 2008 @ 11:32:08 #19
    137676 TommyGun
    Stik er maar in!
    pi_62636890
    quote:
    Op vrijdag 24 oktober 2008 11:13 schreef CraZaay het volgende:

    [..]

    Waarom wil je dat? Wil je meerdere afdelingen aan whatever-je-doet hangen? Zo ja, dan heb je iets nodig waarmee je meerdere waarden kunt selecteren (dus geen standaard <select>). Wil je gewoon één afdeling hebben, dan heb je ook geen array nodig toch?
    De entries komen zo in de DB te staan:

    http://www.uploader.gamergun.com/files/1/urendb.PNG

    Dmv dit formulier:

    http://www.uploader.gamergun.com/files/1/ureninvoer.PNG

    Stel dat een medewerker alle 5 de regels invult, dan moeten er dus 5 entries in de DB komen met zijn medewerker ID en de andere gegevens.

    Is het zo duidelijker? Bedankt
      vrijdag 24 oktober 2008 @ 11:35:48 #20
    12880 CraZaay
    prettig gestoord
    pi_62637014
    quote:
    Op vrijdag 24 oktober 2008 11:32 schreef TommyGun het volgende:

    Is het zo duidelijker? Bedankt
    Dan heb je dus geen array nodig voor afdeling (etc), want die is voor iedere entry gelijk. Je kunt daarvoor bij iedere insert dezelfde waarde gebruiken (en hebt dus geen array nodig).
      vrijdag 24 oktober 2008 @ 11:56:56 #21
    137676 TommyGun
    Stik er maar in!
    pi_62637705
    quote:
    Op vrijdag 24 oktober 2008 11:35 schreef CraZaay het volgende:

    [..]

    Dan heb je dus geen array nodig voor afdeling (etc), want die is voor iedere entry gelijk. Je kunt daarvoor bij iedere insert dezelfde waarde gebruiken (en hebt dus geen array nodig).
    Nee, alles kan verschillen, op de afbeelding idd niet te zien maar de dropdown menu's geven meerdere keuzes.
      vrijdag 24 oktober 2008 @ 12:08:36 #22
    12880 CraZaay
    prettig gestoord
    pi_62638012
    quote:
    Op vrijdag 24 oktober 2008 11:56 schreef TommyGun het volgende:

    [..]

    Nee, alles kan verschillen, op de afbeelding idd niet te zien maar de dropdown menu's geven meerdere keuzes.
    Ah, ok.

    Ik zie in "echo "<select name='specificatie'>\n";" geen [] achter specificatie. Is dat het probleem
      vrijdag 24 oktober 2008 @ 12:22:14 #23
    137676 TommyGun
    Stik er maar in!
    pi_62638324
    quote:
    Op vrijdag 24 oktober 2008 12:08 schreef CraZaay het volgende:

    [..]

    Ah, ok.

    Ik zie in "echo "<select name='specificatie'>\n";" geen [] achter specificatie. Is dat het probleem
    Dat werkt idd voor specificatie, maar niet voor afdeling vreemd genoeg.

    1
    2
    3
    4
    5
    6
    7
    Array ( [werknemer] => 5 
    [specificatie] => Array ( [0] => 1 [1] => 4 [2] => 2 [3] => 1 [4] => 2 ) 
    [afdeling] => 22 
    [uren] => Array ( [0] => uur1 [1] => uur2 [2] => uur3 [3] => uur4 [4] => uur5 ) 
    [callnr] => Array ( [0] => call1 [1] => call2 [2] => call3 [3] => call4 [4] => call5 ) 
    [omschrijving] => Array ( [0] => test1 [1] => test2 [2] => test3 [3] => test4 [4] => test5 ) 
    [submit] => Submit ) 


    echo "<select name='afdeling[]'>\n";
    pi_62643678
    Een snelle vraag.

    Ik heb deze query:
    quote:
    SELECT *,ADDTIME(last_action,"31:15:00") AS `first_run` FROM background_scheduler_timeout WHERE `first_run` <= NOW();
    MySQL beweert `first_run` niet te kennen welke eerder in de query gedefineerd staat.

    Wat doe ik fout?
    pi_62648076
    De waarde voor first_run moet voor ieder record nog bepaald worden, terwijl je hetzelfde record hier wel op probeert te selecteren, dat gaat niet

    Je zou wel "WHERE last_action + 31:15 <= NOW()" (pseudocode) kunnen doen, dan heb je een harde waarde
    abonnement Unibet Coolblue
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')