PHP Upload Script will nicht

kein Name

kein Name

Aktives Mitglied
Thread Starter
Dabei seit
09.04.2005
Beiträge
426
Reaktionspunkte
8
Ich bin auf ein php Upload Script gestoßen, dass ich nicht zum laufen bekomme. Ich kann eine Datei auswählen. Wenn ich sie hinauflade kommt keine Fehlermeldung ein Upload findet statt, aber die Datei ist nicht in den angegebenen Ordner. In dem Ordner können Gäste lesen und schreiben.

Ich bin mir nicht sicher wie ich den Ordner angeben soll wo das alles hinaufgeladen werden soll. Die Webseite läuft auf meinem Rechner mit 10.4.2 und MAMP 1.0.1

Bitte schlägt mir keine andern Scripts vor, außer sie bieten die gleiche Funktionen wie diese oder mehr.

Code:
<?php

$date=date("j.n.y");
$time=date("H:i:s");

// UpItEasy - Konfiguration des Pogrammes

// Ihre eigene Ueberschrift
$ProgTitle     = "UpItEasy 2.0";

// Mailbenachrichtigung
$UpInfo        = "no";   // "yes"- schickt Ihnen eine Mail bei Verwendung des Pogrammes

// Inhalt der Mail wenn aktiviert
 
//Titel
$UpInfoTitle   = "Jemand hat Dateien hochgeladen";       

// Text der Mail ("$date" und "$time" stehen fuer Datum und Uhrzeitstempel!
$UpInfoMessage = "Es ist der $date um $time Uhr.\n Jemand hat gerade Dateien auf meinen Server hochgeladen";

// IHRE Mailadresse     
$UpInfoMail          = ""; // IHRE Mailadresse


// Konfiguration der Bedingungen
$RequirePass   = "no";              // Soll ein Password zum Upload eingegegeben werden?
$PassWord      = "";               // Ihr Passwort eingeben wenn aktiviert
$UploadNum     = "3";             // Anzahl der auf einmal hochladbaren Dateien...
$Directory     = "Dateien";      // das Verzeichnis fuer den Upload ( chmoded 777 setzen)
$MaxLoadSize   = "10000";          // MAXIMALE Groesse der hochzuladenden Dateien in KByte... 
$OverWrite     = "no";        // Ueberschreiboption - vorhandene Dateien ueberschreiben?
$ForbiddenShow = "yes";       // VERBOTENE Dateien u. Dateitypen dem USER anzeigen
$WriteAll      = "no";       // Schreiboption - AUCH GESPERRTE Dateitypen werden geupt!
$PwReminder    = "no";     // EasyIDENT-Link einblenden (ACHTUNG: das Tool mu? separat downgeloadet und im selben Verzeichnis installiert werden...)

// In das folgende Array die GESPERRTEN Dateitypen ODER / UND Dateinamen eintragen
$ForbiddenFiles=array(".htm",".exe",".zip",".php",".cgi",".pl",".css",".pdf",".asp",".jsp",".png",".txt"); 

//Kommentar zur Sperrliste
// Sicher werden Sie finden, es waere einfacher, nur Dateitypen zuzulassen, als Unerwuenschtes auszusperren.
// Doch haben Sie auf diese Art und Weise die Moeglichkeit z. B. html-Dateien zuzulassen,
// und nur die index.html zu schuetzen. Im Uebrigen ist die Auswahl der Dateien, mit denen man auf einem Server
// WIRKLICH etwas anfangen kann, doch stark begrenzt...oder? 
// Ueberdies kann das Tool auch in .htaccess-geschuetzte Verzeichnisse upen...
?>



<HTML>
<HEAD>
<TITLE><? echo $ProgTitle;?></TITLE>

<?include "upiteasy.css";?>


</HEAD>



<?
//---------------------------------------------------------------------------------------------------------
//Ab hier bitte nichts mehr veraendern
//105------------------------------------------------------------------------------------------------------


