Mysmilies.net die Smilies Datenbank

Script oder Datei finden :

 
-Startseite
-Newsarchiv
-Newsletter
-Mein Dreamcodes
-Scripte
-eBooks
-Online Speicher
-Datenbanken
-Webseiten
-Trickfilm
-Web Grafiken
-Bildbearbeiter
-Browser
-EMail Software
-Ftp Clienten
-Betriebssysteme
-Texteditoren
-Wampserver
-Office Pakete
-Antivirus
-System Cleaner
-Recovery Tools
-Php Schnipsel
-Ajax Schnipsel
-VB Schnipsel
-Tutorials
-Workshops
-Webkatalog
-Leserforum
-Erweiterte Suche
-Sitemap
-Impressum
-neuste Downloads

1. Selfphp (1722)
2. Xampp OS X (1620)
3. Xampp Linux (1612)
4. Xampp Windows (1623)

-neuste Tutorials

1. Samsung S20 rooten (1287)
2. Gratis USA Nummer (14660)
3. RAID (13696)
4. Text auf Grafik (14362)


Forum

Moderator: Q
Kategorie: Scripte von A bis Z
Schreibrechte ab: registrierter Benutzer
Beschreibung: Ideen, Vorschläge und Probleme rund um ein Script werdet Ihr hier los

Autor: blowdow
Thema: Multiuploader
Themen Nummer: 4951

 

Forum Scripte von A bis Z Multiuploader
 

Forum Thema:

Multiuploader

Username:
blowdow
geschrieben am 13.09.2009
um 14:39 Uhr

Hi zusammen

Ich habe mir das Multiuploader-Script runtergeladen und ausprobiert. Soweit funktioniert es prima.

Jedoch würde ich gerne, dass das Script nicht jede einzelne Datei wegen den max-File-Grösse kontrolliert, sondern, dass INSGESAMT die Grösse nicht überschritten werden darf.

z.B:

File 1 = 1 MB
File 2 = 2 MB
File 3 = 5 MB

Max File Size = 6 MB

Das Script sollte nun File 1 + File 2 + File 3 zusammen rechnen = 8 MB. In diesem Beispiel würde es keine Datei uploaden, da insgesamt die MB grösser sind (8 MB), als man darf (6 MB).

Weiss jemand, wie ich das einbauen könnte?

Hier nochmals das ganze Script von Multiuploader:

Script:

<?php

//-----------------------------------------------------------------//
// Konfiguration Anfang
//-----------------------------------------------------------------//
// Pfad zum Bilderverzeichnis, mit / am Ende!
// kann so bleiben wenn bei $URL unterhalb das Verzeichnis auch bilder heisst
$picpfad = 'bilder/';

// URL zum Uploadbilderverzeichnis
$URL = 'http://www.ihre-domain.de/uploader/bilder';

// Anzahl Uploadfelder
$erlaubte_uploads = 5;

// max. Uploadgroesse in KB
$max_upl_size = 10;

// Erlaubte Dateiendungen, Dateiendungen mit Komma trennen und klein schreiben
$arr_erlaube_dateityp = array(gif,jpg,png,zip);
//-----------------------------------------------------------------//
// Konfiguration Ende
//-----------------------------------------------------------------//

// Header ausgeben
echo $output = preg_replace("/<__(\w.+?)__>/e", "\$\\1", tparser("templates/uploadheader.html"));
//-----------------------------------------------------------------//
// Uploadformular
//-----------------------------------------------------------------//
if (!isset($_POST['PICUPLOAD'])) {

// Uploadform ausgeben
uploadformausgabe();

} else {
//-----------------------------------------------------------------//
// Upload ausfuehren
//-----------------------------------------------------------------//
$erlaubte_extensionen = join(', ',$arr_erlaube_dateityp);

// Uploaddurchlauf Start
for ($i=0; $i<count($_FILES['UPFILE']['name']); $i++) {

if ($_FILES['UPFILE']['name'][$i] == '') {
continue;
}

// Zeichenfilter
$File = strtr(stripslashes($_FILES['UPFILE']['name'][$i]), '\'" |\\/?!*:#', '___________');

// Dateiendung ermitteln
$punkt = strrpos($File, '.');
$laenge = strlen($File);
$endung = strtolower(substr($File, -($laenge - $punkt - 1)));
$dname = substr($File, 0, -($laenge - $punkt - 1));

// Fehlerausgabe wenn Dateiendung nicht erlaubt
if (!in_array($endung, $arr_erlaube_dateityp)) {
fehlerausgabe("Die Dateiendung <b>$endung</b> ist nicht erlaubt");
continue;
}

// Dateigroessencheck
if ($_FILES['UPFILE']['size'][$i] > ($max_upl_size * 1024)) {
$zugross = round($_FILES['UPFILE']['size'][$i]/1024, 2);
fehlerausgabe("Datei zu gro&szlig;");
continue;
}

switch($_FILES['UPFILE']['error'][$i]) {
case 0:
break;
case 1:
fehlerausgabe("Die Datei ist zu gross");
continue 2;
break;
case 2:
fehlerausgabe("Die Dateigr&ouml;&szlig;e &uuml;bersteigt das erlaubte Limit von $max_upl_size KB");
continue 2;
break;
}



$dateipfad_name = $picpfad.$File;

// Zufallsdateiname erzeugen
$rand_value = randomstring($File);
$newfilenamekompl = "$rand_value.$endung";
$savename = $picpfad.$newfilenamekompl;

// hochgeladene Daeien speichern
if(@move_uploaded_file($_FILES['UPFILE']['tmp_name'][$i], $savename)) {

// Zusammenfassen fuer Uploadstatusausgabe
if (isset($arr_erlaube_dateityp) and in_array($endung, $arr_erlaube_dateityp)) {

// Ausgabe anpassen falls noetig
$show_uploadokfiles .= "<b>$File</b> gespeichert als: <br><a href=\"$URL/$newfilenamekompl\" target=\"_blank\">$newfilenamekompl</a><br>";
}

chmod($savename, 0777);

} else {
fehlerausgabe("Kann Datei nicht speichern");
}
}


if (isset($errors) and count($errors)>0) {
Uploadfehler($errors);
}

if ($show_uploadokfiles != '') {
echo preg_replace("/<__(\w.+?)__>/e", "\$\\1", tparser("templates/uploadok.html"));
}

if (!file_exists($picpfad)) {
echo "<b>Zielverzeichnis $picpfad nicht gefunden</b><br>";
} elseif (!is_writable($picpfad)) {
echo "<b>Zielverzeichnis $picpfad nicht beschreibar</b><br>";
clearstatcache();
} else {
echo "<a href=\"index.php\">Zum Uploadformular zur&uuml;ck</a>";
}

}
// Footer ausgeben
echo $output = preg_replace("/<__(\w.+?)__>/e", "\$\\1", tparser("templates/uploadfooter.html"));
//-----------------------------------------------------------------//
// Zufallszeichen fuer Dateiname
//-----------------------------------------------------------------//
function randomstring($dateiname) {
$dateiname = strtolower(substr(md5(microtime()),0,25));
return $dateiname;
}
//-----------------------------------------------------------------//
// Templateausgabe
//-----------------------------------------------------------------//
function tparser($tmplname) {
$lines = implode("",file($tmplname));
return $lines;
}

//-----------------------------------------------------------------//
// Uploadform
//-----------------------------------------------------------------//
function uploadformausgabe() {
global $erlaubte_uploads, $zeige_uploadrechte, $max_upl_size;


if ($_SERVER['QUERY_STRING'] !== '') {
$action = $_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
} else {
$action = $_SERVER['PHP_SELF'];
}

$max_upl_size_out = $max_upl_size * 1024;

$dateicount = 0;
for ($i=0; $i<$erlaubte_uploads; $i++) {
$dateicount++;
$uploadrowout .= preg_replace("/<__(\w.+?)__>/e", "\$\\1", tparser("templates/uploadfilerow.html"));
}

$show_uploadlimitationen = zeige_uploadlimits();
$uploadformhtml = preg_replace("/<__(\w.+?)__>/e", "\$\\1", tparser("templates/uploadtable.html"));

echo $uploadformhtml;
}

//-----------------------------------------------------------------//
// Zeige Uploadfehler
//-----------------------------------------------------------------//
function Uploadfehler($errors) {

foreach($errors as $file => $message) {
$show_noupload .="<li> $file: $message.<br>";
}
$show_uploadlimitationen = zeige_uploadlimits();
echo preg_replace("/<__(\w.+?)__>/e", "\$\\1", tparser("templates/uploadfehler.html"));
}


//-----------------------------------------------------------------//
// Uploadlimitationen ausgeben
//-----------------------------------------------------------------//
function zeige_uploadlimits() {
global $arr_erlaube_dateityp, $max_upl_size;

$erlaubte_extensionen = join(', ',$arr_erlaube_dateityp);

if ($max_upl_size > 1024) {
$maximum = round(($max_upl_size / 1024), 2) . "MB";
} else {
$maximum = "$max_upl_size KB";
}
return "<b>Dateigr&ouml;&szlig;enlimit</b>: $maximum<br><b>Erlaubte Dateiendungen</b>: $erlaubte_extensionen";
}

//-----------------------------------------------------------------//
// Fehlerausgabe
//-----------------------------------------------------------------//
function fehlerausgabe($message, $delete = false) {
global $errors, $File, $dateipfad_name;

$errors[$File] = $message;

if ($delete == true) {
unlink($dateipfad_name);
}
}
//-----------------------------------------------------------------//
?>

[Antworten]

 
 

Forum Thema:

&gt; Multiuploader

Username:
Q
geschrieben am 17.09.2009
um 17:17 Uhr

Naja du müßtest es nur anstelle von einem Feld auf alle Felder ausdehnen, den Upload check.

[Antworten]

 
 
-Live Statistik
Datum: 18.04.2024
Uhrzeit: 02:09 Uhr
Online: 6 User
User heute: 573
User allgem.: 33641957

Eingeloggt als Gast
-Download des Monats
-
-unsere Monats Umfrage
Welche Serie ist besser?

The Blacklist
House of the Dragon
Die Ringe der Macht
The Sandman
Manifest

-unsere Bestseller