fhiiqm/test/file_upload_multi.php
author Bettina Schwarzer
Fri, 05 Feb 2016 14:03:40 +0100
changeset 44 d652bbba2d43
parent 35 679bc22e37e2
permissions -rw-r--r--
fhiiqm: achilleus -> db2, Korrekturen

<?php

/**
 * @author Bettina Schwarzer, Fritz-Haber-Institut
 * @copyright 03/2013
 * 
 * Upload mehrerer Files gleichzeitig
 */

    error_reporting(E_ALL ^ E_NOTICE);




	$sub	= $_POST["ins"];
    $vtr    = $_POST["vertrag"];
    $ok		= $_POST["ok"];
    if (!$vtr["okn"] || !$ok) $ok = 0;

    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    
    <head>
    	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
       	<link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> 
       	<link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> 
    
    	<title>Eingabe Vertragsdaten</title>

    <script type="text/javascript">
    //<!--
        var counter = 0;
        var limit = 99;
        function addInput(divName){
             if (counter == limit)  {
                  alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
             }
             else 
             {
                var cdiv = document.createElement('div');
                cdiv.innerHTML = "<span></span>Dok-Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name='vertrag[cfname][]' type='text' size='50' maxlength='50' value='' />";
                cdiv.innerHTML += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Schlagwort&nbsp;&nbsp;&nbsp;<input type='text' name='vertrag[swort][]'  size='30' maxlength='50' value='' />";
                cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
                cdiv.innerHTML += "<br />Upload-Dokument&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='file' name='vfile[]' size='50' maxlength='50' value='' />";
                document.getElementById(divName).appendChild(cdiv);
                counter++;
             }
        }
        function delInput(divId){
                var kn = document.getElementById(divId); 
                while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SPAN" && kn.lastChild.nodeName != "A")
                {
                    var knc = kn.lastChild;
                        document.getElementById(divId).removeChild(knc);
                }
                if (kn.lastChild.nodeName == "SPAN") document.getElementById(divId).removeChild(kn.lastChild);
        }
    //-->
    </script>

    </head>
    
    <body>
    <?php   
    print_r($vtr); echo "<br /><br />";
    print_r($_FILES); echo "<br /><br />";
if (!$sub || !$ok)
{
    ?>
    <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="form_vertrag" target="_self"> 	
    <div align="center">
    <p>Vertragsdokumente hochladen</p>
    <table width="70%" border="0" cellspacing="3" cellpadding="3">
        <input type="hidden" name="MAX_FILE_SIZE" value="10000000"/> 
    <?php 
        $okn=1;  
        echo            
        "<tr>
	       <td>Vertragsdokumente
                <br />&nbsp;&nbsp;&nbsp;bitte <u>keine</u> Umlaute<br />&nbsp;&nbsp;&nbsp;in gew&auml;hlten Dateinamen angeben!</td>
	       <td><div id='adddoc'>
                <span></span>\nDok-Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name=\"vertrag[cfname][]\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"". $vtr['cfname'][0] ."\" />
                &nbsp;&nbsp;&nbsp;
                Schlagwort&nbsp;&nbsp;&nbsp;<input type='text' name=vertrag[swort][]  size=\"30\" maxlength=\"50\" value='".$vtr['swort'][0]."' />";
            echo "&nbsp;&nbsp;&nbsp;<a href=\"javascript:addInput('adddoc')\" title=\"weiteres Dokument\"><img src=\"/fhiiqm/img/add.png\" /></a>
            &nbsp;&nbsp;&nbsp;<a href=\"javascript:delInput('adddoc')\" title=\"l&ouml;schen letztes Dokument\"><img src=\"/fhiiqm/img/delete.png\" /></a>";
			if (isset($vtr['cfname'][0]) && $vtr['cfname'][0]<'!')
				{
					echo "<br /><span class=\"red\">Dateiname ist erforderlich!</span>\n";
					$okn = 0;
				}
			else
				{
                    if ($vtr['cfname'][0]>='!' && file_exists("/fhiiqm/documents/".$vtr['cfname'][0]))
                        echo "<br />Dokument anschauen:&nbsp;<a href='/fhiiqm/documents/" . $vtr['cfname'][0] ."'>" . $vtr['cfname'][0] . "</a>";
                    if ($vtr['cfname'][0]>='!') $okn = 1;
                }
            if ($sub)
            {
        		echo "<br />Upload-Dokument&nbsp;&nbsp;&nbsp;&nbsp;
        		<input type=\"file\" name=\"vfile[]\" size=\"50\" maxlength=\"50\" value=\"" .$_FILES["vfile"]["name"][0] . "\"/>";
            }
            if ($sub && isset($vtr) && !$ok)
            {
                if (count($vtr['cfname'])>1)
                {
                    $i=0;
                    foreach ($vtr['cfname'] as $akt)
                    {
                        if ($i>0)
                        {
                            echo "<span></span><br />\nDok-Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                            <input name=\"vertrag[cfname][]\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"". $vtr['cfname'][$i] ."\" />
                            &nbsp;&nbsp;
                            Schlagwort&nbsp;&nbsp;&nbsp;<input type='text' name=vertrag[swort][]  size=\"30\" maxlength=\"50\" value='".$vtr['swort'][$i]."' />";
                      		if (isset($vtr['cfname'][$i]) && $vtr['cfname'][$i]<'!')
                				{
                					echo "<br><span class=\"red\">Dateiname ist erforderlich!</span>\n";
                					$okn = 0;
                				}
                			else
                				{
                                    if ($vtr['cfname'][$i]>='!' && file_exists("/fhiiqm/documents/".$vtr['cfname'][$i]))
                                        echo "<br />Dokument anschauen:&nbsp;<a href='/fhiiqm/documents/" . $vtr['cfname'][$i] ."'>" . $vtr['cfname'][$i] . "</a>";
                                    if ($vtr['cfname'][$i]>='!' && $okn) $okn = 1;
                                }
                            echo "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />\n";
                    		echo "<br />Upload-Dokument&nbsp;&nbsp;&nbsp;&nbsp;
                    		<input type=\"file\" name=\"vfile[]\" size=\"50\" maxlength=\"50\" value=\"" .$_FILES["vfile"]["name"][$i] . "\"/>";
                        }
                        $i++;
                    }
                }                
            }
        echo "
        </div></td>
        </tr>\n";
        echo "<input type='hidden' name='vertrag[okn]' value='" .$okn."' />";
        if ($sub || $del)
		{
		  	if ($sub)
                $frage = "Alle Angaben ok?";
            elseif ($del)
                $frage = "Vertrag wirklich l&ouml;schen?";
			echo "<tr>
			  <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
			        <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
			        if ($ok)  echo "checked=\"checked\""; 
			echo " /></td>\n</tr>\n"; 
		}
		echo "<tr>\n";
		echo "
		  <td>&nbsp;</td>
		  <td><input class=\"button\" type=\"submit\" value=\"eingeben\" name=\"ins\" title=\"insert\" /></td>\n";
		echo "</tr>\n";
        echo "</table>\n";
        echo "</div>\n";
        echo "</form>\n";	
}
else
{
//    $fname = array(0=>"pic1.jpg",1=>"pic2.jpg");
    include ($_SERVER["DOCUMENT_ROOT"] ."/fhiiqm/inc/file_upload.inc.php");
    if (isset($_FILES) && is_array($_FILES) && count($_FILES['vfile']['name'])>0)
    {
        foreach ($vtr[cfname] as $key => &$filename)
            $filename = gen_filename($filename,$_FILES["vfile"]["name"][$key],999,0);
        $ret = upload_multif("vfile", $vtr[cfname], 999, $dir="../documents");
        if ($ret) echo "<p class='green'><b>Alle Dateien zu ID '999' wurden erfolgreich hochgeladen.</b></p>\n";
        else echo "<p class='red'><b>Upload für einige Dateien zu ID '999' ist fehlgeschlagen.</b></p>\n";
    }
    else echo "<p class='red'><b>Upload Dateien zu ID '999' ist fehlgeschlagen.</b></p>\n";

}
?>
</body>
</html>