Einzelnen Beitrag anzeigen
Alt 19.09.2008, 12:41  
nikosch
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.233
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Hast den falschen Button erwischt. Zukünftig bitte ohne Direktformatierung...

PHP-Code:
<?PHP

// Variablen festlegen aus der Form
$userid $_COOKIE['user'];
$userpw $_COOKIE['pw'];
$gallery_desc $_POST["gallery_desc"];
$gallery_title $_POST["gallery_title"];
$thumb_auswahl $_POST["radio"];

// Dateigröße Maximum und Minimum
$b_min 10// 10 Byte Minimum
$b_max 3572864 // 3,5 MB Maximum

// Zeit Stamp Variablen festlegen
$timestamp time();
$datum date("d.m.Y",$timestamp);
$uhrzeit date("H:i",$timestamp);


// Die Gallery ID zufallsgenerieren um später die Gallery zu identifizieren
$gallery_id "";
$pool "abcdefghijklmnopqrstuvwxyz";
srand ((double)microtime()*1000000);
for(
$index 0$index 5$index++)
{
$gallery_id .= substr($pool,(rand()%(strlen ($pool))), 1);
}

// Der Temporäre Ordner wo die Bilder zuerst rein sollen.
mkdir("gallery/_temp/".$gallery_id."/");
mkdir("gallery/_temp/".$gallery_id."/big/");
mkdir("gallery/_temp/".$gallery_id."/small/");
$ordnername "gallery/_temp/".$gallery_id."/";

// Chmod für den Userordner 777 vergeben
chmod($ordnername0777);

$a 0;
// Nun die Dateien Uploaden
foreach($_FILES as $strFieldName => $arrPostFiles)
{
$a $a 1;
$type $arrPostFiles['type'];
// Wenn Datei nicht JPEG ist oder keine Datei gewählt wurde als Fehler ausgeben
if ($type != "image/jpg" and $type != "image/jpeg"){
$a $a 1;
echo 
"<center><br /><span class=\"grossschrift\"><font color=#FF4848><b>Keine Datei ausgew&auml;hlt oder das Format oder die Gr&ouml;&szlig;e stimmt nicht!</b></font></span><br /></center>"; }
else {
$strFileName $arrPostFiles['name'];
$strFileTemp $arrPostFiles['tmp_name'];
// Hier das Bild dann in den Temporären Ordner kopieren
copy ($strFileTemp$ordnername."big/bild".$a.".jpg");
$Grafikdatei $ordnername."big/bild".$a.".jpg";

$Bilddaten getimagesize($Grafikdatei);
$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];

// Hier das Bild mit Seitenverhältniss verkleinern auf 640xXXX
if($OriginalBreite $OriginalHoehe) {

$Bilddaten getimagesize($Grafikdatei);
$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];
$ThumbnailBreite 640;

// Den Thumbnail auch mit Seitenverhätniss verkleinern
if($OriginalBreite $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}

$Skalierungsfaktor $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe intval($OriginalHoehe/$Skalierungsfaktor);

}

else {


$ThumbnailHoehe 640;

if(
$OriginalHoehe $ThumbnailHoehe)
{
$ThumbnailBreite=$OriginalBreite;
}


$Skalierungsfaktor $OriginalHoehe/$ThumbnailHoehe;
$ThumbnailBreite intval($OriginalBreite/$Skalierungsfaktor);

}

// Hier die Grafik noch mit einem Wasserzeichen versehen...
$Originalgrafik ImageCreateFromJPEG($Grafikdatei);
$Thumbnailgrafik ImageCreateTrueColor($ThumbnailBreite$ThumbnailHoehe);
imagecopyresampled($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
ImageJPEG($Thumbnailgrafik$ordnername."big/bild".$a.".jpg");

$Grafik ImageCreateFromJPEG($ordnername."big/bild".$a.".jpg");
$Wasserzeichen ImageCreateFromPNG("http://www.php.de/images/watermark.png");
imagecopy($Grafik$Wasserzeichenimagesx($Grafik)-imagesx($Wasserzeichen), imagesy($Grafik)-imagesy($Wasserzeichen), 00imagesx($Wasserzeichen), imagesy($Wasserzeichen));
imagejpeg($Grafik$ordnername."big/bild".$a.".jpg");

$Bilddaten getimagesize($Grafikdatei);
$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];
$ThumbnailBreite 128;

