Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „Upload Scipt - Anpassen - Editor“

S

Striker550

Guest

Hi Leute,
ich hab da eine Bilderhomepage, wo Leute auch ihr Bilder hinischicken können. Nur ist das mit dem E-mailen und so so umständilch. Also hab ich mir folgendes Uploadscript besorgt. Nur, wie genau muss ich das anpassen? Und geht das mit Dreamweaver? Wenn nicht, mit welchem Editor dann? Könnt ihr mal gucken?

[php:1:eb57f9750f]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>

<body>
<?php
ini_set ('error_reporting', E_ALL);
$pfad = 'upload/'; //
$dateiupload_erfolgreich = false;


function CheckFilename($dateiname,$pfad)
{
global $fehler; $fehler = array();
if (file_exists($pfad.$dateiname)) array_push($fehler, 'Es existiert bereits eine Datei mit dem Namen!'); //Prüfung ob der Dateiname der hochzuladenden Datei schon existiert. Wenn Dateien mit gleichen namen überschreiben werden sollen diese Zeile bitte löschen.
if(!in_array(strtolower(substr($dateiname,-4)),array('.jpg','jpeg','.png','.gif'))) array_push($fehler, 'Bitte nur Bilder mit der Endung .jpg, .jpeg, .png oder .gif hochladen!'); // In das array erlaubte Dateiformate eintragen und gegebenenfals die Fehlermeldung anpassen. Bitte diese Zeile aus Sicherheitsgründen auf gar keinen Fall löschen!
return (sizeof($fehler)) ? false : $dateiname;
}


function CheckFile($dateiname_temp,$dateifehler,$dateigroesse)
{
global $fehler; $fehler = array();
switch ($dateifehler) {
case '1': $dateifehler_erklaerung ='Die hochgeladene Datei überschreitet die in der Anweisung upload_max_filesize in php.ini festgelegte Größe.'; break;
case '2': $dateifehler_erklaerung = 'Die hochgeladene Datei überschreitet die in dem HTML Formular mittels der Anweisung MAX_FILE_SIZE angegebene maximale Dateigröße.'; break;
case '3': $dateifehler_erklaerung = 'Die Datei wurde nur teilweise hochgeladen.'; break;
case '4': $dateifehler_erklaerung = 'Es wurde keine Datei hochgeladen.'; break;
}
if($dateifehler) array_push($fehler, $dateifehler_erklaerung);
if ($dateigroesse < 1) array_push($fehler, 'Sie haben versucht keine oder eine lehre Datei hochzuladen.');

return (sizeof($fehler)) ? false : $dateiname_temp;
}


if(!empty($_POST['Send']))
{
if ($dateiname_temp = CheckFile($_FILES['Datei']['tmp_name'],$_FILES['Datei']['error'],$_FILES['Datei']['size']))
{
if ($dateiname = CheckFilename($_FILES['Datei']['name'],$pfad))
{
move_uploaded_file($dateiname_temp, $pfad.$dateiname);
if (filesize($pfad.$dateiname)<1) die ('Sie haben versucht eine leerer Datei hochzuladen!');
$dateiupload_erfolgreich = true;
}
else $fehlermeldungen_ausgeben = true;
}
else $fehlermeldungen_ausgeben = true;
}




?>
<html>
<head>
<title>Datei-Upload</title>
</head>
<body>
<?php
if ($dateiupload_erfolgreich)
{
?>Ihre Datei (&<?php echo $dateiname; ?>&) wurde hochgeladen. Sie können nun weitere Dateien hochladen.<?php
}
elseif (!empty($fehler))
{
?>

Es sind folgende Fehler aufgetreten:

<?php
foreach ($fehler as $fehlermeldung) {
echo $fehlermeldung.'
';
}
?>Beseitigen sie wenn möglich den Fehler und versuchen sie es erneut.<?php
}
?>


</body>
</html>
[/php:1:eb57f9750f]
 

UzumakiNaruto

Fach*****

die frage das editors verstehe ich nicht. quellcode kannst du mit jedem ansi/ascii-fähigem editor bearbeiten und wenn du langeweile hast kannst du den quelltext auch hier im forum in einen der textarea-feldern verändern :D

WAS wisst du dne verändert haben?? ich habe mir das script einmal durchgelesen und sehe gar kein formular zum senden der datei. diese script lädt die datei nur hoch in ein verzeichnis ($pfad), begrenzt die dateiformate und gibt dir den genauen fehler an warum die datei nicht hochgeladen werden konnte.

bye uzu

PS: das nächste mal bitte php-quellcode auch mit den tags [ php ][ /php ] und nicht [ code ][ /code ] posten, den dann ist das schön in farbe und kommentare sind sofort zu lesen.
 
S

Striker550

Guest

