??? hmmm, huh?quote:Op maandag 27 april 2009 20:20 schreef GlowMouse het volgende:
Eenvoudig debugwerk:
[ code verwijderd ]
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...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.
1 2 3 4 5 6 | if(sizeof($omit) == 0 || !!in_array($main_dir,$omit)) { $file_arr[]=$path.'/'.$file; } ?> |
1 2 3 4 5 6 | if(sizeof($omit) == 0 || !in_array($main_dir,$omit)) { $file_arr[]=$path.'/'.$file; } else { echo ">>{$main_dir}<< zit niet in"; print_r($omit); } ?> |
Het gekke is dat zonder die check op 0 de boel een error geeft Wrong datatype. Ik kan nergens een goede oplossing/uitleg vonden.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.
De fout is volgens mij zo simpel dat ik niet scheel genoeg kan kijken om het te zien. Zo dicht bij...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.
Welke warning?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.
Warning: in_array() [function.in-array]: Wrong datatype for second argument in pad/naar/bestand.php on line xxquote:
Dan zou het tweede argument dus geen array zijn. Ook geen tikfoutjes gemaakt in de variabelenaam?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.
1 2 3 4 5 6 | error_reporting(E_ALL); $a = array(); $b = 'needle'; var_dump(in_array($b, $a)); ?> |
Note: As of PHP 5.1.0, this parameter became deprecated. As a result, the new timezone handling features should be used instead.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.
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.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.
1 2 3 4 | $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-30-2009 00:59 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | // 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, $image, 0, 0, 0, 0, $width_orig, $height_orig); // Output imagejpeg($image_p, null, 100); ?> |
Dat is afhankelijk van je timezone settings:quote:Op dinsdag 28 april 2009 10:49 schreef GlowMouse het volgende:
[ code verwijderd ]
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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 | Europe/Amsterdam 03-28-2009 23:59 03-30-2009 00:59 UTC 03-28-2009 23:59 03-29-2009 23:59 |
Mktime niet. En omdat Europe/Amsterdam toch wel een veelgebruikte instelling is hier, zou ik de gok niet wagen en gewoon mktime gebruiken.quote:Op dinsdag 28 april 2009 16:43 schreef slacker_nl het volgende:
[..]
Dat is afhankelijk van je timezone settings:
Voor zover ik de documentatie van mktime lees is deze ook afhankelijk van de timezone: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?
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 | 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)+1, date('Y', $t)) ) . "\n"; } time_me(); time_me("UTC"); ?> |
1 2 3 4 5 6 | 03-28-2009 23:59 03-29-2009 00:00 UTC 03-28-2009 23:59 03-29-2009 00:00 |
1 2 3 4 5 6 7 | 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> |
1 2 3 4 5 6 7 8 9 10 11 12 | $title = 'kinderopvang'; $body = <<<HTML blablablablabla HTML; ?> |
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: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.
Nouja, eigenlijk is het geen php-foutquote:Dit alles zit in een php pagina die er zo uitziet, dus daarom heb ik het in dit topic gepost:
[ code verwijderd ]
Nouja, 1 minuut later is niet zo spannend, helemaal niet als je naar middernacht gaat.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.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.
1 2 3 | $a=array('/file.php','index.php',/css/style.css') $b=array('file.php','/css/') |
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 | // Content type header('Content-type: image/jpeg'); header('Content-Description: Picture'); header('Content-Length: ' . filesize($filename)); readfile($filename); ?> |
tnx! dit was de info die ik zocht! Zal het morgen ff proberen. Je hoort van mij!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".
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?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.
1 2 3 | $_SERVER['HTTP_USER_AGENT']; ?> |
Optie 2 is denk ik het beste. Niet iedereen gebruikt immers cookies.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..
Is blackhat SEO, gaan we niet doenquote: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.
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.quote:Op woensdag 29 april 2009 10:06 schreef Intrepidity het volgende:
[..]
Is blackhat SEO, gaan we niet doen
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 eenmaalquote: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.
1 2 3 4 | $titel = 'De titel'; include("htmltop.php"); ?> |
1 |
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?
1 2 3 4 | { $file_array[]=$pad; } |
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.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?
1 2 3 4 5 | <html> <title><php print $title?></title> </head> <body> |
1 2 | </html> |
1 2 3 4 5 6 7 8 9 | $title='De titel van de pagina'; include("htmltop.php"); ?> <h1>koptext</h1> <p>De inhoud van de pagina</p> <?php include("htmlbottom.php"); ?> |
Dat is ook het eerste wat ik maandag ga doenquote:Op donderdag 30 april 2009 11:03 schreef WyriHaximus het volgende:
[..]
Zo true dat ik hem naast me deur op de muur geplakt heb op kantoor.
1 2 3 | WHERE stat_id = '" . $statID . "' AND (UNIX_TIMESTAMP(lastdate) + 60*15) < UNIX_TIMESTAMP(NOW()) |
1 2 3 4 5 6 7 | `stat_id` int(10) unsigned NOT NULL, `ip` int(10) unsigned NOT NULL, `lastdate` timestamp NULL default '0000-00-00 00:00:00', UNIQUE KEY `stat_id` (`stat_id`,`ip`), KEY `lastdate` (`lastdate`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |