Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] losowy obrazek & napis na obrazku
dext
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 11.12.2003
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Witam, mam dwa skrypty jeden do losowania obrazka, a drugi do nakladania tekstu na obrazek. Nie wiem jak moge polaczyc te dwa skrypty, tak zeby wylosowany obrazek mial juz naniesiony tekst.

Losowanie obrazka:
[php:1:8b79a719db]

<?php

//directory here (relative to script)
$path = './costam/costam/';

$i = 0;
$imgDir = opendir ($path);
while ( $file = readdir( $imgDir ) )
{
//checks that file is an image
$file_type = strrchr( $file, "." );
$is_image = eregi( "jpg|gif",$file_type );

if ( $file != '.' && $file != '..' && $is_image )
{ $images[$i++] = $file; }
}
closedir ($imgDir);

srand( (double) microtime()*1000000 );
$image_name = $path . '/' . $images[rand( 0,sizeof( $images ) -1 )];
$imgSize = GetImageSize( $image_name );

//ends script if no images found
if ( $i == 0 )
die();

print ( "<img src="" . $image_name . """ . $imgSize[3] . " />n" );

?>
</body>
</html>
[/php:1:8b79a719db]

Napis na obrazku:
[php:1:8b79a719db]<?php

header("Content-type: image/jpeg");
$px = $_GET['px'];
$py = $_GET['py'];
$string = $_GET['string'];
$foto = $_GET['foto'];
$im = imagecreatefromjpeg($foto);
$color = imagecolorclosest($im, 255, 255, 255);
imagestring($im, 3, $px, $py, $string, $color);
imagejpeg($im);
imagedestroy($im);
?>[/php:1:8b79a719db]

Wysietlanie obrazka:
Kod
<img src="http://www.costam.pl/obrazek.php?string=TEKST,TEKST&px=150&py=200&foto=const009.jpg">


Teraz pytania:
:arrow: Co zmienic w skrypcie do losowania, żeby nie tyko losowal obrazek z podanego katalogu, lecz "penetrowal" w poszukiwaniu jpeg pare katalogow podrzednych?
:arrow: Jak zmodyfikowac skrypt zeby wylosowany obrazek mnial juz naniesiony tekst?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
kszychu
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Naprawdę sam na to nie wpadłeś?...
[php:1:429c8467ce]

<?php

//directory here (relative to script)
$path = './costam/costam/';

$i = 0;
$imgDir = opendir ($path);
while ( $file = readdir( $imgDir ) )
{
//checks that file is an image
$file_type = strrchr( $file, "." );
$is_image = eregi( "jpg|gif",$file_type );

if ( $file != '.' && $file != '..' && $is_image )
{ $images[$i++] = $file; }
}
closedir ($imgDir);

srand( (double) microtime()*1000000 );
$image_name = $path . '/' . $images[rand( 0,sizeof( $images ) -1 )];
$imgSize = GetImageSize( $image_name );

//ends script if no images found
if ( $i == 0 )
die();

print ( "<img src="http://www.costam.pl/obrazek.php?string=TEKST,TEKST&px=150&py=200&foto=" . $image_name . """ . $imgSize[3] . " />n" );

?>
</body>
</html>
[/php:1:429c8467ce]
Go to the top of the page
+Quote Post
XeqtR
post
Post #3





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 28.05.2004
Skąd: Zawiercie / Katowice

Ostrzeżenie: (0%)
-----


a co to ma do rzeczy ?
Go to the top of the page
+Quote Post
kszychu
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Cytat
a co to ma do rzeczy ?

A o co konkretnie pytasz?
Go to the top of the page
+Quote Post
dext
post
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 11.12.2003
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Spoko dzieki, lecz jak zrobic zeby podac jedynie glowny katalog np. obrazki, a skrypt sam wejdzie w podkatalogi i wylosuje obrazek z paru katalogow?
Go to the top of the page
+Quote Post
kszychu
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Poszukaj n forum o przeglądaniu podkatalogów, było trochę tego, więc powinieneś coś znaleźć.
Musisz zrobić listę wszystkich plików we wszystkich podkatalogach (razam ze ścieżkami), zapisać je w jakiejś tablicy i z niej później losować.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 17:00