Okay, ich hab zwar nicht so ganz verstanden, was du geschrieben hast, aber egal. Ich mach das Script jetzt mal mit dem
PHP:
 dingens rein. Ich versteh grad mal HTML. Alles was du oben geschrieben hast, hab ich noch nie gehört  :oops: 

/*php <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
</head> 

<body> 
<?php 
ini_set ('error_reporting', E_ALL); 
$pfad = 'upload/';  //  
$dateiupload_erfolgreich = false; 


function CheckFilename($dateiname,$pfad) 
    { 
    global $fehler; $fehler = array(); 
    if (file_exists($pfad.$dateiname)) array_push($fehler, 'Es existiert bereits eine Datei mit dem Namen!'); //Prüfung ob der Dateiname der hochzuladenden Datei schon existiert. Wenn Dateien mit gleichen namen überschreiben werden sollen diese Zeile bitte löschen. 
    if(!in_array(strtolower(substr($dateiname,-4)),array('.jpg','jpeg','.png','.gif'))) array_push($fehler, 'Bitte nur Bilder mit der Endung .jpg, .jpeg, .png oder .gif hochladen!'); // In das array erlaubte Dateiformate eintragen und gegebenenfals die Fehlermeldung anpassen. Bitte diese Zeile aus Sicherheitsgründen auf gar keinen Fall löschen! 
    return (sizeof($fehler)) ? false : $dateiname; 
} 


function CheckFile($dateiname_temp,$dateifehler,$dateigroesse) 
    { 
    global $fehler; $fehler = array(); 
         switch ($dateifehler) { 
    case '1': $dateifehler_erklaerung ='Die hochgeladene Datei überschreitet die in der Anweisung upload_max_filesize in php.ini festgelegte Größe.'; break; 
    case '2': $dateifehler_erklaerung = 'Die hochgeladene Datei überschreitet die in dem HTML Formular mittels der Anweisung MAX_FILE_SIZE angegebene maximale Dateigröße.'; break; 
    case '3': $dateifehler_erklaerung = 'Die Datei wurde nur teilweise hochgeladen.'; break; 
    case '4': $dateifehler_erklaerung = 'Es wurde keine Datei hochgeladen.'; break; 
    } 
    if($dateifehler) array_push($fehler, $dateifehler_erklaerung); 
    if ($dateigroesse < 1) array_push($fehler, 'Sie haben versucht keine oder eine lehre Datei hochzuladen.'); 
    
    return (sizeof($fehler)) ? false : $dateiname_temp; 
} 


if(!empty($_POST['Send'])) 
{ 
    if ($dateiname_temp = CheckFile($_FILES['Datei']['tmp_name'],$_FILES['Datei']['error'],$_FILES['Datei']['size'])) 
    { 
        if ($dateiname = CheckFilename($_FILES['Datei']['name'],$pfad)) 
        { 
            move_uploaded_file($dateiname_temp, $pfad.$dateiname); 
            if (filesize($pfad.$dateiname)<1) die ('Sie haben versucht eine leerer Datei hochzuladen!'); 
            $dateiupload_erfolgreich = true; 
        } 
        else $fehlermeldungen_ausgeben = true; 
    } 
    else $fehlermeldungen_ausgeben = true; 
} 




?> 
<html> 
<head> 
<title>Datei-Upload</title> 
</head> 
<body> 
<?php 
if ($dateiupload_erfolgreich) 
{ 
Ihre Datei (&echo $dateiname; &) wurde hochgeladen. Sie können nun weitere Dateien hochladen.<?php 
} 
elseif (!empty($fehler)) 
{ 
    ?> 
    
Es sind folgende Fehler aufgetreten:
 
    <?php 
    foreach ($fehler as $fehlermeldung) { 
    echo $fehlermeldung.'
'; 
    } 
Beseitigen sie wenn möglich den Fehler und versuchen sie es erneut.<?php 
} 



</body> 
</html>  
 /php*/

Kann mir das einer erklären? Vlt bei ICQ? 295-703-739 
Würde mich sehr freuen  :)
 
S

Striker550

Guest

(Doppelpost ist ja jetzt erlaubt)
Also, ich bin dank UzumakiNaruto jetzt fertig damit. Danke für deine Hilfe! Kann geschlossen werden!
 

UzumakiNaruto

Fach*****

so, damit IHR alle nicht dumm sterben müsst werde ich hier mal mein script einfügen mit kleinen kommentaren damit es verständlich ist.

[php:1:cdf5881c4a]
<?php

$config['path'] = "./upload/"; // Upload-Verzeichnis
$config['max_size'] = 3000000; // Maximale Dateigrösse in Byte
$config['max_width'] = 2048; // Maximale Breite in Pixel für Bilder
$config['max_height'] = 1536; // Maximale Höhe in Pixel für Bilder

// zugelassene Dateitypen
$config['upload_type'][] = "image/jpeg";
$config['upload_type'][] = "image/pjpeg";
$config['upload_type'][] = "image/gif";
$config['upload_type'][] = "image/png";
$config['upload_type'][] = "image/tiff";

