Nieuw lid |
|
Ik heb het volgende script:
<?php
if($_SERVER['REQUEST_METHOD']=='POST')
{
$uploadpad = 'bestanden/';
$nieuwenaam = $_POST['txtRegistratie'] ;
$msg = '';
$img = '';
$foto = $_FILES['filBestand'];
if ( ( $foto['name']== '' ) )
{
$msg = 'Geen foto geselecteerd!<br>';
}
else
{
$size = $foto['size'];
if ( $size > 3024000 )
{
$msg = 'Bestand is $size bytes.<br>(maximum toegelaten is 3024000 bytes)<br>';
}
else
{
if ( $foto ['type'] == 'image/jpeg' || $foto['type'] == 'image/pjpeg' )
{
$n = 0;
while ( file_exists ( $uploadpad . $nieuwenaam . $n .'.jpg' ) )
{
$n++;
}
$nieuwenaam = $uploadpad . $nieuwenaam . $n .'.jpg';
$watermerk = "Copyright by ".$_POST['lstNaam']." // ".$_POST['txtDatumdag']."-".$_POST['txtDatummaand']."-".$_POST['txtDatumjaar']." // ".$_POST['txtLocatie']." // ".$_POST['txtRegistratie']." // ".$_POST['txtToestel']." // ".$_POST['txtMaatschappij'];
$img = imagecreatefromjpeg ( $foto['tmp_name'] );
$breedte = imagesx ( $img );
$hoogte = imagesy ( $img );
$copyright = imagecreatetruecolor ( $breedte , 30 );
$kleur = imagecolorallocate ( $copyright , 255 , 255 , 255 );
imagestring ( $copyright , 6 , 7 , 2 , $watermerk , $kleur );
imagecopy ( $img , $copyright , 0 , $hoogte - 20 , 0 , 0 , $breedte , 20 );
imagejpeg ( $img , $nieuwenaam , 100 );
chmod ( $nieuwenaam , 0777 );
$img= "<a href='$nieuwenaam' target='_blank'><img border='0' src='$nieuwenaam' width='300'></a>";
$msg= "<font color='green'><B>Het bestand is succesvol opgeslagen!</B></font><br><BR>Ga naar de <a href='./gallery'>gallerij</a> voor meer fotos";
unset($_POST);
}
else
{
$msg="<font color='red'><B>Het bestandsformaat wordt niet ondersteund.<br> Alleen .jpg is toegelaten.</B></font><br>";
}
}
}
}
?>
<?php if($_SERVER['REQUEST_METHOD']=='POST') { $uploadpad = 'bestanden/'; $nieuwenaam = $_POST['txtRegistratie'] ; $msg = ''; $img = ''; $foto = $_FILES['filBestand']; if ( ( $foto['name']== '' ) ) { $msg = 'Geen foto geselecteerd!<br>'; } else { $size = $foto['size']; if ( $size > 3024000 ) { $msg = 'Bestand is $size bytes.<br>(maximum toegelaten is 3024000 bytes)<br>'; } else { if ( $foto ['type'] == 'image/jpeg' || $foto['type'] == 'image/pjpeg' ) { $n = 0; while ( file_exists ( $uploadpad . $nieuwenaam . $n .'.jpg' ) ) { $n++; } $nieuwenaam = $uploadpad . $nieuwenaam . $n .'.jpg'; $watermerk = "Copyright by ".$_POST['lstNaam']." // ".$_POST['txtDatumdag']."-".$_POST['txtDatummaand']."-".$_POST['txtDatumjaar']." // ".$_POST['txtLocatie']." // ".$_POST['txtRegistratie']." // ".$_POST['txtToestel']." // ".$_POST['txtMaatschappij']; $img = imagecreatefromjpeg ( $foto['tmp_name'] ); $breedte = imagesx ( $img ); $hoogte = imagesy ( $img ); $copyright = imagecreatetruecolor ( $breedte , 30 ); $kleur = imagecolorallocate ( $copyright , 255 , 255 , 255 ); imagestring ( $copyright , 6 , 7 , 2 , $watermerk , $kleur ); imagecopy ( $img , $copyright , 0 , $hoogte - 20 , 0 , 0 , $breedte , 20 ); imagejpeg ( $img , $nieuwenaam , 100 ); chmod ( $nieuwenaam , 0777 ); $img= "<a href='$nieuwenaam' target='_blank'><img border='0' src='$nieuwenaam' width='300'></a>"; $msg= "<font color='green'><B>Het bestand is succesvol opgeslagen!</B></font><br><BR>Ga naar de <a href='./gallery'>gallerij</a> voor meer fotos"; } else { $msg="<font color='red'><B>Het bestandsformaat wordt niet ondersteund.<br> Alleen .jpg is toegelaten.</B></font><br>"; } } } } ?>
Dit zorgt ervoor dat de gegevens die ik invul in het formulier naar een de foto die ik upload wordt geschreven, dus dat er een copyright balkje onder komt te staan.
Nu wil ik tijdens het uploaden de foto resizen naar 800x...... (breedte dus 800px). Maar hoe doe je zoiets? Via google kwam ik het volgende script tegen op deze site:
http://www.site...amp;id=169
Dit heeft ongeveer dezelfde opbouw als mijn script, alleen het samenvoegen lukt me niet echt.
Ik heb het al geprobeerd, maar op gegeven moment loop ik vast.
Ik heb het volgende voor elkaar gekregen:
<?
if (isset($_FILES['bestand'])) {
//De groote van het bestand vergelijken met het maximum
if ($_FILES['bestand']['type'] > 302400){
exit("Je bestand " . $_FILES['bestand']['size'] . " bytes, het maximum toegelaten is 302400
bytes");
}
if($_FILES['bestand']['type'] == "image/jpeg" || $_FILES['bestand']['type'] == "image/pjpeg") {
$x = strtolower(substr($_FILES['bestand']['name'], -3));
// De naam van de file veranderen in bv. image0
$file_name = $_POST['txtRegistratie'];
$n = 0;
// Check of file al bestaat, zo ja, filename verhogen
while (file_exists('bestanden/' . $file_name . $n .'.' . $x))
{
$n = $n + 1;
}
$file_name = $file_name . $n;
move_uploaded_file($_FILES['bestand']['tmp_name'],'bestanden/' . $file_name . '.' . $x);
chmod ('bestanden/' . $file_name . '.' . $x, 0777);
//kiezen
$b = imagecreatefromjpeg('bestanden/' . $file_name . '.' . $x) or die ("Jpg probleempje");
$watermerk = "Copyright by ".$_POST['lstNaam']." // ".$_POST['txtDatumdag']."-".$_POST['txtDatummaand']."-".$_POST
['txtDatumjaar']." // ".$_POST['txtLocatie']." // ".$_POST['txtRegistratie']." // ".$_POST['txtToestel']." //
".$_POST['txtMaatschappij'];
$copyright = imagecreatetruecolor ( $breedte , 30 );
$kleur = imagecolorallocate ( $copyright , 255 , 255 , 255 );
imagestring ( $copyright , 6 , 7 , 2 , $watermerk , $kleur );
imagecopy ( $img , $copyright , 0 , $hoogte - 20 , 0 , 0 , $breedte , 20 );
imagejpeg ( $img , $nieuwenaam , 100 );
$bx = imagesx($b); // Bron breedte
$by = imagesy($b); // bron hoogte
$lm = $b;
$width=800;
$temp=$bx/800;
$height=$by/$temp;
if ($bx > $width) {
$lm1 = imagecreatetruecolor($width ,$height) or die ("Probleem met maken van plaatje jpg");
imagecopyresampled($lm1, $lm, 0, 0, 0, 0, $width, $height, $bx, $by);
Imagejpeg($lm1,'bestanden/' . $file_name . '.' . $x,100); //100 is jpg kwaliteit
imageDestroy($lm1);
imageDestroy($lm);
}
echo "Het bestand is succesvol opgeslagen";
} else {
echo "Het bestands formaat word niet ondersteund.<br> Alleen jpg word toegelaten.";
}
}
?>
<? if (isset($_FILES['bestand'])) { //De groote van het bestand vergelijken met het maximum if ($_FILES['bestand']['type'] > 302400){ exit("Je bestand " . $_FILES['bestand']['size'] . " bytes, het maximum toegelaten is 302400 bytes"); } if($_FILES['bestand']['type'] == "image/jpeg" || $_FILES['bestand']['type'] == "image/pjpeg") { // De naam van de file veranderen in bv. image0 $file_name = $_POST['txtRegistratie']; $n = 0; // Check of file al bestaat, zo ja, filename verhogen while (file_exists('bestanden/' . $file_name . $n .'.' . $x)) { $n = $n + 1; } $file_name = $file_name . $n; chmod ('bestanden/' . $file_name . '.' . $x, 0777); //kiezen $b = imagecreatefromjpeg ('bestanden/' . $file_name . '.' . $x) or die ("Jpg probleempje"); $watermerk = "Copyright by ".$_POST['lstNaam']." // ".$_POST['txtDatumdag']."-".$_POST['txtDatummaand']."-".$_POST ['txtDatumjaar']." // ".$_POST['txtLocatie']." // ".$_POST['txtRegistratie']." // ".$_POST['txtToestel']." // ".$_POST['txtMaatschappij']; $copyright = imagecreatetruecolor ( $breedte , 30 ); $kleur = imagecolorallocate ( $copyright , 255 , 255 , 255 ); imagestring ( $copyright , 6 , 7 , 2 , $watermerk , $kleur ); imagecopy ( $img , $copyright , 0 , $hoogte - 20 , 0 , 0 , $breedte , 20 ); imagejpeg ( $img , $nieuwenaam , 100 ); $bx = imagesx($b); // Bron breedte $by = imagesy($b); // bron hoogte $lm = $b; $width=800; $temp=$bx/800; $height=$by/$temp; if ($bx > $width) { $lm1 = imagecreatetruecolor ($width ,$height) or die ("Probleem met maken van plaatje jpg"); imagecopyresampled($lm1, $lm, 0, 0, 0, 0, $width, $height, $bx, $by); Imagejpeg($lm1,'bestanden/' . $file_name . '.' . $x,100); //100 is jpg kwaliteit imageDestroy($lm1); imageDestroy($lm); } echo "Het bestand is succesvol opgeslagen"; } else { echo "Het bestands formaat word niet ondersteund.<br> Alleen jpg word toegelaten."; } } ?>
Kan iemand mij verder helpen?
|