Uploader geht nicht richtig

spiggy

Mitglied
Wieso überschreibt er mir nicht eine vorhandene Datei. Andere Dateien gehen. Bloß mit gleichen Namen nicht.Kann mir da jemand helfen?



PHP:
<HTML>

<?php

require("setup.php3");
echo $body;
if($doupload) {

if($ADMIN[RequirePass] == "Yes") {
if($password != "$ADMIN[Password]") {
echo("<P><CENTER><B><FONT FACE=\"Verdana\">Fehler</FONT></B></CENTER></P>

<P><CENTER><TABLE WIDTH=\"450\" BORDER=\"0\" CELLSPACING=\"0\"
CELLPADDING=\"0\">
  <TR>
    <TD WIDTH=\"100%\" BGCOLOR=".$bgcolor.">
    <TABLE WIDTH=\"450\" BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"2\">
      <TR>
        <TD COLSPAN=\"2\" BGCOLOR=".$bgcolor2.">
        <FONT COLOR=".$fcolor." SIZE=\"-1\" FACE=\"Verdana\">Falsches Password</FONT></TD>
      </TR>
    </TABLE></TD>
  </TR>
</TABLE></CENTER></P>

</BODY>
</HTML>");
exit();
}
}

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


$picture = "fileup$num"."_name";
$picture1 = $$picture;
$picture2 = "fileup$num";
$picture3 = $$picture2;

if($picture3 != "none") {
$filesizebtyes = filesize($picture3);

$ok = 1;
if($filesizebtyes < 10) {
$error .= "Datei Nr.$num ist kleiner als 10 kb.<BR>";
$ok = 2;
}




copy ($picture3, "$ADMIN[directory]/$picture1");
$error .="Datei Nr.$num wurde hochgeladen.<BR>";

}
}

if(!$error) {
$error .= "Es wurde keine Datei ausgewählt.";
}


echo("<P><CENTER><B><FONT FACE=\"Verdana\">Status</FONT></B></CENTER></P>

<P><CENTER><TABLE WIDTH=\"450\" BORDER=\"0\" CELLSPACING=\"0\"
CELLPADDING=\"0\">
  <TR>
    <TD WIDTH=\"100%\" BGCOLOR=".$bgcolor.">
    <TABLE WIDTH=\"450\" BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"2\">
      <TR>
        <TD COLSPAN=\"2\" BGCOLOR=".$bgcolor2.">
        <FONT COLOR=".$fcolor." SIZE=\"-1\" FACE=\"Verdana\">$error</FONT></TD>
      </TR>
    </TABLE></TD>
  </TR>
</TABLE></CENTER></P>

</BODY>
</HTML>");
exit();

} else {

$num = 0;
while($num < $ADMIN[UploadNum]) {
$num++;
$html .= "<TR>
        <TD WIDTH=\"25%\" BGCOLOR=".$tcolor.">
        <FONT COLOR=\"#ffffff\" SIZE=\"-1\" FACE=\"Verdana\">File $num:</FONT></TD>
        <TD WIDTH=\"75%\" BGCOLOR=".$bgcolor.">
        <INPUT NAME=\"fileup$num\" TYPE=\"file\" SIZE=\"25\" CLASS=\"text\">
</TD> ";
}

if($ADMIN[RequirePass] == "Yes") {
$passhtml = "<P><CENTER><TABLE BORDER=\"0\" CELLSPACING=\"0\"  CELLPADDING=\"0\">
  <TR>
    <TD WIDTH=\"100%\" BGCOLOR=".$bgcolor.">
    <TABLE WIDTH=\"300\" BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"2\">
      <TR>
        <TD WIDTH=\"33%\" BGCOLOR=".$tcolor.">
        <B><FONT COLOR=".$fcolor." SIZE=\"-1\" FACE=\"Verdana\">Password:</FONT></B></TD>
        <TD WIDTH=\"67%\" BGCOLOR=".$bgcolor2.">
        <INPUT NAME=\"password\" TYPE=\"password\" SIZE=\"25\">
</TD>
      </TR>
    </TABLE></TD>
  </TR>
</TABLE></CENTER></P>";
}

echo("<FORM ENCTYPE=\"multipart/form-data\" ACTION=\"uploader-di.php3\" METHOD=\"POST\">
<P><CENTER><B><FONT FACE=\"Verdana\">Upload 1.Liga (Dienstag)</FONT></B></CENTER></P>

<P><CENTER><TABLE WIDTH=\"450\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">
  <TR>
    <TD WIDTH=\"100%\" BGCOLOR=".$bgcolor.">
    <TABLE WIDTH=\"450\" BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"2\">
      <TR>
        <TD COLSPAN=\"2\" BGCOLOR=".$tcolor2.">
        <B><FONT COLOR=".$fcolor." SIZE=\"-1\" FACE=\"Verdana\">Wähle Dateien</FONT></B></TD>

      </TR>$html
    </TABLE></TD>
  </TR>
</TABLE></CENTER></P>$passhtml<P><CENTER><INPUT NAME=\"doupload\" TYPE=\"submit\" VALUE=\"Hochladen\" CLASS=\"send\"></CENTER></FORM>

</BODY>
</HTML>");
exit();
}


php?>
 
Das hier
PHP:
if($filesizebtyes < 10) {
müsste IMHO
PHP:
if($filesizebtyes < 10240) {
heissen wenn die Datei nicht kleiner als 10kb sein darf, da der Wert der Funktion filesize() die Anzahl bytes zurückgibt.

Zu deinem Problem:
Lösche die Datei doch einfach zuerst mit unlink(), und kopiere sie dann.
 
Zurück