function upload($uploadfile, $dir, $filename)
{
global $config;

error_reporting(E_ALL); // schaltet Fehlermeldungen aus

if (array_keys ($config['upload_type'], $uploadfile['type'])) // Abfrage ob der Dateityp der hochgeladene Datei den zugelassenden Typen entspricht
{
$filetype = "true";
} else {
$filetype = "false";
$upload_error = "- der Dateityp nicht zugelassen ist (".$uploadfile['type'].")
";
}

if ($uploadfile['size'] <= $config['max_size']) // Abfrage ob die Dateigröße nicht die eingestellte maximale Größe überschreitet
{
$filemaxsize = "true";
} else {
$filemaxsize = "false";
if (isset($upload_error))
{
$upload_error .= "- die Dateigröße ".$config['max_size']." überschritten hat (".$uploadfile['size'].")
";
} else {
$upload_error = "- die Dateigröße ".$config['max_size']." überschritten hat (".$uploadfile['size'].")
";
}
}

if (substr($uploadfile['type'],0,5) == "image") // Abfrage ob der Dateityp ein Bild ist
{
$size = getimagesize($uploadfile['tmp_name']); // Ermittlung der Auflösung des Bildes
if ($size[0] <= $config['max_width'] AND $size[1] <= $config['max_height']) // Abfrage ob die Auflösung nicht die eingestellte maximale Größe überschreitet
{
$filesize = "true";
} else {
$filesize = "false";
if (isset($upload_error))
{
$upload_error .= "- die Auflösung ".$config['max_width']." x ".$config['max_height']." überschreitet (".$size[0]." x ".$size[1].")
";
} else {
$upload_error = "- die Auflösung ".$config['max_width']." x ".$config['max_height']." überschreitet (".$size[0]." x ".$size[1].")
";
}
}
}

if ($filename) // Abfrage ob ein Dateiname angegeben wurde
{
$file = $filename; // Übername des Names aus dem Formular
} else {
$file = $uploadfile['name']; // Übername des Names aus dem Dateinamen
}

if ($filetype == "true" AND $filemaxsize == "true" AND $filesize == "true") // Abfrage ob ALLE oben genannten Bedingungen erfüllt sind
{
$temp = $uploadfile['tmp_name'];

if (file_exists($config['path'].$file)) // Abfrage ob es schon eine Datei mit dem Namen schon gibt
{
if (isset($upload_error))
{
$upload_error .= "- der Dateiname schon vorhanden ist
";
} else {
$upload_error = "- der Dateiname schon vorhanden ist
";
}
$error_handle = "true";
} else {
copy($temp, $config['path'].$file);
header("Location:?result=true&file=".$file); // Zurück zum Formular mit einer Erfolgsmeldung
}
} else {
$error_handle = "true";
}

if ($error_handle == "true") // Abfrage ob es Fehler gab
{
header("Location:?result=false&error=".$upload_error."&file=".$file); // Zurück zum Formular mit ALLEN Gründen warum es nicht geklappt hat
}
}

function index($result, $error, $file)
{
global $PHP_SELF;

if ($result == "true") // Abfrage ob Bild hochgeladen wurde oder nicht
{
$msg_result = "Die Datei \"".$file."\" wurde erfolgreich hochgeladen"; // Erfolgsmeldung der Variable zuweisen um sie im HTML unten anzeigen zu können
} elseif ($result == "false")
{
$msg_result = "Die Datei \"".$file."\" konnte nicht hochgeladen werden weil:
".$error; // Grund warum es nicht runtergeladen wurde der Variable zuweisen um sie im HTML unten anzeigen zu können
}
// HTML Ausgabe für das Formular.
?>
<html>
<head>
<title>Datei-Upload</title>
</head>
<body>

<form action="?op=upload" method="POST" enctype="multipart/form-data">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="180">Dateiname mit Dateiendung:</td>
<td><input type="text" name="file_name" size="38"></td>
</tr>
<tr>
<td>Datei:</td>
<td><input type="file" name="datei"></td>
</tr>
<tr>
<td>&</td>
<td><input type="submit" value="absenden"></td>
</tr>
<tr>
<td colspan="2">&</td>
</tr>
<tr>
<td colspan="2"><?=$msg_result;?></td>
</tr>
</table>
</form>

</body>
</html>
<?php
}

switch ($_GET['op'])
{
case "upload":
upload($_FILES['datei'], $_POST['dir'], $_POST['file_name']);
break;

default:
index($_GET['result'], $_GET['error'], $_GET['file']);
break;
}

?>
[/php:1:cdf5881c4a]

bei rückfragen setzt euch mit meinem anwalt und meinen 5 bodyguards auseinander :D
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
175.158
Beiträge
2.581.874
Mitglieder
67.225
Neuestes Mitglied
Petra
Oben