if($upiteasy) {

if($RequirePass=="yes") {
if($PassWord != "$password") {
if($UpInfo == "yes"){
$Message="$date $time\nACHTUNG:\nJemand hat unberechtigt versucht, Dateien auf Ihren Webspace zu laden!";
mail("$UpInfoMail", "$UpInfoTitle", "$Message", "From: $UpInfoMail");
}

?>
<P><CENTER><B><h4>ERROR</h4></B></CENTER></P>
<P><CENTER><TABLE WIDTH="450" BORDER="0" CELLSPACING="0"
CELLPADDING="0">
<TR>
<TD WIDTH="100%" BGCOLOR="#000000">
<TABLE WIDTH="450" BORDER="0" CELLSPACING="1" CELLPADDING="2">
<TR>
<TD COLSPAN="2" BGCOLOR="#ffffff">
<h5>Das eingegebene Passwort ist falsch!</h5></TD>
</TR>
</TABLE></TD>
</TR>
</TABLE></CENTER></P>
<P><CENTER>&nbsp;</CENTER></P>
<P><CENTER>&nbsp;</CENTER></P>
<P><CENTER><A HREF="http://www.aj-chs.de" TARGET="_blank">UpItEasy 2.0 by Alexander Junge &copy; 2002</a></CENTER>
</BODY>
</HTML>

<?php
exit();
}
}

if($UpInfo == "yes"){
mail("$UpInfoMail", "$UpInfoTitle", "$UpInfoMessage", "From: $UpInfoMail");}

$num = 0;
while($num < $UploadNum) {
$num++;


$bild = "fileup$num"."_name";
$bild1 = $$bild;
$bild2 = "fileup$num";
$bild3 = $$bild2;

if($bild3 != "") {
$bytes = filesize($bild3);

$ok = "yes";


for($n=0;$n<count($ForbiddenFiles);$n++) {
if(stristr($bild1,$ForbiddenFiles[$n])) {
$ok="$WriteAll";}}

if ($bytes > $MaxLoadSize*1000) {
$error .="Die Datei <b>$bild1</b> ist zu gross und kann deshalb nicht hochgeladen werden!<BR>";
}
else
{
if ($OverWrite == "yes" && $ok == "yes"){
copy ($bild3, "$Directory/$bild1");
$error .="Die Datei <b>$bild1</b> wurde hochgeladen!<BR>";
}
elseif(file_exists("$Directory/$bild1") OR $ok == "no") {
$error .="Die Datei <b>$bild1</b> darf nicht aktualisiert werden ODER Dateityp nicht zugelassen!<BR>";
}
elseif($ok == "yes") {
copy ($bild3, "$Directory/$bild1");
$error .="Die Datei <b>$bild1</b> wurde hochgeladen!<BR>";
}
}
}
}

if(!$error) {
$error .= "Es wurden noch keine Dateien eingetragen!";
}


?>
<P><CENTER><B><h4>Status</h4</B></CENTER></P>

<P><CENTER><TABLE WIDTH="550" BORDER="0" CELLSPACING="0"
CELLPADDING="0">
<TR>
<TD WIDTH="100%" BGCOLOR="#000000">
<TABLE WIDTH="550" BORDER="0" CELLSPACING="1" CELLPADDING="2">
<TR>
<TD COLSPAN="2" BGCOLOR="#ffffff">
<?php echo $error; ?></TD>
</TR>
</TABLE></TD>
</TR>
</TABLE></CENTER></P>
<P><CENTER>&nbsp;</CENTER></P>
<P><CENTER>&nbsp;</CENTER></P>
<P><CENTER><form>
<input type="button" value="Weitere Dateien..." style=" width:220px" width="220px" onClick="Javascript:history.back()">
<input type="button" value="UpItEasy 2.0 beenden" style="width:220px" width="220px" onClick="Javascript:self.close()">
</form></CENTER></P></div>




<P><CENTER><A HREF="http://www.aj-chs.de" TARGET="_blank">UpItEasy 2.0 by Alexander Junge &copy; 2002<a></CENTER>
</BODY>
</HTML>
<?php
exit();

} else {

$num = 0;
while($num < $UploadNum) {
$num++;
$html .= "<TR>
        <TD WIDTH=\"25%\">
        <b>$num. Datei</b></TD> 
        <TD WIDTH=\"75%\">
        <INPUT NAME=\"fileup$num\" TYPE=\"file\" SIZE=\"25\">
</TD> ";
}

?>
<FORM ENCTYPE="multipart/form-data" ACTION="<? echo $PHP_SELF ?>" METHOD="POST">
<P><CENTER><B>
<P><CENTER><B>
<div style="width:50%;filter:shadow(color=#FFFFFF, direction=135)"><h1><?echo "$ProgTitle";?></h1></CENTER></div></P>
<? if($ForbiddenShow == "yes" && $WriteAll =="no"){?> <P><CENTER><B><h5>Gesperrt sind: <? foreach($ForbiddenFiles as $value){echo "$value,- ";}?> Dateien!</h5></center></p><? }?>
<P><CENTER><B><h5>Dateigrˆ?e max. <? echo"$MaxLoadSize";?> KB</h5></center></p>
<P><CENTER><TABLE WIDTH="450" BORDER="1" CELLSPACING="0" CELLPADDING="0">
<TR>
<TD WIDTH="100%">
<TABLE WIDTH="450" BORDER="1" CELLSPACING="1" CELLPADDING="2">
<TR>
<TD COLSPAN="2">
<B>Ausgew&auml;hlte Dateien</B></TD>
         
</TR><?php echo $html; ?>
</TABLE></TD>
</TR>
</TABLE></CENTER></P>

<?php
if($RequirePass=="yes") {
?>
<P><CENTER><TABLE BORDER="1" CELLSPACING="0"  CELLPADDING="0">
<TR>
<TD WIDTH="100%">
<TABLE WIDTH="300" BORDER="1" CELLSPACING="1" CELLPADDING="2">
<TR>
<TD WIDTH="33%" >
<B>Ihr Passwort:</FONT></B></TD> 
<TD WIDTH="67%" BGCOLOR="#ffffff">
<INPUT NAME="password" TYPE="password" SIZE="25">
</TD></TR></table>
<? if ($PwReminder =="yes"){echo "<center><a href=\"easyident.php\" target=\"_blank\"><font color=\"#FF0000\">Passwort vergessen?</a></font></center>";}?>
</TABLE></TD>
</TR>
</TABLE></CENTER></P>
<?php
}
?>
<P><CENTER><INPUT NAME="upiteasy" TYPE="submit" VALUE="Dateien jetzt hochladen"></CENTER></FORM>
<P><CENTER>&nbsp;</CENTER></P>
<P><CENTER>&nbsp;</CENTER></P>
<P><CENTER><A HREF="http://www.aj-chs.de" TARGET="_blank">Alexander Junge - UpItEasy 2.0 &copy; 2002</a></CENTER>
</BODY>
</HTML>
<?php
exit();
}


?>

Danke für die Hilfe.
 
Zuletzt bearbeitet:
Was klappt denn genau nicht? Kommt ne Fehlermeldung?
Hast du auf deinem Server PHP-Upload aktiviert?
 
Rappy schrieb:
Was klappt denn genau nicht? Kommt ne Fehlermeldung?
Hast du auf deinem Server PHP-Upload aktiviert?

PhP-Upload funktioniert. Hab auch schon mal ein Script gehabt dass funktioniert, aber leider hat es so gut wie keine weiteren Möglichkeiten gegeben. Fehlermeldung kommt keine. Upload findet statt. (Hab auch grad meinen ersten Beitrag ergänzt)
 
wo wird die datei den hingeladen?
 
kein Name schrieb:
Gar nicht, weil das Script nicht funktioniert.

ich dachter der upload geht

wer frisst die datei dann? das grümmelmonster ;)
 
hagbard86 schrieb:
ich dachter der upload geht

wer frisst die datei dann? das grümmelmonster ;)

Ne die Datei wird nicht gespeichert.
 
also die üblichen fehler bei uploads sind:
1. keine schreibrechte für das verzeichniss .. ändere die zugriffsrechte auf 777
2. falsche form-methode ...muss "post" sein
3. server unterstützt den befehl nicht ... du verwendest copy(file, dir.file) probiers doch mal mit move_uploaded_file(file, dir.file)

was willst du denn eigentlich machen ? das skript ist ziemlich umfangreich für eine klitze kleine aufgabe.
 
Ich habe jetzt ein anderes Script genommen das funktioniert. Wenn ich dass dann doch noch verwenden will melde ich mich noch mal. Danke für alle antworten.
 
Zurück
Oben Unten