Autor | Zpráva | ||
---|---|---|---|
DeBon Profil |
#1 · Zasláno: 28. 5. 2008, 16:22:30
Zdravim.. Už jsme to tu kdysi viděl, akorát to nemůžu nikde najít...
Jde o to že mám obrázek například "obrazek.png" a ten je pokaždý jinej.. Matně si pamatuju, že byl soubor "obrazek.php" v něm bylo něco napsanýho v phpku, aby soubor byl jeden z obrázků z danýho pole a přes mod_rewrite se tomu souboru měnila koncovka na png.. Bylo to zmiňováno tušim jako machrovinka kterou používají uživatelé v diskusích u svých avatarů... Nevíte někdo o tom kde to je nebo jak to udělat? Díky moc |
||
vydrus Profil |
#2 · Zasláno: 28. 5. 2008, 16:30:08 · Upravil/a: vydrus
<? $images = array( "1.jpg", "2.jpg", "3.jpg", ); mt_srand(time()); $random_index = mt_rand(1, (count($images))); $random_index--; ?> <img src="<? echo "$images[$random_index]" ?>"> |
||
DeBon Profil |
#3 · Zasláno: 28. 5. 2008, 16:39:14
no jo... ale to mám soubor a v něm obrázek.. já potřebujeu aby soubor byl obrázkem..
a tedy podud by to tak bylo a tohle byla první půlka řešení, tak jak mám udělat ze souboru s obrázkem obrázek? |
||
vydrus Profil |
#4 · Zasláno: 28. 5. 2008, 16:42:05
Tak řekněme, že tenhle skript bude pojmenován obrazek.php.
A na stránce, kde to chceš mít, vložíš <?php include ("obrazek.php"); ?> Oukej? |
||
DeBon Profil |
#5 · Zasláno: 28. 5. 2008, 16:44:34 · Upravil/a: DeBon
Jako abych to ještě blíž přiblížil... Na úplně cizim serveru je odkaz <a href="http://mujserver/obrazek.png"> a na mym serveru je "obrazek.png" a já potřebuju aby při každym reloadu bylo na cizim serveru za "obrazek.png" jednou "obr1.png" jindy "obr23.png" třeba.. O tenhleten princip mi jde... aby randomě "obrazek.png" byl pokaždý jinej soubor, ale přesto pořád "obrazek.png"..
Je k tomu určitě potřeba mod_rewrite.. Možná by se to celkověnechalo udělat celý přes mod rewrite, jestli tam jde nastavit nějakej random v něm.. ale to opravdu nevim jak.. |
||
Matty Profil |
#6 · Zasláno: 28. 5. 2008, 16:47:35
DeBon
Nevidím důvod plést do toho mod_rewrite. PHP script může být i v souboru *.png, ale musí to být nastavené v .htaccess. Poté v tom souboru *.png bys nahrával ostatní obrázky. Bude zapotřebí funkce imagecreatefrompng() a další... |
||
vydrus Profil |
#7 · Zasláno: 28. 5. 2008, 16:48:30
Na úplně cizim serveru je odkaz <a href="http://mujserver/obrazek.png">
Myslíš <img src="http://mujserver/obrazek.png">? Tak to zkus takhle: ten skript si pojmenuješ jako obrazek.png a třeba to i pofachá :) |
||
DeBon Profil |
#8 · Zasláno: 28. 5. 2008, 16:52:31 · Upravil/a: DeBon
Vydrus
sorry.. já dávám příklad a nemyslim u toho.. Matty a další? Nemáš s tim nějaký zkušenosti? nebo nevyděls na toto téma někde článek? |
||
Matty Profil |
#9 · Zasláno: 28. 5. 2008, 16:54:19
DeBon
A další, které jsou zapotřebí - viz. http://cz.php.net/manual/cs/function.imagecreatefrompng.php |
||
DeBon Profil |
#10 · Zasláno: 28. 5. 2008, 17:05:33
Matty & Vydrus
Díky Pánové! Teď už to nějak doklepu.. |
||
DeBon Profil |
#11 · Zasláno: 28. 5. 2008, 17:13:09 · Upravil/a: DeBon
Super.. tak už to mám.. v souboru obrazek.png mám:
<? $images = array( "obr1.png" ); mt_srand(time()); $random_index = mt_rand(1, (count($images))); $random_index--; function LoadPNG($imgname) { $im = @imagecreatefrompng($imgname); /* Attempt to open */ if (!$im) { /* See if it failed */ $im = imagecreatetruecolor(150, 30); /* Create a blank image */ $bgc = imagecolorallocate($im, 255, 255, 255); $tc = imagecolorallocate($im, 0, 0, 0); imagefilledrectangle($im, 0, 0, 150, 30, $bgc); /* Output an errmsg */ imagestring($im, 1, 5, 5, "Error loading $imgname", $tc); } return $im; } header("Content-Type: image/png"); $img = LoadPNG("$images[$random_index]"); imagepng($img); ?> a mod rewrite jenom : RewriteRule ^obrazek.png$ obrazek.php [L,QSA] |
||
Keeehi Profil * |
#12 · Zasláno: 29. 5. 2008, 17:52:45
<?php header ("Content-type: image/png"); putenv('GDFONTPATH=' . realpath('.')); $images = array( "1.png", "2.png", "3.png", ); srand((double)microtime()*1000000); $image = $images[rand(0,(count($images)-1))]; $obrazek = imagecreatefrompng($image); imagePng ($obrazek); imageDestroy ($obrazek); ?> toto vložíš do souboru obrazek.php a do normální stránky <a href="http://mujserver/obrazek.php"> |
||
Časová prodleva: 16 let
|
0