<?php
session_start();
?> 
<?php
include("include/include.php");

if(!isset($_SESSION["username"])){
   echo "Bitte erst einloggen";
   exit;
}
?> 
<h3>Hochladen pics front</h3> 
<hr />
Bitte noch nich benutzen noch in bearbeitung nur mal ein versuch 
<?php
    error_reporting(E_ALL);

    // Funktionen definieren
    // -----------------------------------------------
    function checkUpload($myFILE, $file_extensions, $mime_types){
        $errors = array();
        // Uploadfehler prüfen
        switch ($myFILE['error']){
            case 3: $errors[] = "Die Datei wurde nur teilweise hochgeladen.";
                    break;
            case 4: $errors[] = "Es wurde keine Datei ausgewählt.".$myFILE['size']."";
                    return $errors;
                    break;
            default : break;
        }
        // MIME-Type prüfen
        if(count($mime_types)!=0 AND !in_array(strtolower($myFILE['type']), $mime_types)){
            $fehler = "Falscher MIME-Type (".$myFILE['type'].").<br />".
                      "Erlaubte Typen sind:<br />\n";
            foreach($mime_types as $type)
                $fehler .= " - ".$type."\n<br />";
            $errors[] = $fehler;
        }
		
        // Dateiendung prüfen
        if($myFILE['name']=='' OR (count($file_extensions)!=0 AND !in_array(strtolower(getExtension($myFILE['name'])), $file_extensions))){
			$fehler = "Falsche Dateiendung (".getExtension($myFILE['name']).").<br />".
                      "Erlaubte Endungen sind:<br />\n";
            foreach($file_extensions as $extension)
                $fehler .= " - ".$extension."\n<br />";
            $errors[] = $fehler;
        }
        return $errors;
    }

    // gibt die Dateiendung einer Datei zurück
    function getExtension ($filename){
        if(strrpos($filename, '.')){
             return substr($filename, strrpos($filename, '.')+1);
		}
        return false;
    }

    // erzeugt einen Zufallswert
    function getRandomValue(){
        return substr(md5(rand(1, 9999)),0,8).substr(time(),-6);
    }

    // erzeugt einen neuen Dateinamen aus Zufallswert und
    // Dateiendung
    function renameFile ($filename){
        return  getRandomValue().".".getExtension($filename);
    }
	
	function erstellen ($no,$vb){
		$pfadrechte = "0777";
		//Verzeichnis erstellen
		$handle = opendir($vb);
		
		if ($handle){ 
			mkdir($vb."".$no,$pfadrechte)or die("Ordner nicht erstellbar");
			chmod($vb."".$no,$pfadrechte);
			mkdir($vb."".$no."/pic",$pfadrechte)or die("Ordner nicht erstellbar");
			chmod($vb."".$no."/pic",$pfadrechte);
		}else{
			die("Ordner nicht vorhanden");
		} 
		
		closedir($handle);  
        return;
    }
	
	function tumbb ($nn,$data,$pfad,$size){
		$OB = $size[0];
		$OH = $size[1];
		
		if($OB<$OH){
			$uOB=75;
			$uOH=100;
		}else{
			$uOB=100;
			$uOH=75;
		}
		
		if($size[2] == 2){
			$Originalgrafik = ImageCreateFromJPEG($data['tmp_name']);
			$Thumbnailgrafik = ImageCreateTrueColor($uOB, $uOH);
			ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $uOB, $uOH, $OB, $OH);
			ImageJPEG($Thumbnailgrafik, $pfad."pic/kl_".$nn);
		}elseif($size[2] == 3){
			$Originalgrafik = ImageCreateFromPNG($data['tmp_name']);
			$Thumbnailgrafik = ImageCreateTrueColor($uOB, $uOH);
			ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $uOB, $uOH, $OB, $OH);
			ImagePNG($Thumbnailgrafik, $pfad."pic/kl_".$nn);
		}	
        return;
    }
	
	function gb ($nn,$data,$pfad,$size){
		$OB = $size[0];
		$OH = $size[1];

		if($OB<$OH){
			$Skalierungsfaktor = $OH/570;
			$uOB = intval($OB/$Skalierungsfaktor);
			$uOH = 570;
		}else{
			$Skalierungsfaktor = $OB/735;
			$uOH = intval($OH/$Skalierungsfaktor);
			$uOB = 735;
		}

		if($size[2] == 2){
			$Originalgrafik = ImageCreateFromJPEG($data['tmp_name']);
			$Thumbnailgrafik = ImageCreateTrueColor($uOB, $uOH);
			ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $uOB, $uOH, $OB, $OH);
			ImageJPEG($Thumbnailgrafik, $pfad."".$nn);
		}elseif($size[2] == 3){
			$Originalgrafik = ImageCreateFromPNG($data['tmp_name']);
			$Thumbnailgrafik = ImageCreateTrueColor($uOB, $uOH);
			ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $uOB, $uOH, $OB, $OH);
			ImagePNG($Thumbnailgrafik, $pfad."".$nn);
		}	
        return;
    }

    // Werte zur Dateiprüfung initialisieren
    // -----------------------------------------------
    $file_extensions = array('jpg', 'jpeg', 'png');
    $mime_types = array('image/pjpeg', 'image/jpeg', 'image/png', 'image/x-png');

	// anzahl dateifelder
	// -----------------------------------------------
	$anzahl_dateifelder = 10; 
	
if(isset($_POST['submit']) AND $_POST['submit']=='Upload'){
	
	// Upload-Ordner definieren
	// -----------------------------------------------
	$o=$_POST['ordner'];
	$no=$_POST['nordner'];
	
	if ($o=='Neuer Ordner'){ 
		if ($no ==''){
			echo"Bitte neuen ordner name eintragen";
		}else{			
			erstellen($no,$vb); 
			$ordner = $vb."".$no."/"; 
		}
	}else{
		$ordner = $vb."".$o."/"; 
	}
	
	 // jede Datei einzeln testen
	for($i=0; $i<$anzahl_dateifelder; $i++){
		$myFILE['name'] = $_FILES['Datei']['name'][$i];
		$myFILE['type'] = $_FILES['Datei']['type'][$i];
		$myFILE['tmp_name'] = $_FILES['Datei']['tmp_name'][$i];
		$myFILE['error'] = $_FILES['Datei']['error'][$i];
		$myFILE['size'] = $_FILES['Datei']['size'][$i];
		$size = array();
		$size= getimagesize($_FILES['Datei']['tmp_name'][$i]);

		// Fehlerarray erzeugen
		$errors = array();
		// Fehler prüfen
		$errors = checkUpload($myFILE, $file_extensions, $mime_types);
		
		if(count($errors)){
			echo "<p>\n".
				 "Die ".($i+1).". Datei (".$myFILE['name'].") konnte nicht gespeichert werden.<br />\n";
			foreach($errors as $error)
				echo $error."<br />\n";
			echo "</p>\n";
		}else{
			// umbenennen
			do {
				$neuer_name = renameFile($myFILE['name']);
			} while(file_exists($ordner.$neuer_name));
			
			//verkleiner und tumb erstellen
			if(gb($neuer_name,$myFILE,$ordner,$size) and tumbb($neuer_name,$myFILE,$ordner,$size)){
				 echo "<p>\n".
					  "Die ".($i+1).". Datei (".$myFILE['name'].") wurde erfolgreich gespeichert.<br />\n".
					  "</p>\n";
			}else{
				 echo "<p>\n".
					  "Die ".($i+1).". Datei (".$myFILE['name'].") konnte nicht gespeichert werden.<br />\n".
					  "Es ist ein Upload-Fehler aufgetreten.<br />\n";
			}
		} 
	}
	
}else{
?>
	Laden Sie mehrere Bilder hoch!
	<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" class="form" enctype="multipart/form-data">
	Hier den Namen des neuen Ordners rein schreiben und unten neuer Ordner auswählen<br />
	(Bitte auf umlaute achten danke)
	<input type="text" name="nordner" />
	<select name="ordner" size="3">
		<option>Neuer Ordner</option>
<?php
	if ($handle = opendir($vb)) {
		while (false !== ($file = readdir($handle))) {
			if ($file != "." && $file != "..") {				
				echo"<option>$file</option>";
			}
		}
	closedir($handle); 
	}
?>
	</select>	
<?php
	for($i=0; $i<$anzahl_dateifelder; $i++){
		echo "  <label for=\"Datei\">".($i+1).". Datei auswählen</label>\n";
		echo "  <input type=\"file\" name=\"Datei[".$i."]\" id=\"Datei[".$i."]\" />\n";
		echo "  <br />\n";
	}
?>
	<input type="submit" name="submit" value="Upload" />
	</form>
<?php
}
?>