Avatar billede quewer Nybegynder
04. september 2007 - 17:24 Der er 21 kommentarer og
1 løsning

Lave at avatar der tæller ned til en bestemt dato

Jeg har før set avatars, hvor der er lavet noget php over det, så det enten måler uptime på server eller lignende. Er det muligt at lave et avatar der tæller ned med php til en bestemt dato?

Links og andet godt er gladeligt modtaget.
Avatar billede gider_ikke_mere Nybegynder
04. september 2007 - 19:09 #1
Det kan man ikke lave i PHP, da PHP er et serverside scriptsprog. Det vil sige at det afvikles inden output til brugerens browser. Skal du lave en nedtælling a la et ur, foregår det i f.eks javascript.
Avatar billede olebole Juniormester
04. september 2007 - 21:49 #2
<ole>

Som jeg læser spørgsmålet, er det netop PHP, der skal bruges. JavaScript kan jo i hvertfald ikke gemme noget - andet end i en cookie.

Hvad er det præcist, du vil lave, quewer?

/mvh
</bole>
Avatar billede quewer Nybegynder
04. september 2007 - 23:05 #3
Noget lignende det her eksempel: http://img251.imageshack.us/img251/1804/250pxsymboldv3.jpg

Meningen er så det automatisk skal tælle dagene ned fra 20. Kan det lade sig gøre?
Avatar billede olebole Juniormester
04. september 2007 - 23:08 #4
Ja, det forstår jeg godt, men resten?
Avatar billede quewer Nybegynder
04. september 2007 - 23:10 #5
Jeg ved ikke hvad du mener med resten :(
Avatar billede dj_ricko Nybegynder
04. september 2007 - 23:15 #6
Det skal nok laves via imagecreate functionerne i php,
php.net har en online database med syntax til alle funktionerne,
og er for det meste en meget stor hjælp.

http://dk2.php.net/manual/en/function.imagecreate.php
Avatar billede olebole Juniormester
04. september 2007 - 23:24 #7
quewer >> Jeg er bare ikke rigtig klar over, hvad det er, du vil tælle  :)
Avatar billede quewer Nybegynder
05. september 2007 - 11:11 #8
Jeg vil tælle ned til tv-serien Heroes begynder igen i USA, hvilket er d. 24. september. Idag er der 19 dage, altså skal der stå 19 på avataret. Imorgen vil der være 18, altså skal den vise 18.

Det hele skulle gerne ske automatisk.
Avatar billede olebole Juniormester
05. september 2007 - 12:00 #9
Nå okay ... så forstår jeg. Ja, det har jo præcis ligeså meget med en avatar at gøre som min spegepølsemad har. Jeg tror, du skal prøve at slå ordet op  ;D

Prøv at kikke på det link, dj_ricko gav dig. Det er, hvad du skal bruge  :)
Avatar billede quewer Nybegynder
06. september 2007 - 17:41 #10
Aner ikke hvordan det skal gøres :S

Er det noget i har mod på?
Avatar billede woowii Nybegynder
10. september 2007 - 23:19 #11
Der findes massere af eksempler (både her på eksperten og andre steder på nettet) hvordan man genererer billeder med tilfældig tekst - umiddelbart vil jeg tro at det er det du skal have fat i, lav en string med antal dage tilbage og sæt det ind i et billede. Det kan sikkert gøres smartere - men jeg vil tro det er en mulighed.
Avatar billede woowii Nybegynder
10. september 2007 - 23:22 #12
Lige for at gøre det klart - grunden til jeg nævner det med at indsætte tilfældig tekst på et billede er naturligvis fordi det er den metode du skal have fat i. I stedet for du via PHP genererer en tilfældig streng har du bare en streng som du sætter udfra nogle dato beregninger.
Avatar billede olebole Juniormester
12. september 2007 - 21:36 #13
Du kan gøre noget à la:

<?php
header("Content-type: image/png");

// Ret properties for billedet i dette array:
$aImgProps = array(
    "width" => 300,
    "height" => 400,
    "fColor" => array(255, 0, 0), // Forgrundsfarve: Rød
    "bColor" => array(255, 255, 0), // Baggrundsfarve: Gul
    "font" => "arial.ttf", // Stien til fonten
    "fontSize" => 20,
    "startPoint" => array(10, 30), // Nederste, venstre hjørne, hvor teksten starter
    "textAngel" => 0,
    "fromDate" => array(13, 9, 2008), // Dato i dansk format (dag, måned, år),
   
    "fColor2" => array(0, 0, 0), // Alternativ forgrundsfarve: Sort
    "fontSize2" => 10, // Alternativ skriftstørrelse
    "textAngel2" => 5 // Alternativ tekstvinkel i grader
);


$im = imagecreatetruecolor($aImgProps["width"], $aImgProps["height"]);

$backColor = imagecolorallocate($im, $aImgProps["bColor"][0], $aImgProps["bColor"][1], $aImgProps["bColor"][2]);
$frontColor = imagecolorallocate($im, $aImgProps["fColor"][0], $aImgProps["fColor"][1], $aImgProps["fColor"][2]);

imagefilledrectangle($im, 0, 0, $aImgProps["width"], $aImgProps["height"], $backColor);

$datoFrom = date(time());
$datoTo = mktime(0, 0, 0, $aImgProps["fromDate"][1], $aImgProps["fromDate"][0], $aImgProps["fromDate"][2]);
$diff = ceil( ($datoTo-$datoFrom)/86400 );

$text = "Der er ".$diff." dag".($diff>1?"e":"")." igen"; // Er der flere dage til, skrives 'dage' - ellers 'dag'
imagettftext($im, $aImgProps["fontSize"], $aImgProps["textAngel"], $aImgProps["startPoint"][0], $aImgProps["startPoint"][1], $frontColor, $aImgProps["font"], $text);

// Ekstra, vinklet tekst i bunden:
$frontColor2 = imagecolorallocate($im, $aImgProps["fColor2"][0], $aImgProps["fColor2"][1], $aImgProps["fColor2"][2]);
$text2 = "- og noget alternativ tekst i bunden af billedet ...";
imagettftext($im, $aImgProps["fontSize2"], $aImgProps["textAngel2"], $aImgProps["startPoint"][0], $aImgProps["height"]-20, $frontColor2, $aImgProps["font"], $text2);

imagepng($im);
imagedestroy($im);
?>
Avatar billede quewer Nybegynder
12. september 2007 - 22:03 #14
Nu har jeg prøvet at indsætte mine værdier, men kan ikke få det til at virke. Jeg har placeret baggrund.png, arial.ttf, samt php-filen i samme mappe, men det virker ikke helt.

Er det jeg har skrevet forkert?

<?php
header("Content-type: baggrund.png");

// Ret properties for billedet i dette array:
$aImgProps = array(
    "width" => 150,
    "height" => 250,
    "fColor" => array(255, 0, 0), // Forgrundsfarve: Rød
    "bColor" => array(255, 255, 0), // Baggrundsfarve: Gul
    "font" => "arial.ttf", // Stien til fonten
    "fontSize" => 20,
    "startPoint" => array(10, 30), // Nederste, venstre hjørne, hvor teksten starter
    "textAngel" => 0,
    "fromDate" => array(12, 9, 2007), // Dato i dansk format (dag, måned, år),
 
    "fColor2" => array(0, 0, 0), // Alternativ forgrundsfarve: Sort
    "fontSize2" => 10, // Alternativ skriftstørrelse
    "textAngel2" => 5 // Alternativ tekstvinkel i grader
);


$im = imagecreatetruecolor($aImgProps["width"], $aImgProps["height"]);

$backColor = imagecolorallocate($im, $aImgProps["bColor"][0], $aImgProps["bColor"][1], $aImgProps["bColor"][2]);
$frontColor = imagecolorallocate($im, $aImgProps["fColor"][0], $aImgProps["fColor"][1], $aImgProps["fColor"][2]);

imagefilledrectangle($im, 0, 0, $aImgProps["width"], $aImgProps["height"], $backColor);

$datoFrom = date(time(12, 9, 2007));
$datoTo = mktime(24, 9, 2007, $aImgProps["fromDate"][1], $aImgProps["fromDate"][0], $aImgProps["fromDate"][2]);
$diff = ceil( ($datoTo-$datoFrom)/86400 );

$text = "Der er ".$diff." dag".($diff>1?"e":"")." igen"; // Er der flere dage til, skrives 'dage' - ellers 'dag'
imagettftext($im, $aImgProps["fontSize"], $aImgProps["textAngel"], $aImgProps["startPoint"][0], $aImgProps["startPoint"][1], $frontColor, $aImgProps["font"], $text);

// Ekstra, vinklet tekst i bunden:
$frontColor2 = imagecolorallocate($im, $aImgProps["fColor2"][0], $aImgProps["fColor2"][1], $aImgProps["fColor2"][2]);
$text2 = "- og noget alternativ tekst i bunden af billedet ...";
imagettftext($im, $aImgProps["fontSize2"], $aImgProps["textAngel2"], $aImgProps["startPoint"][0], $aImgProps["height"]-20, $frontColor2, $aImgProps["font"], $text2);

imagepng($im);
imagedestroy($im);
?>
Avatar billede olebole Juniormester
14. september 2007 - 13:45 #15
Har du testet min kode? Den skriver ikke på et eksisterende billede, men opretter selv et og skriver på det
Avatar billede superdreng Nybegynder
18. september 2007 - 21:22 #16
Du har skrevet dette her, quewer:
<?php
header("Content-type: baggrund.png");

Det rigtige som olebole har skrevet:
<?php
header("Content-type: image/png");

Det fortælle brovseren at filen ikke ´skal vise som et html document eller php document men som et billedfil.

Håber du forstår :D
Avatar billede quewer Nybegynder
22. september 2007 - 12:31 #17
Er der nogen der kan ændre den, så den rent faktisk passer, for nu har jeg snart prøvet hundrede gange, og det vil bare ikke virke.

Den skal bare tælle ned til d. 24. september i år. Arial er fint nok som font.
Avatar billede olebole Juniormester
22. september 2007 - 17:16 #18
Eksemplet (12/09-2007 21:36:56) virker fint
Avatar billede quewer Nybegynder
07. oktober 2007 - 13:45 #19
Kan stadig ikke få det til at virke, men smid et svar alligevel for den gode indsats :P
Avatar billede gider_ikke_mere Nybegynder
30. oktober 2007 - 18:04 #20
Et svar...
Avatar billede gider_ikke_mere Nybegynder
11. november 2007 - 17:08 #21
Lukketid?
Avatar billede quewer Nybegynder
29. november 2007 - 12:02 #22
Jeg kan ikke lukke uden et svar, hvis i altså vil have lidt point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester