Dit is inderdaad behoorlijk inefficiėnt (bij grote aantallen)quote:Op vrijdag 12 oktober 2007 02:01 schreef markiemark het volgende:
[...]
nou ja, kijk maar naar mn code.. waarschijnlijk wat inefficient, maar het werkt..
[...]
:squote:Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0
Waarschijnlijk gebruik je een variabele die nergens gevuld wordt en waarbij je er vanuit gaat dat hij uit een session/get/post komt.quote:Op zondag 14 oktober 2007 17:52 schreef PiRANiA het volgende:
[..]
:s
Ik gebruik een functie: updatesession(), die werkt gewoon bij het inloggen, maar als ik die functie later gebruik werkt het niet meer :s
Kent iemand deze error?
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 | // Set the enviroment variable for GD putenv('GDFONTPATH=' . realpath('.')); // The y-ordinate. This sets the position of the fonts baseline, not // the very bottom of the character. // Name the font to be used (note the lack of the .ttf extension) $font = 'milk'; // R = 92 // G = 172 // B = 107 header("Content-type: image/png"); $cache = "./dummy/text_" . $_GET['text'] . ".png"; if (file_exists($cache)) { readfile($cache); exit(); } else { // Create the image $im = imagecreatetruecolor(400, 30); // Create some colors $green = imagecolorallocate($im, 92, 172, 107); // $grey = imagecolorallocate($im, 128, 128, 128); $black = imagecolorallocate($im, 248, 248, 248); imagefilledrectangle($im, 0, 0, 399, 29, $black); //// Add some shadow to the text //imagettftext($im, 20, 0, 11, 21, $grey, $font, $_GET['text']); // Add the text imagettftext($im, 17, 0, 10, 25, $green, $font, $_GET['text']); // Using imagepng() results in clearer text compared with imagejpeg() imagepng($im, '', 0); imagepng($im, $cache, 0); imagedestroy($im); } ?> |
Ff stomme opmerking maar weet je zeker dat je het juiste font gebruikt? En heb je het al eens een stuk groter gedaan?quote:Op woensdag 17 oktober 2007 11:25 schreef Chandler het volgende:
Ik zit met een vraagje,
Voor een site wil ik teksten omzetten naar afbeeldigen zoals:
[ afbeelding ]
Maar helaas is de output meer zoals dit
[ afbeelding ]
Nu zie je dat de tekst echt er niet uit ziet. Deze afbeelding is gemaakt met de volgend code
[ code verwijderd ]
maar nu zie ik niet wat ik fout doeanyone?
Heb je het font ook bekekenquote:Op woensdag 17 oktober 2007 13:22 schreef Chandler het volgende:
Het is als het goed is de juiste font (kreeg deze van de designer van de site)maar ik zal het iets groter proberen!
Groter font werkt helaas ook niet, zal eens kijken of er een sharp/crisp versie van deze font te vinden is
quote:Op woensdag 17 oktober 2007 13:28 schreef Chandler het volgende:
Zekers heb ik ook een blik geworpen op de font zelf, de font zelf heb ik gebruik in Photoshop en het voorbeeld plaatje (1e) mee gemaakt!
Daar is volgens mij geen standaardfunctie voor. Wat je kunt proberen is eerst uitzoeken op welke dag 1 januari valt, daarmee berekenen wat dan de maandag van week 1 is, en dan nog 41 weken verder tellen.quote:Op woensdag 17 oktober 2007 12:59 schreef broodmonkeh het volgende:
Hoe zet ik een weeknummer om naar 7 data die hierin vallen? Kan er nergens wat over vinden![]()
dus bijv.
week 42 :
15-10-2007
16-10-2007
17-10-2007
18-10-2007
19-10-2007
20-10-2007
21-10-2007
Ik hoop dat jullie me op weg kunnen helpen![]()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | function getFirstDayOfWeek($year, $weeknr) { $offset = date('w', mktime(0,0,0,1,1,$year)); $offset = ($offset < 5) ? 1-$offset : 8-$offset; $monday = mktime(0,0,0,1,1+$offset,$year); return strtotime('+' . ($weeknr - 1) . ' weeks', $monday); } function DatesBetween($startDate, $endDate){ // get the number of days between the two given dates. $days = (strtotime($endDate) - strtotime($startDate)) / 86400 + 1; $startMonth = date("m", strtotime($startDate)); $startDay = date("d", strtotime($startDate)); $startYear = date("Y", strtotime($startDate)); $dates;//the array of dates to be passed back for($i=0; $i<$days; $i++){ $dates[$i] = date("d/m/Y", mktime(0, 0, 0, $startMonth , ($startDay+$i), $startYear)); } return $dates; } ?> |
1 2 3 4 5 6 7 8 | $timestamp = getFirstDayOfWeek(2007,42); $datum1 = date("m/d/Y", $timestamp); $timestamp = strtotime ("+7 day", $timestamp); $datum2 = date("m/d/Y", $timestamp); $dates = DatesBetween($datum1,$datum2); ?> |
quote:Op woensdag 17 oktober 2007 12:59 schreef broodmonkeh het volgende:
Hoe zet ik een weeknummer om naar 7 data die hierin vallen? Kan er nergens wat over vinden![]()
dus bijv.
week 42 :
15-10-2007
16-10-2007
17-10-2007
18-10-2007
19-10-2007
20-10-2007
21-10-2007
Ik hoop dat jullie me op weg kunnen helpen![]()
1 2 3 4 5 6 7 8 9 | $dezeweek = date("W", mktime()); $einddag = $dezeweek * 7; $mktimebegin = ($einddag * 86400) - (7*86400); $mktimebegin += mktime(0,0,0,1,1,date("Y", mktime())); for ($i=0; $i<7; $i++) { $dagenweek[] = $mktimebegin + ($i*86400); } ?> |
ik heb 2 willekeurige weken uit 2005 gepakt , en dit werkt gewoon! Alleen als ik bijv. week 52 pak , dan pakt ie ook 1 januari 2006 mee, maarja dat maakt niet zoveel uit.quote:Op woensdag 17 oktober 2007 14:48 schreef Light het volgende:
Gaat die functie ook goed in bijvoorbeeld 2005?
Ik had het ondertussen zelf ook al gecontroleerd, op dezelfde manier als ik de functie controleerde die ik zelf heb geschreven, met een simpel for-loopje :)quote:Op woensdag 17 oktober 2007 15:00 schreef broodmonkeh het volgende:
[..]
ik heb 2 willekeurige weken uit 2005 gepakt , en dit werkt gewoon! Alleen als ik bijv. week 52 pak , dan pakt ie ook 1 januari 2006 mee, maarja dat maakt niet zoveel uit.
1 2 3 4 5 6 7 | for ($i = 1970; $i < 2038; $i++) { $d = getFirstDayOfWeek($i, 42); if( (date('W',$d) != 42) or (date('N',$d) != 1) ) echo $i.' '; } echo"\nDone"; ?> |
quote:Op woensdag 17 oktober 2007 15:19 schreef broodmonkeh het volgende:
weer iets nieuws , ben vandaag niet echt helder :')
Je selecteerd 2 weeknummers bijv. 1 en 8 , hoe krijg ik dan alle nummers daartussen ? 2 , 3 , 4, 5 , 6 ,7.
1 2 3 4 | for($i = 1; $i <= 8; $i++){ nummers[] = $i } |
Is dit wat voor je? http://nl2.php.net/manual/en/function.imagettftext.php#58081quote:Op donderdag 18 oktober 2007 09:51 schreef Chandler het volgende:
Niemand iets over mijn GD probleem? Zou heel fijn zijn
Dan krijg je ditquote:Op donderdag 18 oktober 2007 10:00 schreef WyriHaximus het volgende:
[..]
Is dit wat voor je? http://nl2.php.net/manual/en/function.imagettftext.php#58081
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |