upload-watermerk-admin
Gesponsorde koppelingen
PHP script bestanden
--------------------- config.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
/*
CREATE TABLE `foto_log` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`bestand` VARCHAR( 255 ) NOT NULL ,
`zien` ENUM( 'ja', 'nee' ) NOT NULL DEFAULT 'nee',
`datum` INT( 10 ) NOT NULL ,
`ip` VARCHAR( 32 ) NOT NULL
) ENGINE = MYISAM ;
*/
//--- verbinding maken met database
$username = 'username';
$password = '****';
$host = 'localhost';
$database = 'Database';
if(mysql_connect($host,$username,$password))
{
if(!mysql_select_db($database))
{
echo 'Sorry, ik kon helaas geen verbinding maken met de databasetabel!';
}
}else{
echo 'Sorry, ik kon helaas geen verbinding maken met de databaseserver!';
}
?>
/*
CREATE TABLE `foto_log` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`bestand` VARCHAR( 255 ) NOT NULL ,
`zien` ENUM( 'ja', 'nee' ) NOT NULL DEFAULT 'nee',
`datum` INT( 10 ) NOT NULL ,
`ip` VARCHAR( 32 ) NOT NULL
) ENGINE = MYISAM ;
*/
//--- verbinding maken met database
$username = 'username';
$password = '****';
$host = 'localhost';
$database = 'Database';
if(mysql_connect($host,$username,$password))
{
if(!mysql_select_db($database))
{
echo 'Sorry, ik kon helaas geen verbinding maken met de databasetabel!';
}
}else{
echo 'Sorry, ik kon helaas geen verbinding maken met de databaseserver!';
}
?>
----------------------- upload.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
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
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
<?
include "config.php";
//--- zet path
$path = "upload/"; // met slash en chmod 777! (of lager ivm veiligheid)
//--- zet max. kb's
$maxkb = 2097152; // 2097152 gedeelt door 1024 is 2048kb = 2mb. DUS 1024 keer <aantal kb's> = $maxkb
//--- watermerk path
$path_watermerk = "watermerk.png"; // dit MOET een transparante .png zijn!!!
//--- bekijk of het bestand kleiner of net zo groot als 40 kb is en of de foto wel geupload is en of extentie wel .jpg of .jpeg is!
if ($_POST['submit'] && $_FILES['userfile']['size'] <= $maxkb && !file_exists($path . $_FILES['userfile']['name']) && $_FILES['userfile']['size'] && is_uploaded_file($_FILES['userfile']['tmp_name']) && (strtolower(substr($_FILES['userfile']['name'], -3)) == "jpg" || strtolower(substr($_FILES['userfile']['name'], -4)) == "jpeg"))
{
//--- upload image naar $path
move_uploaded_file($_FILES['userfile']['tmp_name'], $path . $_FILES['userfile']['name']);
$bestand = $_FILES['userfile']['name'];
$ip = $_SERVER['REMOTE_ADDR'];
mysql_query("INSERT INTO foto_log (bestand, datum, ip) VALUES ('".$bestand."',NOW(),'".$ip."')") or die(mysql_error());
//--- transparante watermerk
$watermerk = imagecreatefrompng($path_watermerk);
$watermerk_width = imagesx($watermerk);
$watermerk_height = imagesy($watermerk);
imagecreatetruecolor($watermerk_width, $watermerk_height);
//--- orriginele image
$image = imagecreatefromjpeg($path . $_FILES['userfile']['name']);
$size = getimagesize($path . $_FILES['userfile']['name']);
//--- defineer de coordinaten van het watermerk - dit voorbeeld is links onder
/*
bijv: geuploade plaatje: 180 x 130
watermerk groote: 50 x 16
berekening voor coordinaten 'x' as:
180 (breedte geuploade foto) - 50 (breedte watermerk) - 5 (ruimte rechts) = 125 pixels vanaf links
berekening voor 'y' as:
130 (hoogte geuploade foto) - 16 (hoogte watermerk) - 5 (ruimte onder) = 109 pixels vanaf boven
*/
//--- dit is voor rechts boven
$xas = $size[0] - $watermerk_width - 5;
$yas = 5;
//--- overschrijf het 'geuploade bestand' en voeg watermerk toe
imagecopymerge($image, $watermerk, $xas, $yas, 0, 0, $watermerk_width, $watermerk_height, 100);
//--- upload image
imagejpeg($image, $path . $_FILES['userfile']['name']); // max. kwaliteit
imagedestroy($image);
imagedestroy($watermerk);
echo "De foto is geupload.<br />";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"2; URL=upload.php\">";
}
else
{
//--- errors
if ($_POST['submit'])
{
if (file_exists($path . $_FILES['userfile']['name']) && $_FILES['userfile']['name'])
echo "<b>Error! Bestand bestaat al, hernoem de foto en probeer het opnieuw.</b><p>";
elseif ($_FILES['userfile']['size'] > $maxkb)
echo "<b>Error! Bestand is groter dan " . $maxkb . "bytes. Verklein de foto en probeer het opnieuw</b><p>";
elseif (strtolower(substr($_FILES['userfile']['name'], -3)) != "jpg" && strtolower(substr($_FILES['userfile']['name'], -4)) != "jpeg")
echo "<b>Error! De foto heeft een verkeerde bestandsnaam. Er mogen alleen foto's geupload worden met als bestandsnaam .jpg.</b><p>";
else
echo "<b>Error! De foto is niet goed geupload of er is helemaal geen foto geupload. Probeer het opnieuw.</b><p>";
}
else
echo "Selecteer een foto om te uploaden. LET OP: hij mag NIET groter zijn dan 2MB en moet in je .jpg formaat zijn.<p>";
//--- formulier met enctype multipart/form-data ivm de file upload
echo "<form method=\"post\" action=\"upload.php\" enctype=\"multipart/form-data\">";
echo "<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"" . $maxkb . "\" />";
echo "Bestand:<br />";
echo "<input type=\"file\" name=\"userfile\" value=\"" . $_POST['userfile'] . "\" /><br />";
echo "<input type=\"submit\" name=\"submit\" value=\"uploaden\" />";
echo "</form>";
}
?>
include "config.php";
//--- zet path
$path = "upload/"; // met slash en chmod 777! (of lager ivm veiligheid)
//--- zet max. kb's
$maxkb = 2097152; // 2097152 gedeelt door 1024 is 2048kb = 2mb. DUS 1024 keer <aantal kb's> = $maxkb
//--- watermerk path
$path_watermerk = "watermerk.png"; // dit MOET een transparante .png zijn!!!
//--- bekijk of het bestand kleiner of net zo groot als 40 kb is en of de foto wel geupload is en of extentie wel .jpg of .jpeg is!
if ($_POST['submit'] && $_FILES['userfile']['size'] <= $maxkb && !file_exists($path . $_FILES['userfile']['name']) && $_FILES['userfile']['size'] && is_uploaded_file($_FILES['userfile']['tmp_name']) && (strtolower(substr($_FILES['userfile']['name'], -3)) == "jpg" || strtolower(substr($_FILES['userfile']['name'], -4)) == "jpeg"))
{
//--- upload image naar $path
move_uploaded_file($_FILES['userfile']['tmp_name'], $path . $_FILES['userfile']['name']);
$bestand = $_FILES['userfile']['name'];
$ip = $_SERVER['REMOTE_ADDR'];
mysql_query("INSERT INTO foto_log (bestand, datum, ip) VALUES ('".$bestand."',NOW(),'".$ip."')") or die(mysql_error());
//--- transparante watermerk
$watermerk = imagecreatefrompng($path_watermerk);
$watermerk_width = imagesx($watermerk);
$watermerk_height = imagesy($watermerk);
imagecreatetruecolor($watermerk_width, $watermerk_height);
//--- orriginele image
$image = imagecreatefromjpeg($path . $_FILES['userfile']['name']);
$size = getimagesize($path . $_FILES['userfile']['name']);
//--- defineer de coordinaten van het watermerk - dit voorbeeld is links onder
/*
bijv: geuploade plaatje: 180 x 130
watermerk groote: 50 x 16
berekening voor coordinaten 'x' as:
180 (breedte geuploade foto) - 50 (breedte watermerk) - 5 (ruimte rechts) = 125 pixels vanaf links
berekening voor 'y' as:
130 (hoogte geuploade foto) - 16 (hoogte watermerk) - 5 (ruimte onder) = 109 pixels vanaf boven
*/
//--- dit is voor rechts boven
$xas = $size[0] - $watermerk_width - 5;
$yas = 5;
//--- overschrijf het 'geuploade bestand' en voeg watermerk toe
imagecopymerge($image, $watermerk, $xas, $yas, 0, 0, $watermerk_width, $watermerk_height, 100);
//--- upload image
imagejpeg($image, $path . $_FILES['userfile']['name']); // max. kwaliteit
imagedestroy($image);
imagedestroy($watermerk);
echo "De foto is geupload.<br />";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"2; URL=upload.php\">";
}
else
{
//--- errors
if ($_POST['submit'])
{
if (file_exists($path . $_FILES['userfile']['name']) && $_FILES['userfile']['name'])
echo "<b>Error! Bestand bestaat al, hernoem de foto en probeer het opnieuw.</b><p>";
elseif ($_FILES['userfile']['size'] > $maxkb)
echo "<b>Error! Bestand is groter dan " . $maxkb . "bytes. Verklein de foto en probeer het opnieuw</b><p>";
elseif (strtolower(substr($_FILES['userfile']['name'], -3)) != "jpg" && strtolower(substr($_FILES['userfile']['name'], -4)) != "jpeg")
echo "<b>Error! De foto heeft een verkeerde bestandsnaam. Er mogen alleen foto's geupload worden met als bestandsnaam .jpg.</b><p>";
else
echo "<b>Error! De foto is niet goed geupload of er is helemaal geen foto geupload. Probeer het opnieuw.</b><p>";
}
else
echo "Selecteer een foto om te uploaden. LET OP: hij mag NIET groter zijn dan 2MB en moet in je .jpg formaat zijn.<p>";
//--- formulier met enctype multipart/form-data ivm de file upload
echo "<form method=\"post\" action=\"upload.php\" enctype=\"multipart/form-data\">";
echo "<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"" . $maxkb . "\" />";
echo "Bestand:<br />";
echo "<input type=\"file\" name=\"userfile\" value=\"" . $_POST['userfile'] . "\" /><br />";
echo "<input type=\"submit\" name=\"submit\" value=\"uploaden\" />";
echo "</form>";
}
?>
---------------------------- admin.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
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
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
<script language="javascript">
function confirmSubmit(question)
{
if (confirm(question))
return true ;
else
return false ;
}
</script>
<?php
include "config.php";
// Edit functie
if($_GET["id"]) {
if(!$upload = mysql_fetch_object(mysql_query("SELECT * FROM foto_log WHERE ID = {$_GET["id"]}"))){
echo("De foto is niet gevonden!");
echo "<META HTTP-EQUIV=Refresh CONTENT=\"2; URL=admin.php\">";
}
elseif($upload->zien == 'ja'){
mysql_query("UPDATE foto_log SET zien = 'nee' WHERE ID = {$_GET["id"]}");
echo "Bewerkt in niet zien.";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}else{
mysql_query("UPDATE foto_log SET zien = 'ja' WHERE ID = {$_GET["id"]}");
echo "Bewerkt in zien";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}
// Delete functie
}
elseif(isset($_GET['delete'])) {
if(file_exists("upload/".$_GET['delete'])){
unlink("upload/".$_GET['delete']);
mysql_query("DELETE FROM foto_log WHERE bestand = '{$_GET["delete"]}'");
echo "Het bestand <b>".$_GET['delete']."</b> is succesvol verwijderd.<br />\n";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}else{
mysql_query("DELETE FROM foto_log WHERE bestand = '{$_GET["delete"]}'");
echo "Het bestand <b>".$_GET['delete']."</b> bestaat niet.<br />\n";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}
}
$fotolog = mysql_query("SELECT * FROM foto_log ORDER BY datum") or die(mysql_error());
echo("<table cellpadding=\"3\" cellspacing=\"3\"><tr><td><b>Afbeelding:</b></td><td><b>Zien:</b></td><td> </td><td> </td></tr>\n");
while($upload = mysql_fetch_object($fotolog)) {
echo("<tr><td><a href=\"upload/" .$upload->bestand. "\" target=\"_new\"><img src=\"upload/" .$upload->bestand. "\" width=\"70\" height=\"60\" alt=\"" .$upload->bestand. "\" border=\"1\"></a></td>
<td>" .$upload->zien. "</td>
<td><a href=\"?id=" .$upload->id. "\">Edit</a></td>
<td><a onClick=\"return confirmSubmit('Delete file \'" .$upload->bestand. "\' ?')\" href=\"admin.php?delete=" .$upload->bestand. "\">Delete</a>
</td><td>\n");
}
echo "</table>\n";
?>
function confirmSubmit(question)
{
if (confirm(question))
return true ;
else
return false ;
}
</script>
<?php
include "config.php";
// Edit functie
if($_GET["id"]) {
if(!$upload = mysql_fetch_object(mysql_query("SELECT * FROM foto_log WHERE ID = {$_GET["id"]}"))){
echo("De foto is niet gevonden!");
echo "<META HTTP-EQUIV=Refresh CONTENT=\"2; URL=admin.php\">";
}
elseif($upload->zien == 'ja'){
mysql_query("UPDATE foto_log SET zien = 'nee' WHERE ID = {$_GET["id"]}");
echo "Bewerkt in niet zien.";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}else{
mysql_query("UPDATE foto_log SET zien = 'ja' WHERE ID = {$_GET["id"]}");
echo "Bewerkt in zien";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}
// Delete functie
}
elseif(isset($_GET['delete'])) {
if(file_exists("upload/".$_GET['delete'])){
unlink("upload/".$_GET['delete']);
mysql_query("DELETE FROM foto_log WHERE bestand = '{$_GET["delete"]}'");
echo "Het bestand <b>".$_GET['delete']."</b> is succesvol verwijderd.<br />\n";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}else{
mysql_query("DELETE FROM foto_log WHERE bestand = '{$_GET["delete"]}'");
echo "Het bestand <b>".$_GET['delete']."</b> bestaat niet.<br />\n";
echo "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=admin.php\">";
}
}
$fotolog = mysql_query("SELECT * FROM foto_log ORDER BY datum") or die(mysql_error());
echo("<table cellpadding=\"3\" cellspacing=\"3\"><tr><td><b>Afbeelding:</b></td><td><b>Zien:</b></td><td> </td><td> </td></tr>\n");
while($upload = mysql_fetch_object($fotolog)) {
echo("<tr><td><a href=\"upload/" .$upload->bestand. "\" target=\"_new\"><img src=\"upload/" .$upload->bestand. "\" width=\"70\" height=\"60\" alt=\"" .$upload->bestand. "\" border=\"1\"></a></td>
<td>" .$upload->zien. "</td>
<td><a href=\"?id=" .$upload->id. "\">Edit</a></td>
<td><a onClick=\"return confirmSubmit('Delete file \'" .$upload->bestand. "\' ?')\" href=\"admin.php?delete=" .$upload->bestand. "\">Delete</a>
</td><td>\n");
}
echo "</table>\n";
?>
------------------------- zien.php -------------------------
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
include "config.php";
$fotolog = mysql_query("SELECT * FROM foto_log WHERE zien = 'ja' ORDER BY datum") or die(mysql_error());
while($upload = mysql_fetch_object($fotolog)) {
echo("<img src=\"upload/" .$upload->bestand. "\"><br />\n");
}
?>
include "config.php";
$fotolog = mysql_query("SELECT * FROM foto_log WHERE zien = 'ja' ORDER BY datum") or die(mysql_error());
while($upload = mysql_fetch_object($fotolog)) {
echo("<img src=\"upload/" .$upload->bestand. "\"><br />\n");
}
?>