abonnement Unibet Coolblue Bitvavo
pi_68335614
quote:
Op vrijdag 24 april 2009 13:33 schreef DaFrenk het volgende:
Iemand enig idee van een gratis MySQL database met daarin alle landen en bijbehorende provincies/districten van West-Europa?
Ik ben er ook op zoek naar geweest, maar niet echt gevonden. Het ging mij niet om West-Europa, maar om de hele wereld, maar het was niet te vinden.

Wel ontdekte ik dat drupal een hele verzameling PHP-bestanden heeft waarin voor elk land alle districten staan opgeslagen in een PHP-array. Die heb ik vervolgens gebruikt in mijn applicatie.

Je zou drupal kunnen downloaden, die bestanden kunnen inlezen en zo zelf je eigen database samenstellen.
pi_68335715
quote:
Op vrijdag 24 april 2009 13:40 schreef HuHu het volgende:

[..]

Ik ben er ook op zoek naar geweest, maar niet echt gevonden. Het ging mij niet om West-Europa, maar om de hele wereld, maar het was niet te vinden.

Wel ontdekte ik dat drupal een hele verzameling PHP-bestanden heeft waarin voor elk land alle districten staan opgeslagen in een PHP-array. Die heb ik vervolgens gebruikt in mijn applicatie.

Je zou drupal kunnen downloaden, die bestanden kunnen inlezen en zo zelf je eigen database samenstellen.
Thanks! Dat gaan we eens bekijken!

Tja, er zijn wel van die databases. Maar niet kosteloos dus.
Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
Dwight K. Schrute: Impossible to say. I can't see myself.
pi_68336001
quote:
Op vrijdag 24 april 2009 13:43 schreef DaFrenk het volgende:

[..]

Thanks! Dat gaan we eens bekijken!

Tja, er zijn wel van die databases. Maar niet kosteloos dus.
Klopt, maar met een beetje creativiteit kom je een heel eind met die Drupal bestanden .
  vrijdag 24 april 2009 @ 13:52:26 #104
63192 ursel
"Het Is Hier Fantastisch!
pi_68336018
Ik heb wel ooit eens ergens een postcode database gekregen. Maar volgens mij was die echt gigantische groot, en voor mijn gratis hosting ging dat nou ook weer niet echt samen..
  vrijdag 24 april 2009 @ 13:59:56 #105
62215 qu63
..de tijd drinkt..
pi_68336274
quote:
Op vrijdag 24 april 2009 13:52 schreef ursel het volgende:
Ik heb wel ooit eens ergens een postcode database gekregen. Maar volgens mij was die echt gigantische groot, en voor mijn gratis hosting ging dat nou ook weer niet echt samen..
Dit werkt ook: http://kvdb.net/projects/6pp/
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_68336385
quote:
Op vrijdag 24 april 2009 13:51 schreef HuHu het volgende:

[..]

Klopt, maar met een beetje creativiteit kom je een heel eind met die Drupal bestanden .
Whehe, da's geen bezwaar.

Echter, waar kan ik die bestanden vinden? Ik zie een shitload aan *.inc bestanden, maar daarin vind ik niet echt iets wat op een dergelijke array lijkt. Of moet ik Drupal eerst installeren?
Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
Dwight K. Schrute: Impossible to say. I can't see myself.
pi_68336431
quote:
Op vrijdag 24 april 2009 13:59 schreef qu63 het volgende:

[..]

Dit werkt ook: http://kvdb.net/projects/6pp/
Wow! Da's een instant bookmark!
Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
Dwight K. Schrute: Impossible to say. I can't see myself.
pi_68336592
quote:
Op vrijdag 24 april 2009 14:03 schreef DaFrenk het volgende:

[..]

Whehe, da's geen bezwaar.

Echter, waar kan ik die bestanden vinden? Ik zie een shitload aan *.inc bestanden, maar daarin vind ik niet echt iets wat op een dergelijke array lijkt. Of moet ik Drupal eerst installeren?
Hier: http://drupal.org/project/location En dan in het mapje supported, daar staat alles in.
pi_68336881
quote:
Op vrijdag 24 april 2009 14:10 schreef HuHu het volgende:

[..]

Hier: http://drupal.org/project/location En dan in het mapje supported, daar staat alles in.
Gevonden, thanks! Die bijbehorende mysql postcodedatabases voor o.a. Duitsland zien er ook interessant uit!
Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
Dwight K. Schrute: Impossible to say. I can't see myself.
  vrijdag 24 april 2009 @ 14:18:09 #110
62215 qu63
..de tijd drinkt..
pi_68336886
quote:
Op vrijdag 24 april 2009 14:04 schreef DaFrenk het volgende:

[..]

Wow! Da's een instant bookmark!
Zeker! Ook de afstand tussen 2 postcodes kan je daar vinden: http://6pp.kvdb.net/services/distance?start_postcode=1000AA&destination_postcodes=1200
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_68337641
quote:
Op vrijdag 24 april 2009 12:45 schreef SuperRembo het volgende:

[..]

In principe is het gewoon een http post request.
I know, dat kan ik met cURL doen, maar ik heb toch liever een nettere oplossing. Niemand een idee?
  vrijdag 24 april 2009 @ 15:07:49 #112
63192 ursel
"Het Is Hier Fantastisch!
pi_68338636
quote:
Op vrijdag 24 april 2009 14:18 schreef qu63 het volgende:

[..]

Zeker! Ook de afstand tussen 2 postcodes kan je daar vinden: http://6pp.kvdb.net/services/distance?start_postcode=1000AA&destination_postcodes=1200
Hij herkent niet eens mijn postcode, 2563KA
pi_68338758
quote:
Op vrijdag 24 april 2009 15:07 schreef ursel het volgende:

[..]

Hij herkent niet eens mijn postcode, 2563KA
Nee, ik zie ook dat mijn straat en postcode er niet in voorkomen. Maar het is dan ook een vrijwilligersproject begrijp ik? Misschien kunnen we onze gegevens doorgeven, dan helpen we tenminste mee om het completer te maken
Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
Dwight K. Schrute: Impossible to say. I can't see myself.
pi_68339220
quote:
Op vrijdag 24 april 2009 14:41 schreef super-muffin het volgende:
I know, dat kan ik met cURL doen, maar ik heb toch liever een nettere oplossing. Niemand een idee?
ik gebruik de NuSOAP class altijd, die regelt het dan lekker voor me
  vrijdag 24 april 2009 @ 15:31:20 #115
63192 ursel
"Het Is Hier Fantastisch!
pi_68339383
quote:
Op vrijdag 24 april 2009 15:26 schreef Xcalibur het volgende:

[..]

ik gebruik de NuSOAP class altijd, die regelt het dan lekker voor me
Hier ook..
pi_68340628
Dan ga ik daar maar eens naar kijken
pi_68361102
Hoi,

vraagje, voor velen gesneden koek, ik klungel er nog wat mee.

Ik wil de broncode van een pagina inlezen. Alle HTML/javascript/etc. er uit gooien en alle woorden in een array zetten. Teneinde een zoekmachine te construeren.

Broncode inlezen en alle HTML verwijderen gaat nog wel. fgetss() is erg handig (strip_tags achtige functie) Hiermee wordt alles tussen <...> verwijderd. Echter Javascript tussen niet tussen <...> maar tussen <script>JAVASCRIPT</script>. Oftewel alles tussen die tags wordt meegenomen. In dit geval het woord JAVASCRIPT
Kan dat nou niet anders?

Ik wil alles tussen "<script" en "</script>" verwijderen.

Probleem is concreet: hoe zit dat ook al weer met die resource handler $handle? Hoe kan ik in onder staand stukje code de file inlezen, de java strippen en dan woord voor woord verder scannen? Nu wordt met fgetss() het bestand regel voor regel doorlopen, de $filehandler. Ik wil eigenlijk de string doorlopen. Toch???
Het komt er op neer dat ik eerst de tekst moet opschonen van alles wat ik niet wil hebben om als allerlaatste pas de content als losse woorden in een array te stoppen.

Iets doe ik nu niet handig. Maar hoe kan ik het wel handig doen? Iemand goede aanwijzingen?

Het volgende stukje code heb ik.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
error_reporting (E_ALL);
// vars aanmaken
$word_array=array();
$words='';
// ongewenste leestekens
$char_arr=array(":",
                ";",
                "?",
                ",",
                "(",
                ")",
                ".",
                "'",
                "\"");