if(
$OriginalBreite $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}

$Skalierungsfaktor $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe intval($OriginalHoehe/$Skalierungsfaktor);

$Originalgrafik imagecreatefromjpeg($Grafikdatei);
$Thumbnailgrafik imagecreatetruecolor($ThumbnailBreite$ThumbnailHoehe);
imagecopyresampled($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
imagejpeg($Thumbnailgrafik$ordnername."small/bild".$a.".jpg");

// Meldung geben das die Datei erfolgreich hochgeladen wurde
echo "<center><br /><span class=\"grossschrift\"><font color=#33FF33><b>Die Datei $strFileName wurde erfolgreich hochgeladen!</b></font></span><br /></center>";
}
}

// Ein Vorschau Bild erzeugen
$Grafikdatei $ordnername."big/bild".$thumb_auswahl.".jpg";
if (
file_exists($Grafikdatei)) { echo ""; }
else { 
$Grafikdatei $ordnername."big/bild1.jpg"; }
$Bilddaten = @getimagesize($Grafikdatei);

$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];
$ThumbnailBreite 150;

if(
$OriginalBreite $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}

$Skalierungsfaktor $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe = @intval($OriginalHoehe/$Skalierungsfaktor);

$Originalgrafik imagecreatefromjpeg($Grafikdatei);
$Thumbnailgrafik imagecreatetruecolor($ThumbnailBreite$ThumbnailHoehe);
imagecopyresampled($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
imagejpeg($Thumbnailgrafik$ordnername."preview.jpg");

// Nun soll zur Sicherheit gezählt werden ob sich auch die Dateien im Ordner befinden... Wenn nicht Weiterleiten über den Meta Tag und mit die den code abbrechen
$anzahl_bilder2 count(glob($ordnername."/big/*jpg"));
if(
$anzahl_bilder2 <= "0") { echo "<meta http-equiv='refresh' content='sekunden_bis_umleitung_erfolgt;URL=profil e_gallery_create_error.php?error=nopics'>"; die; }

// Ansonsten nun den richtigen Ordner erstellen und die dateien dort hin kopieren
mkdir("gallery/".$gallery_id."/");
mkdir("gallery/".$gallery_id."/big/");
mkdir("gallery/".$gallery_id."/small/");
// Chmod f&uuml;r den Userordner 777 vergeben
chmod("gallery/".$gallery_id."/"0777);

copy($ordnername."preview.jpg""gallery/".$gallery_id."/preview.jpg");

$Pfad $ordnername."/big/";
if(
$Verzeichniszeiger opendir($Pfad)) {
while(
$Datei readdir($Verzeichniszeiger)) {
if(
$Pfad.$Datei != "." && $Datei != "..") {

@
copy($Pfad.$Datei"gallery/".$gallery_id."/big/".$Datei);

}
}
closedir($Verzeichniszeiger);
}

$Pfad $ordnername."/small/";
if(
$Verzeichniszeiger opendir($Pfad)) {
while(
$Datei readdir($Verzeichniszeiger)) {
if(
$Pfad.$Datei != "." && $Datei != "..") {

@
copy($Pfad.$Datei"gallery/".$gallery_id."/small/".$Datei);

}
}
closedir($Verzeichniszeiger);
}

// UNd nun noch ein paar Daten in die Datenbank eintragen
$abfrage1 "SELECT user_id, user_passwort, user_nickname FROM users WHERE user_id = '$userid'";
$ergebniss1 mysql_query($abfrage1);

while (
$row mysql_fetch_array($ergebniss1MYSQL_NUM)) {

// Die Userdaten Updaten
mysql_query("INSERT INTO gallery (user_id, user_nick, gallery_id, gallery_title, gallery_desc, gallery_datum, anzahl_bilder) VALUES ('$userid', '$row[2]', '$gallery_id', '$gallery_title', '$gallery_desc', '$datum', '$anzahl_bilder')");

}

?> "> <?PHP

// Variablen festlegen aus der Form
$userid $_COOKIE['user'];
$userpw $_COOKIE['pw'];
$gallery_desc $_POST["gallery_desc"];
$gallery_title $_POST["gallery_title"];
$thumb_auswahl $_POST["radio"];

// Dateigröße Maximum und Minimum
$b_min 10// 10 Byte Minimum
$b_max 3572864 // 3,5 MB Maximum

// Zeit Stamp Variablen festlegen
$timestamp time();
$datum date("d.m.Y",$timestamp);
$uhrzeit date("H:i",$timestamp);


// Die Gallery ID zufallsgenerieren um später die Gallery zu identifizieren
$gallery_id "";
$pool "abcdefghijklmnopqrstuvwxyz";
srand ((double)microtime()*1000000);
for(
$index 0$index 5$index++)
{
$gallery_id .= substr($pool,(rand()%(strlen ($pool))), 1);
}

// Der Temporäre Ordner wo die Bilder zuerst rein sollen.
mkdir("gallery/_temp/".$gallery_id."/");
mkdir("gallery/_temp/".$gallery_id."/big/");
mkdir("gallery/_temp/".$gallery_id."/small/");
$ordnername "gallery/_temp/".$gallery_id."/";

// Chmod für den Userordner 777 vergeben
chmod($ordnername0777);

$a 0;
// Nun die Dateien Uploaden
foreach($_FILES as $strFieldName => $arrPostFiles)
{
$a $a 1;
$type $arrPostFiles['type'];
// Wenn Datei nicht JPEG ist oder keine Datei gewählt wurde als Fehler ausgeben
if ($type != "image/jpg" and $type != "image/jpeg"){
$a $a 1;
echo 
"<center><br /><span class=\"grossschrift\"><font color=#FF4848><b>Keine Datei ausgew&auml;hlt oder das Format oder die Gr&ouml;&szlig;e stimmt nicht!</b></font></span><br /></center>"; }
else {
$strFileName $arrPostFiles['name'];
$strFileTemp $arrPostFiles['tmp_name'];
// Hier das Bild dann in den Temporären Ordner kopieren
copy ($strFileTemp$ordnername."big/bild".$a.".jpg");
$Grafikdatei $ordnername."big/bild".$a.".jpg";

$Bilddaten getimagesize($Grafikdatei);
$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];

// Hier das Bild mit Seitenverhältniss verkleinern auf 640xXXX
if($OriginalBreite $OriginalHoehe) {

$Bilddaten getimagesize($Grafikdatei);
$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];
$ThumbnailBreite 640;

// Den Thumbnail auch mit Seitenverhätniss verkleinern
if($OriginalBreite $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}

$Skalierungsfaktor $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe intval($OriginalHoehe/$Skalierungsfaktor);

}

else {


$ThumbnailHoehe 640;

if(
$OriginalHoehe $ThumbnailHoehe)
{
$ThumbnailBreite=$OriginalBreite;
}


$Skalierungsfaktor $OriginalHoehe/$ThumbnailHoehe;
$ThumbnailBreite intval($OriginalBreite/$Skalierungsfaktor);

}

// Hier die Grafik noch mit einem Wasserzeichen versehen...
$Originalgrafik ImageCreateFromJPEG($Grafikdatei);
$Thumbnailgrafik ImageCreateTrueColor($ThumbnailBreite$ThumbnailHoehe);
imagecopyresampled($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
ImageJPEG($Thumbnailgrafik$ordnername."big/bild".$a.".jpg");

$Grafik ImageCreateFromJPEG($ordnername."big/bild".$a.".jpg");
$Wasserzeichen ImageCreateFromPNG("http://www.php.de/images/watermark.png");
imagecopy($Grafik$Wasserzeichenimagesx($Grafik)-imagesx($Wasserzeichen), imagesy($Grafik)-imagesy($Wasserzeichen), 00imagesx($Wasserzeichen), imagesy($Wasserzeichen));
imagejpeg($Grafik$ordnername."big/bild".$a.".jpg");

$Bilddaten getimagesize($Grafikdatei);
$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];
$ThumbnailBreite 128;

if(
$OriginalBreite $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}

$Skalierungsfaktor $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe intval($OriginalHoehe/$Skalierungsfaktor);

$Originalgrafik imagecreatefromjpeg($Grafikdatei);
$Thumbnailgrafik imagecreatetruecolor($ThumbnailBreite$ThumbnailHoehe);
imagecopyresampled($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
imagejpeg($Thumbnailgrafik$ordnername."small/bild".$a.".jpg");

// Meldung geben das die Datei erfolgreich hochgeladen wurde
echo "<center><br /><span class=\"grossschrift\"><font color=#33FF33><b>Die Datei $strFileName wurde erfolgreich hochgeladen!</b></font></span><br /></center>";
}
}

// Ein Vorschau Bild erzeugen
$Grafikdatei $ordnername."big/bild".$thumb_auswahl.".jpg";
if (
file_exists($Grafikdatei)) { echo ""; }
else { 
$Grafikdatei $ordnername."big/bild1.jpg"; }
$Bilddaten = @getimagesize($Grafikdatei);

$OriginalBreite $Bilddaten[0];
$OriginalHoehe $Bilddaten[1];
$ThumbnailBreite 150;

if(
$OriginalBreite $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}

$Skalierungsfaktor $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe = @intval($OriginalHoehe/$Skalierungsfaktor);

$Originalgrafik imagecreatefromjpeg($Grafikdatei);
$Thumbnailgrafik imagecreatetruecolor($ThumbnailBreite$ThumbnailHoehe);
imagecopyresampled($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
imagejpeg($Thumbnailgrafik$ordnername."preview.jpg");

// Nun soll zur Sicherheit gezählt werden ob sich auch die Dateien im Ordner befinden... Wenn nicht Weiterleiten über den Meta Tag und mit die den code abbrechen
$anzahl_bilder2 count(glob($ordnername."/big/*jpg"));
if(
$anzahl_bilder2 <= "0") { echo "<meta http-equiv='refresh' content='sekunden_bis_umleitung_erfolgt;URL=profil e_gallery_create_error.php?error=nopics'>"; die; }

// Ansonsten nun den richtigen Ordner erstellen und die dateien dort hin kopieren
mkdir("gallery/".$gallery_id."/");
mkdir("gallery/".$gallery_id."/big/");
mkdir("gallery/".$gallery_id."/small/");
// Chmod f&uuml;r den Userordner 777 vergeben
chmod("gallery/".$gallery_id."/"0777);

copy($ordnername."preview.jpg""gallery/".$gallery_id."/preview.jpg");

$Pfad $ordnername."/big/";
if(
$Verzeichniszeiger opendir($Pfad)) {
while(
$Datei readdir($Verzeichniszeiger)) {
if(
$Pfad.$Datei != "." && $Datei != "..") {

@
copy($Pfad.$Datei"gallery/".$gallery_id."/big/".$Datei);

}
}
closedir($Verzeichniszeiger);
}

$Pfad $ordnername."/small/";
if(
$Verzeichniszeiger opendir($Pfad)) {
while(
$Datei readdir($Verzeichniszeiger)) {
if(
$Pfad.$Datei != "." && $Datei != "..") {

@
copy($Pfad.$Datei"gallery/".$gallery_id."/small/".$Datei);

}
}
closedir($Verzeichniszeiger);
}

// UNd nun noch ein paar Daten in die Datenbank eintragen
$abfrage1 "SELECT user_id, user_passwort, user_nickname FROM users WHERE user_id = '$userid'";
$ergebniss1 mysql_query($abfrage1);

while (
$row mysql_fetch_array($ergebniss1MYSQL_NUM)) {

// Die Userdaten Updaten
mysql_query("INSERT INTO gallery (user_id, user_nick, gallery_id, gallery_title, gallery_desc, gallery_datum, anzahl_bilder) VALUES ('$userid', '$row[2]', '$gallery_id', '$gallery_title', '$gallery_desc', '$datum', '$anzahl_bilder')");

}

?>
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online