Bezug von hochgeladener Datei zu Formularfeld in IF Abfrage?
Sieboldianus
- php
Hallo,
ich habe ein Problem mit meinem Upload Script. Über Formularfelder kann der User 5 Dateien auswählen. Die Dateien der ersten 4 Felder sollen aber im Script anders behandelt werden als die Datei aus Feld 5. Ich habe leider keine Ahnung, wie ich herausfinde aus welchem Feld die gerade behandelte Datei stammt in $_FILES. Eine simple IF Anweisung wäre schon Gold wert, aber ich weiss nicht wie die lauten soll!
Folgende Felder habe ich im Forumlar:
<input type="file" id="bild1" name="bild1" />
<input type="file" id="bild2" name="bild2" />
<input type="file" id="bild3" name="bild3" />
<input type="file" id="bild4" name="bild4" />
Und jetzt mein PHP-Script zum Auswerten des Formulars (markiert die stelle wo die Abfrage hin soll mit dem Kommentar):
foreach ($_FILES as $dateiupload) {
if ($dateiupload['size'] > 0)
{
$UploadDateiEndung = array_pop( explode( ".", strtolower( $dateiupload['name'] ) ) );
if (!in_array( $UploadDateiEndung, $Erlaubte_Dateiendungen ))
{
die( "Die angehängte Datei hat eine nicht erlaubte Dateiendung!" );
}
//WENN $_FILES = bildtn DANN ... ANSONSTEN:
$bilderanzahl++;
$bilderanzahl = sprintf("%02s",$bilderanzahl);
$DateiNameNeu = $_POST["projektnummer"]."_". $bilderanzahl.".jpg";
$umask_alt = umask( 0 );
if (@move_uploaded_file( $dateiupload['tmp_name'], "projekte/images/" . $DateiNameNeu ))
{
@chmod( "projekte/images/" . $DateiNameNeu, 0755 );
echo "<h4 class=\"title\">Datei " . $dateiupload['name'] ." wurde unter projekte/images/" . $DateiNameNeu ." gespeichert </h4>";
umask( $umask_alt );
}
else
{
umask( $umask_alt );
}
}
}
Vielen Dank schon einmal für Hilfe!
Entschuldigt, bei den Formularfeldern habe ich natürlich das Wichtigste vergessen:
<input type="file" id="bildtn" name="bildtn"/>
Hab es geschafft!
hier mein Script falls es jemanden interessiert:
function speicherebilder($dateiupload, $bilderanzahl)
{
$Erlaubte_Dateiendungen = array( "jpg", "gif", "zip" );
$Dateiname_bereinigen = array( 'ä' => 'ae', 'ö' => 'oe', 'ü' => 'ue', 'ß' => 'ss', ' ' => '_' );
$pfad = "projekte/images/";
if ($bilderanzahl == "tn") {
$pfad = "projekte/thumbs/";
}
if ($dateiupload['size'] > 0)
{
$UploadDateiEndung = array_pop( explode( ".", strtolower( $dateiupload['name'] ) ) );
if (!in_array( $UploadDateiEndung, $Erlaubte_Dateiendungen ))
{
die( "Die angehängte Datei hat eine nicht erlaubte Dateiendung!" );
}
$DateiNameNeu = $_POST["projektnummer"]."_". $bilderanzahl.".jpg";
$umask_alt = umask( 0 );
if (@move_uploaded_file( $dateiupload['tmp_name'], $pfad . $DateiNameNeu ))
{
@chmod( $pfad . $DateiNameNeu, 0755 );
echo "<h4 class=\"text\">Datei " . $dateiupload['name'] ." wurde unter ". $pfad . $DateiNameNeu ." gespeichert </h4>";
umask( $umask_alt );
}
else
{
umask( $umask_alt );
}
}
}
if ($_FILES['bild1']['tmp_name']) {
speicherebilder($_FILES['bild1'],"01");
if ($_FILES['bild2']['tmp_name']) {
speicherebilder($_FILES['bild2'],"02");
if ($_FILES['bild3']['tmp_name']) {
speicherebilder($_FILES['bild3'],"03");
}
if ($_FILES['bild4']['tmp_name']) {
speicherebilder($_FILES['bild4'],"04");
}
}
}
if ($_FILES['bildtn']['tmp_name']) {
speicherebilder($_FILES['bildtn'],"tn");
}
}