php opendir met watermerk
ik heb een bestaand script die foto's uit leest uit een map.
alleen nu wil ik ook dat ie een watermerk toe voegt.
hier onder laat ik het script zien die ik gebruik
Dieren.php
Code (php)
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$dir = 'Dieren'; // de directory die hij uit moet lezen
$extarray = array ("jpg","gif","png"); // de extensie die hij weer moet geven
if ($handle = opendir($dir))
{
while (false !== ($file = readdir($handle)))
{
$bestand = $dir ."/". $file ;
$ext = pathinfo($bestand);
foreach ($extarray as $waarde)
{
if(strtolower($ext['extension']) == $waarde)
{
echo " <a href='Dierenview.php?$dir=$file' target='_blank'><img src=' $dir/".$file."' width='100' height='75' STYLE='border: solid 1px black;'></a>" ;
}
}
}
closedir($handle);
}
?>
$dir = 'Dieren'; // de directory die hij uit moet lezen
$extarray = array ("jpg","gif","png"); // de extensie die hij weer moet geven
if ($handle = opendir($dir))
{
while (false !== ($file = readdir($handle)))
{
$bestand = $dir ."/". $file ;
$ext = pathinfo($bestand);
foreach ($extarray as $waarde)
{
if(strtolower($ext['extension']) == $waarde)
{
echo " <a href='Dierenview.php?$dir=$file' target='_blank'><img src=' $dir/".$file."' width='100' height='75' STYLE='border: solid 1px black;'></a>" ;
}
}
}
closedir($handle);
}
?>
Dierenview.php
Code (php)
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
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
<?php
// hier je dir aanpassen.
$dir = './Dieren/';
if (!$_GET['Dieren'])
{
die('Er is geen foto naam opgegeven om te laden.');
}
$foto = strip_tags($_GET['Dieren']);
if (!file_exists($dir.$foto))
{
die('Foto kon niet gevonden worden');
}
echo"
<center>
<img src='".$dir.$foto."' alt='www.pinoclub.nl'>
</center>
";
?>
// hier je dir aanpassen.
$dir = './Dieren/';
if (!$_GET['Dieren'])
{
die('Er is geen foto naam opgegeven om te laden.');
}
$foto = strip_tags($_GET['Dieren']);
if (!file_exists($dir.$foto))
{
die('Foto kon niet gevonden worden');
}
echo"
<center>
<img src='".$dir.$foto."' alt='www.pinoclub.nl'>
</center>
";
?>
Voorbeeld: http://www.pinoclub.nl/Dieren.php
zou dit kunnen. ?
ik kan zelf niet scripten.
dus als je het kan maken graag.
Gewijzigd op 01/01/1970 01:00:00 door Dave Disseldorp
zoek naar bij
php watermark script
dan vind je bijv dit:
http://www.sitescripts.com/PHP/Image_Manipulation/phpWatermark.html
"ik kan zelf niet scripten" euhmmm ik hoop dat je bedoelt "ik kan nog niet scripten" anders weet ik niet of mensne er graag tijd in steken.
zou iemand willen kijken kwil er ook best voor betalen.
Je kunt het toch ook zo maken dat als je een foto upload er een watermerk wordt opgemaakt? Dan hoef je aan dit script verder niks te wijzigen.
;-)
En upload je die gewoon via de FTP of gewoon via een upload scriptje online?
via ftp
ik wil er voor betalen.
mischien zelf een eerst kijken voordat je gaat vragen..
als je het script hebt en het lukt je niet hem in te bouwen kan je hier terecht met je vragen..
Code (php)
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php
/* mijn tot zover watermerk script:
-support png/gif/jgp
-transparante watermerken
-colorcheck voor lichte of donkere achtergrond
-nog wat datbase spul
-moet wel een opstartje kunnen zijn
*/
//watermerk
if(isset($_POST[watermerk]) && $_POST[watermerk]=='on' || isset($_GET[action]) && $_GET[action]==watermerk){
$watermerk_check='ja';
if(isset($_GET[action]) && $_GET[action]==watermerk){
$bestand=$_GET[sub1_loc].'/'.$_GET[sub2_loc].'/'.$_GET[image];
$delen = explode('.',$bestand);
$sql_query5 = "UPDATE photo SET watermerk='$watermerk_check' WHERE naam = '$_GET[image]' AND sub = '$sub2' AND root = '$sub1';";
$result5 = mysql_query($sql_query5) or die(mysql_error());
}
//--- orriginele image
if($delen[1]=='jpg' || $delen[1]=='jpg'){
$image = imagecreatefromjpeg($bestand);
}elseif($delen[1]=='png'){
$image = imagecreatefrompng($bestand);
}elseif($delen[1]=='gif'){
$image = imagecreatefromgif($bestand);
}
$size = getimagesize($bestand);
if($delen[1]=='jpg' || $delen[1]=='jpg'){ // handle voor foto
$imgHand = imagecreatefromjpeg($bestand);
}elseif($delen[1]=='png'){
$imgHand = imagecreatefrompng($bestand);
}elseif($delen[1]=='gif'){
$imgHand = imagecreatefromgif($bestand);
}
$imgB = $size[0]-1; // breedte en hoogte
$imgH = $size[1]-1;
$minB = $imgB-150;
$minH = $imgH-40;
$som=0;
$count=0;
//licht of donker??
for($q=$imgH;$q>$minH;$q-=4){
for($w=$imgB;$w>$minB;$w-=15){
$rgb = ImageColorAt($imgHand,$w,$q); // pixelkleur ophalen
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
$t=$r+$g+$b;
$som=$som+$t;
$count++;
}
}
if(round(($som/$count))>600){
$watermerk = imagecreatefrompng("content/image/watermerk_z.png");
}else{
$watermerk = imagecreatefrompng("content/image/watermerk.png");
}
//--- transparante watermerk
$watermerk_width = imagesx($watermerk);
$watermerk_height = imagesy($watermerk);
imagecreatetruecolor($watermerk_width, $watermerk_height);
$trans = imagecolorallocate($watermerk,160,160,160);
imagecolortransparent($watermerk,$trans);
//--- dit is voor links onder
$xas = $size[0] - $watermerk_width ;
$yas = $size[1] - $watermerk_height ;
//--- overschrijf het 'geuploade bestand' en voeg watermerk toe
imagecopymerge($image, $watermerk, $xas, $yas, 0, 0, $watermerk_width, $watermerk_height, 100);
//--- upload image
if($delen[1]=='jpg' || $delen[1]=='jpg'){ // handle voor foto
imagejpeg($image, $bestand,100); // max. kwaliteit
}elseif($delen[1]=='png'){
imagepng($image, $bestand); // ivm versie php versie 4 nog geen kwaliteit
}elseif($delen[1]=='gif'){
imagegif($image, $bestand,100); // max. kwaliteit
}
imagejpeg($image, $bestand,100); // max. kwaliteit
imagedestroy($image);
imagedestroy($watermerk);
}else{
$watermerk_check='nee';
}
?>
/* mijn tot zover watermerk script:
-support png/gif/jgp
-transparante watermerken
-colorcheck voor lichte of donkere achtergrond
-nog wat datbase spul
-moet wel een opstartje kunnen zijn
*/
//watermerk
if(isset($_POST[watermerk]) && $_POST[watermerk]=='on' || isset($_GET[action]) && $_GET[action]==watermerk){
$watermerk_check='ja';
if(isset($_GET[action]) && $_GET[action]==watermerk){
$bestand=$_GET[sub1_loc].'/'.$_GET[sub2_loc].'/'.$_GET[image];
$delen = explode('.',$bestand);
$sql_query5 = "UPDATE photo SET watermerk='$watermerk_check' WHERE naam = '$_GET[image]' AND sub = '$sub2' AND root = '$sub1';";
$result5 = mysql_query($sql_query5) or die(mysql_error());
}
//--- orriginele image
if($delen[1]=='jpg' || $delen[1]=='jpg'){
$image = imagecreatefromjpeg($bestand);
}elseif($delen[1]=='png'){
$image = imagecreatefrompng($bestand);
}elseif($delen[1]=='gif'){
$image = imagecreatefromgif($bestand);
}
$size = getimagesize($bestand);
if($delen[1]=='jpg' || $delen[1]=='jpg'){ // handle voor foto
$imgHand = imagecreatefromjpeg($bestand);
}elseif($delen[1]=='png'){
$imgHand = imagecreatefrompng($bestand);
}elseif($delen[1]=='gif'){
$imgHand = imagecreatefromgif($bestand);
}
$imgB = $size[0]-1; // breedte en hoogte
$imgH = $size[1]-1;
$minB = $imgB-150;
$minH = $imgH-40;
$som=0;
$count=0;
//licht of donker??
for($q=$imgH;$q>$minH;$q-=4){
for($w=$imgB;$w>$minB;$w-=15){
$rgb = ImageColorAt($imgHand,$w,$q); // pixelkleur ophalen
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
$t=$r+$g+$b;
$som=$som+$t;
$count++;
}
}
if(round(($som/$count))>600){
$watermerk = imagecreatefrompng("content/image/watermerk_z.png");
}else{
$watermerk = imagecreatefrompng("content/image/watermerk.png");
}
//--- transparante watermerk
$watermerk_width = imagesx($watermerk);
$watermerk_height = imagesy($watermerk);
imagecreatetruecolor($watermerk_width, $watermerk_height);
$trans = imagecolorallocate($watermerk,160,160,160);
imagecolortransparent($watermerk,$trans);
//--- dit is voor links onder
$xas = $size[0] - $watermerk_width ;
$yas = $size[1] - $watermerk_height ;
//--- overschrijf het 'geuploade bestand' en voeg watermerk toe
imagecopymerge($image, $watermerk, $xas, $yas, 0, 0, $watermerk_width, $watermerk_height, 100);
//--- upload image
if($delen[1]=='jpg' || $delen[1]=='jpg'){ // handle voor foto
imagejpeg($image, $bestand,100); // max. kwaliteit
}elseif($delen[1]=='png'){
imagepng($image, $bestand); // ivm versie php versie 4 nog geen kwaliteit
}elseif($delen[1]=='gif'){
imagegif($image, $bestand,100); // max. kwaliteit
}
imagejpeg($image, $bestand,100); // max. kwaliteit
imagedestroy($image);
imagedestroy($watermerk);
}else{
$watermerk_check='nee';
}
?>
Gewoon Opendir koppelen aan een thumbnail functie en time limit op 0 zetten als je er zoveel afbeeldingen hebt.