// bestand aanroepen
$handle = fopen("http://www.mijndomein.nl/index.php", "r");
if($handle)
 {
  // Hier ergens moet alles tussen "<script" en "</script> verwijderd worden
  //[....]

  // bestand regel voor regel, woord voor woord inlezen
  while (!feof($handle))
   {
    $buffer = fgetss($handle, 4096);
    // leestekens verwijderen
    $words.=str_replace($char_arr," ",$buffer);
   }
  fclose($handle);
 }
// spaties verwijderen
$words=trim($words);
// string converteren naar array met woorden
$word_array=explode(" ", $words);
// lege keys of keys met spaties verwijderen
foreach($word_array as $key => $value)
 {
  $value=trim($value);
  if($value == "" OR strlen($value) < 4)
   {
    unset($word_array[$key]);
   }
 }
//output
print_r($word_array);
?>


P.S.: het verwijderen van de blokken java is een bewerking die uitgevoerd moet worden. In een later stadium wil ik ook o.a. eerst de metatags uitlezen alvorens ik die weggooi met fgetss(). Wellicht kom ik nog meer van dit soort zaken tegen. Als ik maar weet hoe dit gaat, op welk moment ik met die $handle etc. omga.

[ Bericht 0% gewijzigd door beerten op 25-04-2009 10:32:46 ]
pi_68361655
Even logisch nadenken over wat er moet gebeuren:
  • Bestand/pagina lezen
  • Script blokken verwijderen
  • HTML strippen
  • Woordenlijst opbouwen

    En dat dan gebruiken om nette code te schrijven.
  • Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_68361906
    quote:
    Op zaterdag 25 april 2009 10:54 schreef SuperRembo het volgende:
    Even logisch nadenken over wat er moet gebeuren:
  • Bestand/pagina lezen
  • Script blokken verwijderen
  • HTML strippen
  • Woordenlijst opbouwen

    En dat dan gebruiken om nette code te schrijven.
  • Thnx, ik snap wat je bedoelt. Ik zat vast met fgetss()
    file_get_contents() is veel makkelijker in dit geval.

    Je noemt nette code. Is mijn code in jouw ogen niet net? Inspringen doe ik inderdaad anders dan de ongeschreven regels voorschrijven. Ik sta open voor suggesties. Het is echter een notatie die ik altijd en consequent gebruik.

    Onderstaand mijn oplossing. Voor zover ik nu getest heb werkende. Pas als ik het in een crawler inbouw komen alle bugs boven.
    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
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    <?php
    error_reporting (E_ALL);
    $char_arr=array(":",
                    ";",
                    "?",
                    ",",
                    "(",
                    ")",
                    ".",
                    "'",
                    "\"",
                    "[",
                    "]",
                    "-",
                    "_",
                    "?",
                    "!",
                    "+",
                    "=",
                    "&",
                    "#",
                    "$",
                    "%",
                    "^",
                    "*",
                    "~");
    $word_array=array();
    $words='';
    $filename="http://www.mijndomein.nl/index.php";
    $words=file_get_contents($filename);

    //Alle woorden in lowercase weergeven
    $words=strtolower($words);

    // Metatags uitlezen
    $tags = get_meta_tags($filename);
    echo 'Author = '.$tags['author'].'<br>';
    echo 'keywords = '.$tags['keywords'].'<br>';
    echo 'Description = '.$tags['description'].'<br>';
    echo 'Robots = '.$tags['robots'].'<br>';

    $index_tag=explode(",",$tags['robots']);
    print_r($index_tag);
    print '<br>';
    if(in_array("index",$index_tag))
     {
      print 'Ja, "index" is toegestaan<br>';
     }
    else
     {
      print 'Indexeren niet toegestaan<br>';
     }
    if(in_array("follow",$index_tag))
     {
      print 'Ja, "follow" is toegestaan<br>';
     }
    else
     {
      print 'Links volgen niet toegestaan<br>';
     }
    function get($a,$b,$c)
     { // Gets a string between 2 strings
      $y = explode($b,$a);
      $x = explode($c,$y[1]);
      return $x[0];
     }
    echo 'titel = '.get($words, "<title>", "</title").'<br>';

    // <h1>Titel</h1><p>Inhoud</p> levert de twee woorden
    // op aan elkaar TitelInhoud Deze moeten gescheiden worden.
    // In eerste instantie worden alle "</" vervangen door een "."
    // Dit scheidt de woorden en de "." wordt later weer verwijderd.
    $words=str_replace("</",".</",$words);

    // Verwijderen van blokken code
    $pattern[0] = "/<script\b[^>]*>(.*?)<\/script>/i";
    $pattern[1] = "/<style\b[^>]*>(.*?)<\/style>/i";
    // Blokken code vervangen door
    $replace = " ";
    // De blokken code verwijderen
    $words = preg_replace($pattern, $replace, $words);

    // Alle HTML-tags er uit halen
    $words=strip_tags($words);

    // Onnodige spaties verwijderen
    $words=trim($words);

    // Alle ongewenste (lees)tekens verwijderen
    // Aandachtspuntje: in de HTML borncode staan alle speciale
    // tekens zoals "&',<",">" als htmlentities gecodeerd.
    // Ook die moeten er uit. Dit kan door alle gecodeerde
    // tekens te decoderen naar het oorspronkelijke karakter
    // Alle leestekens decoderen
    $words=html_entity_decode($words);
    // Alle speciale leestekens verwijderen
    $words=str_replace($char_arr," ",$words);

    // Alle losse worden in een array stoppen
    // Lege waarden en woorden met minder dan 4 tekens verwijderen
    $word_array=explode(" ", $words);
    foreach($word_array as $key => $value)
     {
      $value=trim($value);
      if($value == "" OR strlen($value) < 4)
       {
        unset($word_array[$key]);
       }
     }

    // Output naar scherm
    asort($word_array);
    foreach($word_array as $key => $value)
     {
      print $key .' = '.$value.'</br />';
     }
    ?>


    Edit: voor de geinteresseerden en de zoekfunctie gecompleteerd met metatags en titel, robots index/follow opzetje.
    Voldoende als basis om zelf mee te knutselen.

    [ Bericht 46% gewijzigd door beerten op 25-04-2009 19:40:13 ]
    pi_68365886
    quote:
    Op vrijdag 24 april 2009 13:52 schreef ursel het volgende:
    Ik heb wel ooit eens ergens een postcode database gekregen. Maar volgens mij was die echt gigantische groot, en voor mijn gratis hosting ging dat nou ook weer niet echt samen..
    Ik heb m ook nog, 12 megabytes is ie.. en in dit formaat:
    1
    2
    3
    4
    1011AA 487930.970 122233.208
    1011AB 487895.710 122264.842

    ...


    432.144 postcodetjes
      zaterdag 25 april 2009 @ 22:39:44 #121
    62215 qu63
    ..de tijd drinkt..
    pi_68378939
    quote:
    Op zaterdag 25 april 2009 14:16 schreef Thomass het volgende:

    [..]

    Ik heb m ook nog, 12 megabytes is ie.. en in dit formaat:
    [ code verwijderd ]

    432.144 postcodetjes
    postcode + lat/lon?
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_68379019
    Kan je die postcode database ergens ter download aanbieden?
    hoe volledig is die denk je?
    pi_68384349
    quote:
    Op zaterdag 25 april 2009 22:42 schreef Xcalibur het volgende:
    Kan je die postcode database ergens ter download aanbieden?
    hoe volledig is die denk je?
    Ik hou me ook aanbevolen
    Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
    Dwight K. Schrute: Impossible to say. I can't see myself.
      FOK!-Schrikkelbaas zondag 26 april 2009 @ 08:59:24 #124
    1972 Swetsenegger
    Egocentrische Narcist
    pi_68384385
    Ik zoek eigenlijk meer een postcode/adres relatie DB.
      zondag 26 april 2009 @ 09:07:36 #125
    198417 Lastpost
    Rotterdammert!
    pi_68384445
    Ook hier maar even een tvp, vanuit het niets (qua kennis) begonnen met het opbouwen van een site-idee dat in m'n hoofd zat en ik zal vast nog wel wat vragen hebben als dummie zijnde.
    pi_68385173
    quote:
    Op zondag 26 april 2009 08:59 schreef Swetsenegger het volgende:
    Ik zoek eigenlijk meer een postcode/adres relatie DB.
    Die zijn er eigenlijk niet. Er is de officiële van TNT, die je voor héél veel euro's mag kopen.
    quote:
    Een licentie voor de postcode database is verkrijgbaar vanaf ¤ 2.730,- voor de initiële aanschaf en ¤ 1.350,- per jaar voor de wekelijkse mutaties.

    http://www.postcode.nl/in(...)e-van-nederland.html
    En de volgende open-source variant die gratis is:
    quote:
    Op vrijdag 24 april 2009 13:59 schreef qu63 het volgende:

    [..]

    Dit werkt ook: http://kvdb.net/projects/6pp/
    pi_68388445
    quote:
    Op zaterdag 25 april 2009 22:42 schreef Xcalibur het volgende:
    Kan je die postcode database ergens ter download aanbieden?
    hoe volledig is die denk je?
    quote:
    Op zondag 26 april 2009 08:50 schreef DaFrenk het volgende:

    [..]

    Ik hou me ook aanbevolen
    Alstublieft, ik weet er verder heel weinig over. Ik kwam m ooit tegen op t web en heb het opgeslagen, dus als jullie kunnen uitvinden wát die coordinaten in godsnaam zijn (latitude & longitude / rijksdriehoekscoordinaten / ...) laat het hier even weten

    http://rapidshare.com/files/225899148/postcodes.rar.html
      zondag 26 april 2009 @ 13:19:22 #128
    62215 qu63
    ..de tijd drinkt..
    pi_68389055
    quote:
    Op zondag 26 april 2009 08:59 schreef Swetsenegger het volgende:
    Ik zoek eigenlijk meer een postcode/adres relatie DB.
    Je zou met behulp van Google(Maps) wel de adressen kunnen krijgen die bij bepaalde postcodes/coördinaten horen
    It's Time To Shine
    [i]What would life be like without rhethorical questions?[/i]
    pi_68389145
    quote:
    Op zondag 26 april 2009 08:59 schreef Swetsenegger het volgende:
    Ik zoek eigenlijk meer een postcode/adres relatie DB.
    Als je een cd foongids hebt.. http://www.foondump.nl/

    pi_68392954
    quote:
    Op zondag 26 april 2009 12:55 schreef Thomass het volgende:

    [..]


    [..]

    Alstublieft, ik weet er verder heel weinig over. Ik kwam m ooit tegen op t web en heb het opgeslagen, dus als jullie kunnen uitvinden wát die coordinaten in godsnaam zijn (latitude & longitude / rijksdriehoekscoordinaten / ...) laat het hier even weten

    http://rapidshare.com/files/225899148/postcodes.rar.html
    Thanks!

    Hm, goede vraag. Kan ze niet echt herleiden naar lat/long, dus wat het dan is?
    Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
    Dwight K. Schrute: Impossible to say. I can't see myself.
    pi_68398286
    ik zat me iets af te vragen
    ik heb een array

    $lev_nr[];
    en daar zitten 2,1,2,2,2,2,1,1,1,1 in
    en nu wou ik in die array zo hebben dat hij hem afgaat zoveel keer als er verschillende getallen in zitten.
    dus ik dacht.

    wacht ik ga hier even over nadenken

    [ Bericht 17% gewijzigd door cablegunmaster op 26-04-2009 17:47:30 ]
    Redacted
    pi_68399143
    quote:
    Op zondag 26 april 2009 17:40 schreef cablegunmaster het volgende:
    ik zat me iets af te vragen
    ik heb een array

    $lev_nr[];
    en daar zitten 2,1,2,2,2,2,1,1,1,1 in
    en nu wou ik in die array zo hebben dat hij hem afgaat zoveel keer als er verschillende getallen in zitten.
    dus ik dacht.

    wacht ik ga hier even over nadenken
    Hoe vaak moet moet er dan wat gebeuren bij die cijfers die je noemde?
    pi_68399691
    quote:
    Op zondag 26 april 2009 17:40 schreef cablegunmaster het volgende:
    ik zat me iets af te vragen
    ik heb een array

    $lev_nr[];
    en daar zitten 2,1,2,2,2,2,1,1,1,1 in
    en nu wou ik in die array zo hebben dat hij hem afgaat zoveel keer als er verschillende getallen in zitten.
    dus ik dacht.

    wacht ik ga hier even over nadenken :P :D
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $count 
    count($lev_nr);

    for (
    $i 0$i $count$i++) {
      for (
    $j 0$j $count$j++) {
        
    // iets doen met $lev_nr[$j]
      
    }
    }
    ?>


    Nu loop je de array net zo vaak helemaal af als dat er elementen in de array zitten. Als er 10 elementen in je array zitten wordt elk element dus 10x bezocht.
    pi_68401178
    quote:
    Op zondag 26 april 2009 18:39 schreef HuHu het volgende:

    [..]
    [ code verwijderd ]

    Nu loop je de array net zo vaak helemaal af als dat er elementen in de array zitten. Als er 10 elementen in je array zitten wordt elk element dus 10x bezocht.
    nee maar daarom zeg ik ook even wacht, bedankt voor het meedenken, maar het punt is.
    Als ik 3,4,6 in mn array heb. en dat een paar keer dus 4,3,4,6,3,3,3
    dan wil ik een lijstje krijgen van
    3: 4x
    4: 2x
    6: 1 keer

    de keren hoef ik niet te hebben maar de methodiek dat hij erlangs gaat als het dit getal is in de array is doe een query. maar het getal kan verschillend zijn met een variabele.

    het idee was

    1 voor elke leverancier maakt hij een order aan. als die gevonden word in de array
    2 voor elke leverancier zijn meerdere producten. dus een andere tabel

    dus je hebt een array ( 2,1,21,2,1,2,1)
    en die stelt dus leveranciers nummers voor, omdat er meer zijn stelt het ook het lijstje voor.
    ( andere array is product_nr) en aantal.

    alleen nou moest hij voor elk nieuw leverancier nummer een query maken.
    en de bijhorende producten opzoeken. ( dit via zelfde array stande dus $k bvb)
    Redacted
      zondag 26 april 2009 @ 19:32:59 #135
    75592 GlowMouse
    l'état, c'est moi
    pi_68401283
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68401514
    quote:
    Hartelijk bedankt ik zal hier mee verder gaan
    met dank aan glowmouse:

    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
    <?php
    if(!empty($_POST))
        {
            include(
    "content/connect.php");
            
    $tijd date("Y-m-d");
            
    $gewtijd mktime(000date(("m")), date("d"),   date("Y"));
            
    /*
            Voor elke leverancier (die in de array zit)producten controleren op uniekheid.
            Elke leverancier een eigen inkooporder aanmaken
            Per inkooporder de $_POST leverancier array afgaan om te kijken of hij gelijk is met de leverancier uit de unieke array
            alszo, doe een query. en pak de gegevens eruit.
            */
            
    $result array_unique($_POST['leverancier']);
            
    $i count($_POST['leverancier']);
            
    $j count($result);
            
    $k 0;
            
    $l 0;
            
            echo 
    "<br/>".var_dump($result);
            while(
    $k $j)
            {
                
    $sql1 ="INSERT INTO inkooporder (lev_nr,besteldatum,gewdatum,status) VALUES ('".$result[$k]."','".$tijd."','".$gewtijd."','wachtend')";
                
    mysql_query($sql1) or(die());;
                while(
    $l $i)
                {
                if(
    $result[$k] == $_POST['leverancier'][$l])
                    {
                    echo 
    $_POST['leverancier'][$l];
                    echo 
    $_POST['artikel_nr'][$l]."<br/>";
                    
    $sql2 ="SELECT io_nr FROM inkooporder ORDER BY io_nr DESC limit 0,1";
                    
    $test mysql_query($sql2) or( die());
                    
    $inkooporder mysql_fetch_assoc($test);
                    
    $sql3 ="INSERT INTO inkooporderregel(io_nr,art_nr,besteld,geleverd,inkoopprijs) 
                    VALUES ('"
    .$inkooporder['io_nr']."','".$_POST['artikel_nr'][$l]."','".$_POST['besteld'][$l]."','0','".$_POST['prijs'][$l]."')";
                    
    $sql4 "UPDATE artikel SET voorinkopen = voorinkopen + ".$_POST['besteld'][$l]." WHERE art_nr = '".$_POST['artikel_nr'][$l]."'";
                    
    mysql_query($sql3) or(die());;
                    
    mysql_query($sql4) or(die());;
                    }
                    
    $l++;
                }
                
    $l 0;
                
    $k++;
            }
    ?>

    mocht het iemand helpen

    en ja het kan vast beter

    1 vraagje over de gewenste datum hoe kan ik die instellen dat hij + 3 dagen is ?

    [ Bericht 14% gewijzigd door cablegunmaster op 27-04-2009 12:37:03 ]
    Redacted
    pi_68421296
    quote:
    Op zaterdag 25 april 2009 11:07 schreef beerten het volgende:
    [..]
    Je noemt nette code. Is mijn code in jouw ogen niet net?
    Bij nette code zie je in een oogopslag de globale structuur. Onderdelen als instellingen, logica en uitvoer zo veel mogelijk gescheiden.
    Bij jou is het een grote lap code waar vanalles in gebeurd. Om te begrijpen wat er gebeurd moet je alles doorlezen. Ergens halverwege staat een functie met de naam "get". Wel netjes dat er commentaar bij staat, al is 't soms wat overbodig, of zou 't overbodig zijn als de indeling logischer was.

    Is de lengte van een lege string niet ook minder dan 4?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_68422273
    1
    2
    3
    4
    5
    <?php
    $date 
    strtotime("+1 day");    
    $date date('Y-m-d H-i-s'$date);
    echo 
    "datum morgen = ".$date;
    ?>


    dit kan netter maar het idee is eral
    Redacted
      maandag 27 april 2009 @ 14:34:51 #139
    187069 slacker_nl
    Sicko pur sang
    pi_68423055
    1
    2
    3
    <?php
    echo "Datum morgen: " date('Y-m-d H-i-s'time() + 3600 24);
    ?>


    done.
    In theory there is no difference between theory and practice. In practice there is.
    pi_68423350
    quote:
    Op maandag 27 april 2009 14:34 schreef slacker_nl het volgende:

    [ code verwijderd ]

    done.
    het idee hiervan vind ik weer wat onhandig.
    1
    2
    3
    4
    5
    6
    <?php
    function dagenErbij($p)
    {
    return 
    $datum date('Y-m-d H-i-s'time() + 3600 24$P);
    }
    ?>

    zoiets ?
    Redacted
    pi_68423404
    * Intrepidity is sinds vanochtend Zend certified engineer
    pi_68423839
    nog 1 vraagje die auto teller... hoe kan je die resetten ? in de mysql database dat hij weer teruggaat en snapt dat hij de volgende moet pakken ipv doortellen?
    1
    2
    77
    78
    doet hij nu
    Redacted
      maandag 27 april 2009 @ 15:02:30 #143
    75592 GlowMouse
    l'état, c'est moi
    pi_68424104
    quote:
    Op maandag 27 april 2009 14:55 schreef cablegunmaster het volgende:
    nog 1 vraagje die auto teller... hoe kan je die resetten ? in de mysql database dat hij weer teruggaat en snapt dat hij de volgende moet pakken ipv doortellen?
    1
    2
    77
    78
    doet hij nu
    Wil je dit wel? Leesvoer: http://gathering.tweakers.net/forum/list_messages/1318997/
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68425515
    quote:
    Op maandag 27 april 2009 15:02 schreef GlowMouse het volgende:

    [..]

    Wil je dit wel? Leesvoer: http://gathering.tweakers.net/forum/list_messages/1318997/
    opzich heb je gelijk het was maar een idee
    want nu kun je ongv 66 records niet gebruiken, maar er zijn nog miljarden over .
    Redacted
      maandag 27 april 2009 @ 16:51:21 #145
    187069 slacker_nl
    Sicko pur sang
    pi_68428292
    quote:
    Op maandag 27 april 2009 14:42 schreef cablegunmaster het volgende:

    [..]

    het idee hiervan vind ik weer wat onhandig.
    [ code verwijderd ]

    zoiets :P ?
    Hoezo onhandig? Je ziet zelf hoe makkelijk je het hebt weten aan te passen.. ;)

    1
    2
    3
    4
    5
    <?php
    function dagenErbij($p 1) {
        return 
    date('Y-m-d H-i-s'time() + 3600 24$p);
    }
    ?>


    Zou gewoon dit doen, die $datum heb je niet nodig in dat code block.
    In theory there is no difference between theory and practice. In practice there is.
      maandag 27 april 2009 @ 17:06:36 #146
    75592 GlowMouse
    l'état, c'est moi
    pi_68428802
    Wat gebeurt er met die code als het net de volgende dag wintertijd wordt? Mktime is hiervoor de enige betrouwbare functie.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68429181
    quote:
    Op maandag 27 april 2009 17:06 schreef GlowMouse het volgende:
    Wat gebeurt er met die code als het net de volgende dag wintertijd wordt? Mktime is hiervoor de enige betrouwbare functie.
    hoe zou je dat in het voorbeeld toepassen ?
    Redacted
      maandag 27 april 2009 @ 17:24:12 #148
    75592 GlowMouse
    l'état, c'est moi
    pi_68429366
    Tweede argument van date wordt mktime(0,0,0,date('n'), date('j')+$p, date('Y'));
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68431487
    quote:
    Op maandag 27 april 2009 14:44 schreef Intrepidity het volgende:
    * Intrepidity is sinds vanochtend Zend certified engineer
    Feli
    pi_68433043
    quote:
    Op maandag 27 april 2009 13:44 schreef SuperRembo het volgende:

    [..]

    Bij nette code zie je in een oogopslag de globale structuur. Onderdelen als instellingen, logica en uitvoer zo veel mogelijk gescheiden.
    Bij jou is het een grote lap code waar vanalles in gebeurd. Om te begrijpen wat er gebeurd moet je alles doorlezen. Ergens halverwege staat een functie met de naam "get". Wel netjes dat er commentaar bij staat, al is 't soms wat overbodig, of zou 't overbodig zijn als de indeling logischer was.

    Is de lengte van een lege string niet ook minder dan 4?
    Voor dit stuk code heb je inderdaad gelijk. Het ontbreekt aan overzicht. Het is echter een eigen manier van inspringen/layout. De logica is er wel degelijk. Maar nog niet in dit stuk. Klopt helemaal.
    pi_68434846
    Hoi,

    vraaje, ik zie het niet. Helaas.

    Ik wil graag iets uitvoeren op het moment dat een string aanwezig is in een array. in_array() is de functie.
    Echter, het werkt niet. Ik krijg er het heen en weer van.

    Het idee is: scan de gehele root op files en directorys.
    Komt een array-value voor in een array met verboden links/files (robots.txt) dan actie niet uitvoeren.

    Zie onderstaande functie. Scan pad ($_SERVER['DOCUMENT_ROOT])
    Als is bestand: kijk of bestandsnaam niet in de robots.txt-array $omit staat. Zo niet, opnemen in array

    Is directory en niet in robots.txt-array $omit, dan scannen. Functie recursief aanroepen. Als de hoofdmap niet toegankelijk is, worden alle onderliggende mappen niet gescand. (toch???)
    En precies dit werkt niet.
    Ik heb de strings gecontroleerd, de array-values. En die komen overeen. En toch wordt de boel uitgevoerd, ondanks dat het geblokkeerd zou moeten zijn.

    Ziet iemand wat ik fout doe?
    Het gaat om
    1
    2
    3
    4
              if(sizeof($omit) == 0 || !!in_array($main_dir,$omit))
               {
                list_folder($path.'/'.$file);
               }


    De code/functie
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <?php
    function list_folder($path)
     {
      global $omit;
      global $file_arr;
      if($handle=opendir($path))
       {
        while(false!==($file=readdir($handle)))
         {
          if ($file<>"." AND $file<>"..")
           {
            $pos=strlen($_SERVER['DOCUMENT_ROOT']);
            $path_to_search=substr($path.'/'.$file,$pos);
            if(is_file($path.'/'.$file))
             {
              if(sizeof($omit) == 0 || !!in_array($path_to_search,$omit))
               {
                $file_arr[]=$path.'/'.$file;
               }
             }
            if(is_dir($path.'/'.$file))
             {
              // De hoofddirectory extraheren
              $path_to_search=$path_to_search.'/';
              $pos=strpos(substr($path_to_search,1),'/')+1;
              $main_dir=substr($path_to_search,0,$pos);
              if(sizeof($omit) == 0 || !!in_array($main_dir,$omit))
               {
                list_folder($path.'/'.$file);
               }
             }
           }
         }
       }
     return $file_arr;
     }?>


    [ Bericht 6% gewijzigd door beerten op 27-04-2009 20:25:33 ]
      maandag 27 april 2009 @ 20:20:23 #152
    85514 ralfie
    !Yvan eht nioj
    pi_68435003
    !! = niet niet ?
      maandag 27 april 2009 @ 20:20:49 #153
    75592 GlowMouse
    l'état, c'est moi
    pi_68435020
    Eenvoudig debugwerk:
    1
    2
    3
    4
    <?php
    echo ">>{$omit}<< zit niet in";
    print_r($main_dir);
    ?>
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68435399
    quote:
    Op maandag 27 april 2009 20:20 schreef GlowMouse het volgende:
    Eenvoudig debugwerk:
    [ code verwijderd ]
    ??? hmmm, huh?

    Ik volg je even niet. $omit is een array met de "verboden" paden uit robots.yyxy
    $main_dir is de (hoofd)directory van het pad.

    zover ik geïnformeerd ben is het in_array($needle[string], haystack[array])
    http://nl2.php.net/manual/en/function.in-array.php

    De eerste keer werkt het wel, met de bestanden. Het gaat mis bij de directory's
      maandag 27 april 2009 @ 20:33:07 #155
    75592 GlowMouse
    l'état, c'est moi
    pi_68435604
    Oh, dan omgekeerd. Het blijft gokken met PHP. Maar het idee is duidelijk hoe je zoekt waar de fout zit.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68435731
    quote:
    Op maandag 27 april 2009 20:33 schreef GlowMouse het volgende:
    Oh, dan omgekeerd. Het blijft gokken met PHP. Maar het idee is duidelijk hoe je zoekt waar de fout zit.
    Ok. Ik zie het echt ff niet. Het vervelende is dat je op zo'n moment rond blijft malen in bekende cirkels/gedachtendingetjes. Waar je niet uitkomt...
      maandag 27 april 2009 @ 20:38:03 #157
    75592 GlowMouse
    l'état, c'est moi
    pi_68435817
    1
    2
    3
    4
    5
    6
    <?php
              
    if(sizeof($omit) == || !!in_array($main_dir,$omit))
               {
                
    $file_arr[]=$path.'/'.$file;
               }
    ?>

    wordt
    1
    2
    3
    4
    5
    6
    <?php
              
    if(sizeof($omit) == || !in_array($main_dir,$omit))
               {
                
    $file_arr[]=$path.'/'.$file;
               } else { echo 
    ">>{$main_dir}<< zit niet in"print_r($omit); }
    ?>
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68437290
    Misschien beetje gekke vraag...

    wat gebeurd er hier precies???
    [code]
    if(sizeof($omit) == 0 || in_array('$main_dir, $omit))
    {...}

    Ik ben onbekend met deze notatie. Het werkt uitstekend om een bug weg te werken in de in_array() functie.
    Maar wat het doet???
    pi_68437598
    het is een simpele OR
    als de size 0 is, of als hij in_array zit, dan is hij true dus.
    pi_68437922
    quote:
    Op maandag 27 april 2009 21:17 schreef Xcalibur het volgende:
    het is een simpele OR
    als de size 0 is, of als hij in_array zit, dan is hij true dus.
    Het gekke is dat zonder die check op 0 de boel een error geeft Wrong datatype. Ik kan nergens een goede oplossing/uitleg vonden.
    Het enig concrete dat ik tegenkom is op www.php.net/in-array

    Ik weet dat de array bestaat en alle keys hebben values/ Het ding is dus niet leeg. Het bestaat. Dus die check zou overbodig moeten zijn.

    Of zie ik het nu niet???

    Ik wil dat wanneer een item NIET voorkomt in de array, de boel wordt uitgevoerd.
    if(!in_array($main_dir, $omit))
    {
    ...
    }

    Maar als ik dit zo ingeef komt het met een Warning.

    Tekst van www.php.net
    quote:
    Sometimes, you might want to search values in array, that does not exist. In this case php will display nasty warning:
    Wrong datatype for second argument in call to in_array() .

    In this case, add a simple statement before the in_array function:

    if (sizeof($arr_to_searchin) == 0 || !in_array($value, $arr_to_searchin)) { ... }

    In this case, the 1st statement will return true, omitting the 2nd one.
    De fout is volgens mij zo simpel dat ik niet scheel genoeg kan kijken om het te zien. Zo dicht bij...
    pi_68438360
    quote:
    Op maandag 27 april 2009 21:25 schreef beerten het volgende:

    Ik wil dat wanneer een item NIET voorkomt in de array, de boel wordt uitgevoerd.
    if(!in_array($main_dir, $omit))
    {
    ...
    }

    Maar als ik dit zo ingeef komt het met een Warning.
    Welke warning?
    pi_68439485
    quote:
    Op maandag 27 april 2009 21:34 schreef Light het volgende:

    [..]

    Welke warning?
    Warning: in_array() [function.in-array]: Wrong datatype for second argument in pad/naar/bestand.php on line xx

    Ik heb gegoogled maar zonder enig zinnig resultaat.
    pi_68439878
    quote:
    Op maandag 27 april 2009 21:57 schreef beerten het volgende:

    [..]

    Warning: in_array() [function.in-array]: Wrong datatype for second argument in pad/naar/bestand.php on line xx

    Ik heb gegoogled maar zonder enig zinnig resultaat.
    Dan zou het tweede argument dus geen array zijn. Ook geen tikfoutjes gemaakt in de variabelenaam?
    pi_68441304
    1
    2
    3
    4
    5
    6
    <?php
    error_reporting
    (E_ALL);
    $a = array();
    $b 'needle';
    var_dump(in_array($b$a));
    ?>


    Dit levert netjes bool false op, zonder warnings of notices. Als $a geen array is dan krijg ik wel de warning "Wrong datatype for second argument"
      dinsdag 28 april 2009 @ 06:38:37 #165
    187069 slacker_nl
    Sicko pur sang
    pi_68448258
    quote:
    Op maandag 27 april 2009 17:06 schreef GlowMouse het volgende:
    Wat gebeurt er met die code als het net de volgende dag wintertijd wordt? Mktime is hiervoor de enige betrouwbare functie.
    Note: As of PHP 5.1.0, this parameter became deprecated. As a result, the new timezone handling features should be used instead.

    Denk dat het dus geen enkele drol uitmaakt.
    In theory there is no difference between theory and practice. In practice there is.
    pi_68448318
    quote:
    Op dinsdag 28 april 2009 06:38 schreef slacker_nl het volgende:

    [..]

    Note: As of PHP 5.1.0, this parameter became deprecated. As a result, the new timezone handling features should be used instead.

    Denk dat het dus geen enkele drol uitmaakt.
    De parameter is_dst is depricated. Maar die had je toch al niet nodig, want de standaardwaarde was -1. En GlowMouse gebruikte die parameter ook niet.

    Tussen 12:00 op 28 maart 2009 en 12:00 op 29 maart 2009 zit precies 23 uur door het ingaan van de zomertijd. Als je 3600 * 24 doet, kom je daar niet op.
      dinsdag 28 april 2009 @ 07:19:37 #167
    187069 slacker_nl
    Sicko pur sang
    pi_68448388
    time() geeft een unixtime stamp terug die UTC is, dus geen rekening houd met DST (oftewel winter/zomertijd). Heb het niet getest hoor, maar zet de timestamps van 28/29 maart eens in time2str (of hoe die functie ook heet in php) en kijk wat eruit komt...

    Overigens ben ik voor het afschaffen van dat hele zomertijd/wintertijd gebeuren, maar dat heeft verder te maken met wakker worden enzo
    In theory there is no difference between theory and practice. In practice there is.
      dinsdag 28 april 2009 @ 10:49:23 #168
    75592 GlowMouse
    l'état, c'est moi
    pi_68451993
    1
    2
    3
    4
    <?php
    $t 
    strtotime('march 28 2009 23:59');
    echo 
    date('m-d-Y H:i'$t) . "\r\n" date('m-d-Y H:i'$t+24*3600);
    ?>

    1
    2
    03-28-2009 23:59
    03-30-2009 00:59
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68452040
    Ik heb zelf een uploadscript voor foto's gemaakt. Ik heb hier gebruik gemaakt van url_rewrite en dat is opzich allemaal wel gelukt. Het probleem echter is dat het weergeven van een afbeelding niet echt fijn loopt. Zelf heb ik het gevoel dat ik via een grote omweg de plaatjes af laat drukken. Een voorbeeld mijn pagina::



    duidelijk is te zien dat de afbeelding elke keer geladen wordt van de server. Dit valt mij, met ongeveer dezelfde grote afbeeldingen, niet op bij andere hostingpagina's.

    voorbeeld zelfde plaatje maar dan andere hosting:



    Ook krijg ik een gisteren een internal php error. Ik heb het gevoel dat ik de pagina niet netjes heb opgebouwd en, na veel aanvragen, hierdoor een error geeft.

    PHP code die ik gebruik is:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    // Content type
    header('Content-type: image/jpeg');

    // Get new dimensions
    list($width_orig$height_orig) = getimagesize($filename);

    // Resample
    $image_p imagecreatetruecolor($width_orig$height_orig);
    $image imagecreatefromjpeg($filename);
    imagecopy($image_p$image0000$width_orig$height_orig);

    // Output
    imagejpeg($image_pnull100);
    ?>


    wat ik hier eigenlijk doe is dat ik de echt url pak ($filename) en deze met gd library omzet naar een url die ik kan gebruiken voor bijvoorbeeld fok (http://www.sharestuff.nl/img/psjwmlsp/afbeelding_test.JPG). De afbeelding staat namelijk niet echt op http://www.sharestuff.nl/img/psjwmlsp/afbeelding_test.JPG
    Dit keer zonder signature
      dinsdag 28 april 2009 @ 16:43:04 #170
    187069 slacker_nl
    Sicko pur sang
    pi_68465055
    quote:
    Op dinsdag 28 april 2009 10:49 schreef GlowMouse het volgende:

    [ code verwijderd ]


    [ code verwijderd ]
    Dat is afhankelijk van je timezone settings:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    function time_me($TZ "Europe/Amsterdam"$t 'march 28 2009 23:59') {
        
    date_default_timezone_set($TZ) . "\n";
        print 
    date_default_timezone_get() . "\n";
        
    $t strtotime('march 28 2009 23:59');

        echo 
    date('m-d-Y H:i'$t) . "\n";
        echo 
    date('m-d-Y H:i'$t+24*3600) . "\n";
    }

    time_me();
    time_me("UTC");
    ?>


    1
    2
    3
    4
    5
    6
    7
    php time.php
    Europe/Amsterdam
    03-28-2009 23:59
    03-30-2009 00:59
    UTC
    03-28-2009 23:59
    03-29-2009 23:59
    In theory there is no difference between theory and practice. In practice there is.
      dinsdag 28 april 2009 @ 16:53:03 #171
    75592 GlowMouse
    l'état, c'est moi
    pi_68465493
    quote:
    Op dinsdag 28 april 2009 16:43 schreef slacker_nl het volgende:

    [..]

    Dat is afhankelijk van je timezone settings:
    Mktime niet. En omdat Europe/Amsterdam toch wel een veelgebruikte instelling is hier, zou ik de gok niet wagen en gewoon mktime gebruiken.

    Ericjuh: kijk eens naar caching headers. Ook de Content-Length-header ontbreekt bij jou. Waarom gebruik je ook geen readfile, maar maak je een hele nieuwe jpeg?
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      dinsdag 28 april 2009 @ 17:01:11 #172
    187069 slacker_nl
    Sicko pur sang
    pi_68465820
    quote:
    Op dinsdag 28 april 2009 16:53 schreef GlowMouse het volgende:

    [..]

    Mktime niet. En omdat Europe/Amsterdam toch wel een veelgebruikte instelling is hier, zou ik de gok niet wagen en gewoon mktime gebruiken.

    Ericjuh: kijk eens naar caching headers. Ook de Content-Length-header ontbreekt bij jou. Waarom gebruik je ook geen readfile, maar maak je een hele nieuwe jpeg?
    Voor zover ik de documentatie van mktime lees is deze ook afhankelijk van de timezone:

    Every call to a date/time function will generate a E_NOTICE if the time zone is not valid, and/or a E_STRICT message if using the system settings or the TZ environment variable. See also date_default_timezone_set()
    In theory there is no difference between theory and practice. In practice there is.
      dinsdag 28 april 2009 @ 17:07:26 #173
    75592 GlowMouse
    l'état, c'est moi
    pi_68466056
    quote:
    Op dinsdag 28 april 2009 17:01 schreef slacker_nl het volgende:

    [..]

    Voor zover ik de documentatie van mktime lees is deze ook afhankelijk van de timezone:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    function time_me($TZ "Europe/Amsterdam"$t 'march 28 2009 23:59') {
        
    date_default_timezone_set($TZ) . "\n";
        print 
    date_default_timezone_get() . "\n";
        
    $t strtotime($t);

        echo 
    date('m-d-Y H:i'$t) . "\n";
        echo 
    date('m-d-Y H:i'mktime(0,0,0,date('n'$t), date('j'$t)+1date('Y'$t)) ) . "\n";
    }

    time_me();
    time_me("UTC");
    ?>

    1
    2
    3
    4
    5
    6
    Europe/Amsterdam
    03-28-2009 23:59
    03-29-2009 00:00
    UTC
    03-28-2009 23:59
    03-29-2009 00:00

    Juist doordat je zelf de dag opgeeft, kan het niet foutgaan.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      dinsdag 28 april 2009 @ 18:35:11 #174
    87680 Mirel
    Mirel wil een bongophone.
    pi_68469177
    Ik heb een stukje tekst die er fout uitziet op http://pikler.nl/agenda/kinderopvang . Er zit teveel ruimte tussen. Ik kwam erachter dat het door de forward slash komt. (en mogelijk ook door de dubbele punt)

    1
    2
    3
    4
    5
    6
    7
    <p>
    3e Pikler Platformdag voor pedagogisch medewerkers
     en gastouders in de Kinderopvang op
    <i>vrijdag 9 oktober</i> in Utrecht. <br>
    Voor aanmelden en/of informatie mail naar Lucia de Jong: 
    <a href="mailto:bureauvooropvoeders@home.nl">bureauvooropvoeders@home.nl</a>
    </p>


    Ik heb de / proberen te veranderen naar maar de spaties komen nog steeds voor.
    Ook heb ik de : weggehaald voor de zekerheid en dan weer proberen te gebruiken. Maar ik heb nog steeds dat die tekst veel ruimte tussen de onderlinge woorden heeft.

    Dit alles zit in een php pagina die er zo uitziet, dus daarom heb ik het in dit topic gepost:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php

    $title = 'kinderopvang';
    $body =

    <<<HTML

     blablablablabla

    HTML;

    ?>


    [ Bericht 8% gewijzigd door Mirel op 28-04-2009 18:52:45 ]
    When all else fails, you always have delusion.
    pi_68469656
    quote:
    Op dinsdag 28 april 2009 18:35 schreef Mirel het volgende:
    Ik heb een stukje tekst die er fout uitziet op http://pikler.nl/agenda/kinderopvang. Er zit tevee lruimte tussen. Ik kwam erachter dat het door de forward slash komt. (en mogelijk ook door de dubbele punt)
    [ code verwijderd ]

    Ik heb de / proberen te veranderen naar [ afbeelding ] maar de spaties komen nog steeds voor.
    Ook heb ik de : weggehaald voor de zekerheid en dan weer [ afbeelding ] proberen te gebruiken. Maar ik heb nog steeds dat die tekst veel ruimte tussen de onderlinge woorden heeft.
    Misschien ligt het aan mij, maar ik zie niet wat er mis gaat. Heb je ook een screenshot om de fout te laten zien?
    quote:
    Dit alles zit in een php pagina die er zo uitziet, dus daarom heb ik het in dit topic gepost:
    [ code verwijderd ]
    Nouja, eigenlijk is het geen php-fout
    pi_68469855
    quote:
    Op dinsdag 28 april 2009 17:07 schreef GlowMouse het volgende:

    [..]
    [ code verwijderd ]


    [ code verwijderd ]

    Juist doordat je zelf de dag opgeeft, kan het niet foutgaan.
    Nouja, 1 minuut later is niet zo spannend, helemaal niet als je naar middernacht gaat.
      dinsdag 28 april 2009 @ 18:55:15 #177
    87680 Mirel
    Mirel wil een bongophone.
    pi_68469891
    Check of de link goed is. De punt ging mee in de URL, die moet je dus even weghalen: http://pikler.nl/agenda/kinderopvang
    When all else fails, you always have delusion.
    pi_68470035
    Da's geen PHP probleem, maar een CSS probleem. Waarschijnlijk heb je er een text-align:justify op staan, waardoor je dat krijgt.
      dinsdag 28 april 2009 @ 19:00:40 #179
    75592 GlowMouse
    l'état, c'est moi
    pi_68470052
    Dat is een CSS-probleem
    http://pikler.nl/src/pikler.css
    text-align:justify;
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      dinsdag 28 april 2009 @ 19:01:05 #180
    75592 GlowMouse
    l'état, c'est moi
    pi_68470068
    HoHo HuHu jij dacht hetzelfde, HaHa.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
      dinsdag 28 april 2009 @ 19:25:22 #181
    87680 Mirel
    Mirel wil een bongophone.
    pi_68471049
    HiHi
    When all else fails, you always have delusion.
      dinsdag 28 april 2009 @ 19:25:42 #182
    187069 slacker_nl
    Sicko pur sang
    pi_68471060
    quote:
    Op dinsdag 28 april 2009 17:07 schreef GlowMouse het volgende:

    [..]
    [ code verwijderd ]


    [ code verwijderd ]

    Juist doordat je zelf de dag opgeeft, kan het niet foutgaan.
    Het gaat fout, aangezien je rekening wilt houden met DST, UTC kent dat probleem niet, als je werkt met UTC kan je daarna de dag omzetten naar je lokale tijd. Hoef je helemaal geen rekening te houden met DST.

    Een cronjob die elke dag om 12 uur draait zal door DST ook een dag kennen van 23 of 25 uur. Dat jij nu gelijke data krijgt is dus gewoon niet goed. die datum is verschillend in UTC en in CET, in het bovenstaande geval klopt het dus gewoon niet.
    In theory there is no difference between theory and practice. In practice there is.
    pi_68471914
    Ik ga het maar eens anders doen...


    Ik heb 2 arrays.
    1
    2
    3
    <?php
    $a=array('/file.php','index.php',/css/style.css')
    $b=array('file.php','/css/')


    Array $a is een array met alle files op mijn server
    Array b is de array van verboden bestanden uit robots.txt

    Nu wil ik graag dat alle bestanden/paden die in robots.txt voorkomen uit de array met bestanden worden gehaald.
    Als ik deroot-dir scan wil ik dat bestanden/paden die in de verboden array voorkomen niet gescand worden. Die dienen te worden overgeslagen.

    De eerste (doorgestreepte) optie betekent dubbel werk. Het zou wel kunnen.

    Hoe kan ik dit het beste oplossen?
    Ik zou met array_intersect() iets kunnen doen. Logischer is kijken of het bestand/pad voorkomt in de "verboden" array. Zo ja, niet opnemen in uiteindelijke array.

    Hoe kan ik dit het beste doen?

    (Het is een petit peu venijnig: '/css/' is een verboden directory. ALLE onderliggende bestanden/directory's zijn daarmee ook verboden.
    pi_68482700
    quote:
    Op dinsdag 28 april 2009 16:53 schreef GlowMouse het volgende:

    [..]


    Ericjuh: kijk eens naar caching headers. Ook de Content-Length-header ontbreekt bij jou. Waarom gebruik je ook geen readfile, maar maak je een hele nieuwe jpeg?
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    // Content type
    header('Content-type: image/jpeg');
    header('Content-Description: Picture');
    header('Content-Length: ' filesize($filename));

    readfile($filename);
    ?>


    dit ging eigenlijk wel heel makkelijk Keb nooit van het commando gehoord en ben daarom heel verrast dat het zo simpel kan. Dacht idd dat de enige optie was om de afbeelding opnieuw te maken.

    Wat betreft de headers.. zijn er headers die belangrijk zijn en die ik bij het voorbeeld mis? Als ik naar een plaatje van tinypic ga en ik open er één, zoals: http://i39.tinypic.com/28k0ggg.jpg. Als ik dan op f5 blijf drukken dan zie ik dat het plaatje niet weer gedownload word.. tenminste, ik verbruik alleen dataverkeer als ik het plaatje de eerste keer open. Daarna kan ik zo vaak op f5 drukken, maar er komt geen dataverkeer binnen. Ook lijkt het net of het plaatje niet opnieuw geladen word. Als ik bij mijn plaatje dat doe dan kan ik makkelijk een halve MB per seconden downloaden en ververst het plaatje zich bij elke druk op f5. Ik heb het gevoel dat ik daarom iets mis aan de headers (volgens mij Cache-Control).

    Voorbeeld van afbeelding die op mijn server staat (druk regelmatig op f5 en check je binnen komende dataverkeer): http://www.sharestuff.nl/img/psjwmlsp/afbeelding_test.JPG

    [off-topic]
    trouwens best een grappig commando. Zie dat je hierdoor ook pdf kunt uitvoeren en downloadsnelheid kunt aanpassen.

    [ Bericht 28% gewijzigd door Ericjuh op 29-04-2009 00:32:45 ]
    Dit keer zonder signature
      woensdag 29 april 2009 @ 00:36:31 #185
    75592 GlowMouse
    l'état, c'est moi
    pi_68484022
    Als je kijkt met een tool als Wireshark of een FF-plugin als Live HTTP Headers dan zie je dat tinypic deze headers meestuurt: "Expires: Tue, 05 May 2009 22:34:32 GMT" en "Cache-Control: max-age=604800".

    beerten: ik denk dat je voor iedere url de volledige robots.txt-regels moet doorlopen.
    eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
    pi_68485384
    quote:
    Op woensdag 29 april 2009 00:36 schreef GlowMouse het volgende:
    Als je kijkt met een tool als Wireshark of een FF-plugin als Live HTTP Headers dan zie je dat tinypic deze headers meestuurt: "Expires: Tue, 05 May 2009 22:34:32 GMT" en "Cache-Control: max-age=604800".


    tnx! dit was de info die ik zocht! Zal het morgen ff proberen. Je hoort van mij!
    Dit keer zonder signature
      woensdag 29 april 2009 @ 09:58:30 #187
    85514 ralfie
    !Yvan eht nioj
    pi_68488786
    quote:
    Op dinsdag 28 april 2009 19:48 schreef beerten het volgende:
    Ik ga het maar eens anders doen...


    Ik heb 2 arrays.
    [ code verwijderd ]

    Array $a is een array met alle files op mijn server
    Array b is de array van verboden bestanden uit robots.txt

    Nu wil ik graag dat alle bestanden/paden die in robots.txt voorkomen uit de array met bestanden worden gehaald.
    Als ik deroot-dir scan wil ik dat bestanden/paden die in de verboden array voorkomen niet gescand worden. Die dienen te worden overgeslagen.

    De eerste (doorgestreepte) optie betekent dubbel werk. Het zou wel kunnen.

    Hoe kan ik dit het beste oplossen?
    Ik zou met array_intersect() iets kunnen doen. Logischer is kijken of het bestand/pad voorkomt in de "verboden" array. Zo ja, niet opnemen in uiteindelijke array.

    Hoe kan ik dit het beste doen?

    (Het is een petit peu venijnig: '/css/' is een verboden directory. ALLE onderliggende bestanden/directory's zijn daarmee ook verboden.
    ik neem aan dat je je directories indexeert met een recursieve functie / loop ? Dan kun je daarin toch checken of het bestand in die array staat vóór je hem gaat recursiveren of in de resultaten gooit? Waar zit anders je probleem?
    pi_68488827
    Ik heb een googleprobleempje met een website.. Ik heb in het verleden een website gebouwd voor 4 bedrijven onder dezelfde groep. Deze website toont eerst een splashpage waar je een van de 4 bedrijven kunt kiezen. Dit heeft effect op de kleuren van de website, en dingen zoals de adresgegevens die uniek zijn per bedrijf. Deze keuze wordt opgeslagen in een cookie. So far so good. Een aantal maanden later blijkt dat google nog steeds die website niet geindexeerd heeft op de splashpage na. Dom natuurlijk dat ik dacht dat dat zou werken, want google doet niks met cookies en komt dus telkens weer op de splashpage terug. Zoals ik het zie heb ik nu de volgende opties:
    - Een databasetabel met IP + bedrijfskeuze. Slechte oplossing, want mensen vanuit een bedrijfsnetwerk hebben vrijwel altijd hetzelfde externe IP en dus geen vrije keuze
    - De keuze in de URL neerzetten. Kost me veel werk om dit in dit stadium nog om te bouwen, daarnaast niet persistent
    - Google IP-ranges om de tuin leiden door voor die adressen al een kleurenschema te kiezen. Slechte oplossing, want blackhat SEO is bad, mkay?

    Ik kom even niet verder dan dit met denken.. Zijn er andere mogelijkheden? Bij ieder bezoek opnieuw het kleurenschema kiezen is onwenselijk, het moet wel persistent wezen..
      woensdag 29 april 2009 @ 10:04:06 #189
    4159 GI
    Nee ik heet geen JOE
    pi_68488944
    1
    2
    3
    <?php
    $_SERVER
    ['HTTP_USER_AGENT'];
    ?>

    Bij google is dat : Googlebot/1.0 (googlebot@googlebot.com http://googlebot.com/)

    Bij het openen van de pagina door een googlebot-useragent het kleurschema laten kiezen.
    pi_68489012
    quote:
    Op woensdag 29 april 2009 09:59 schreef Intrepidity het volgende:
    Ik heb een googleprobleempje met een website.. Ik heb in het verleden een website gebouwd voor 4 bedrijven onder dezelfde groep. Deze website toont eerst een splashpage waar je een van de 4 bedrijven kunt kiezen. Dit heeft effect op de kleuren van de website, en dingen zoals de adresgegevens die uniek zijn per bedrijf. Deze keuze wordt opgeslagen in een cookie. So far so good. Een aantal maanden later blijkt dat google nog steeds die website niet geindexeerd heeft op de splashpage na. Dom natuurlijk dat ik dacht dat dat zou werken, want google doet niks met cookies en komt dus telkens weer op de splashpage terug. Zoals ik het zie heb ik nu de volgende opties:
    - Een databasetabel met IP + bedrijfskeuze. Slechte oplossing, want mensen vanuit een bedrijfsnetwerk hebben vrijwel altijd hetzelfde externe IP en dus geen vrije keuze
    - De keuze in de URL neerzetten. Kost me veel werk om dit in dit stadium nog om te bouwen, daarnaast niet persistent
    - Google IP-ranges om de tuin leiden door voor die adressen al een kleurenschema te kiezen. Slechte oplossing, want blackhat SEO is bad, mkay?

    Ik kom even niet verder dan dit met denken.. Zijn er andere mogelijkheden? Bij ieder bezoek opnieuw het kleurenschema kiezen is onwenselijk, het moet wel persistent wezen..
    Optie 2 is denk ik het beste. Niet iedereen gebruikt immers cookies.
    Trotse poster van het 37000000ste bericht ^O^
    pi_68489013
    quote:
    Op woensdag 29 april 2009 10:04 schreef GI het volgende:

    [ code verwijderd ]

    Bij google is dat : Googlebot/1.0 (googlebot@googlebot.com http://googlebot.com/)

    Bij het openen van de pagina door een googlebot-useragent het kleurschema laten kiezen.
    Is blackhat SEO, gaan we niet doen
      woensdag 29 april 2009 @ 10:21:16 #192
    4159 GI
    Nee ik heet geen JOE
    pi_68489448
    quote:
    Op woensdag 29 april 2009 10:06 schreef Intrepidity het volgende:

    [..]

    Is blackhat SEO, gaan we niet doen
    Blackhat SEO is open voor defenitie naar mijn mening. Je bent bezig met Search Engine Optimizing. Zorgen dat er dingen daadwerkelijk gevonden worden door langs de opening pagina heen te werken lijkt mij eigenlijk helemaal niks mis mee. FOK! doet hetzelfde, omdat de googlebot geen javascript aankan krijgt de googlebot (en andere search engines) standaard de text only layout met zich mee.

    Imho heb je pas te maken met Blackhat SEO als je daadwerkelijk andere informatie gaat tonen voor de googlebot. Terwijl je in dit geval alleen de informatie beschikbaar maakt.
    pi_68489578
    Ja maar dat zal google zijn reet roesten.. Zo af en toe gebruiken ze een andere user agent om te testen of jij andere content aan googlebot aflevert. Als google met een andere user agent ineens wel de splashpagina krijgt in plaats van de standaardlayout lig je uit de index..
      woensdag 29 april 2009 @ 10:35:25 #194
    85514 ralfie
    !Yvan eht nioj
    pi_68489948
    in de url zetten is de beste optie denk ik. Ik neem aan dat elk van die bedrijven toch ook wel eens een url wil uitgeven in de zin van 'bezoek ons een op www.onsbedrijf.nl'. Lijkt me dat wel zo professioneel om dat niet eerst nog in een splashpagina te moeten kiezen welk bedrijf de bezoeker nou moet hebben. Al is het maar een subdirectory 'www.onzebedrijven.nl/bedrijf1' is dan toch al een stuk beter... zelfs al gaat het maar om subbedrijfjes.
    pi_68490184
    quote:
    Op woensdag 29 april 2009 10:35 schreef ralfie het volgende:
    in de url zetten is de beste optie denk ik. Ik neem aan dat elk van die bedrijven toch ook wel eens een url wil uitgeven in de zin van 'bezoek ons een op www.onsbedrijf.nl'. Lijkt me dat wel zo professioneel om dat niet eerst nog in een splashpagina te moeten kiezen welk bedrijf de bezoeker nou moet hebben. Al is het maar een subdirectory 'www.onzebedrijven.nl/bedrijf1' is dan toch al een stuk beter... zelfs al gaat het maar om subbedrijfjes.
    Ze hebben allen eigen domeinen, maar die verwijzen wel naar het hoofddomein en dus naar de splashpage.. Wens van de klant, zo is het nou eenmaal
    pi_68500682
    Ik heb een website, compleet in HTML, maar ik gebruik PHP voor htmltop en htmlbottom. De <title> staat dus in de htmltop. Maar die wil ik aanpassen aan de pagina, die verschilt.

    Zo ziet een bestandje er bij mij dus uit:

    <?php include("htmltop.php"); ?>
    <h1>Home</h1>
    <p>inhoud</p>
    <?php include("htmlbottom.php"); ?>

    Weet iemand een manier om die title steeds met het bestandje te veranderen?
    pi_68500922
    1
    2
    3
    4
    <?php
    $titel 
    'De titel';
    include(
    "htmltop.php");
    ?>


    In htmltop.php kun je vervolgens dit doen:

    1<title><?php echo $titel; ?></title>
    pi_68516358
    quote:
    Op woensdag 29 april 2009 09:58 schreef ralfie het volgende:

    [..]

    ik neem aan dat je je directories indexeert met een recursieve functie / loop ? Dan kun je daarin toch checken of het bestand in die array staat vóór je hem gaat recursiveren of in de resultaten gooit? Waar zit anders je probleem?

    PRECIES!!!!!!!!

    Maar dat lut dus niet... Ik moet bij het indexeren kijken of het bestand/het pad in de "verboden" array voorkomt. in_array(). en precies daar gaat het mis.
    Het idee zoals onderstaand.
    1
    2
    3
    4
    if(!in_array($pad, $verboden_array))
     {
      $file_array[]=$pad;
     }

    En daar gaat ergens iets fout. Ik krijg het niet voor elkaar. Ik had het met mijn stuk code reeds opgegeven en het feitelijke probleem gepost. de oplossing die je aandraagt is qua principe gelijk aan de methode die ik poogde te hanteren.

    Ik kan uit je antwoord concluderen dat de insteek correct is, alleen laat mijn uitvoering te wensen over. Maar ik zie de oplossing niet...


    Ik heb je suggestie nog eens overwogen. Vanaf nul, van voren af aan.
    Het is inderdaad zo simpel. Ik had mijn check op een verkeerde plek in de functie. Ook waren er eenkele foutjes met declaraties van arrays. Foutjes, weet ik eigenlij niet. Heb een en ander veranderd en nu werkt het.

    Ik zie nu in een oogopslag welke bestanden en directory's indexeerbaar zijn voor een zoekmachine.
    Nu nog de pagina's doorzoeken, analyseren, links crawlen en ook die dooorzoeken en indexeren. Maar dat mechanisme/die scripts heb ik reeds. Die gebruik ik voor het aanmaken van sitemaps.
    Thnx!

    [ Bericht 19% gewijzigd door beerten op 30-04-2009 00:23:02 ]
    pi_68516585
    quote:
    Op woensdag 29 april 2009 15:33 schreef hello_moto1992 het volgende:
    Ik heb een website, compleet in HTML, maar ik gebruik PHP voor htmltop en htmlbottom. De <title> staat dus in de htmltop. Maar die wil ik aanpassen aan de pagina, die verschilt.

    Zo ziet een bestandje er bij mij dus uit:

    <?php include("htmltop.php"); ?>
    <h1>Home</h1>
    <p>inhoud</p>
    <?php include("htmlbottom.php"); ?>

    Weet iemand een manier om die title steeds met het bestandje te veranderen?
    Heel kort getikt komt het hier op neer. Ik gebruik zoiets op mijn sites, werkt uitstekend. Je kan zelfs de metatags variabel maken, indexering door zoekmachines etc.


    htmltop.php
    1
    2
    3
    4
    5
    <head>
    <html>
    <title><php print $title?></title>
    </head>
    <body>


    bottom.php

    htmltop.php
    1
    2
    </body>
    </html>


    De pagina zelf
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $title='De titel van de pagina';
    include("htmltop.php");
    ?>
    <h1>koptext</h1>
    <p>De inhoud van de pagina</p>
    <?php
    include("htmlbottom.php");
    ?>
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')