Recently we moved our site to our own new servers (Red Hat Linux, PHP 4.2.2) but since then we have problems with our upload script. It's just uploading very small files (<500K😎. If someone tries to upload a bigger file then the Browser tries to download the file with the upload skript and then shows an error message.
Here is a part of our script (followed by a form object, that isn't showed here...) and the PHP values (sorry, the texts are in german, but I think in this case this absolutely does not matter, just ignore it):
max_execution_time = 30 (Edit: changed it to 2400... but it did no help)
memory_limit = 10M
post_max_size = 10M
upload_max_filesize = 8M
<?
if($action=="upload")
{
//Einstellungen
$ftp_server="*******";
$ftp_user_name="*******";
$ftp_user_pass="*******";
$ftp_path="./"; // mit / am Ende!
$erfolg = "Vielen Dank! Die Datei wurde erfolgreich hochgeladen.";
//Email Einstellungen
$email_absender = "*******";
$email_empfaenger = "*******";
$betreff = "Neues Spiel erhalten";
//Keine Änderungen unterhalb
$source=$file; // uploaded file
$source_name=$file_name; // name of the file
if($source != "none" && $source != "")
{
$dest=$ftp_path.$source_name;
$conn_id=ftp_connect($ftp_server) or die ("Couldn't connect to server");
$login=ftp_login($conn_id, $ftp_user_name, $ftp_user_pass) or die ("Access denied");
if(ftp_size($conn_id,$dest) != -1) // wenn schon exisitert
{ echo "Die Datei existiert bereits"; }
else {
$upload=ftp_put($conn_id, $dest, $source, FTP_BINARY);
echo "<br><b>$erfolg</b>";
$msg =
"Hallo,
Soeben wurde ein Spiel hochgeladen. Hier die Infos:
Persönliche Angaben:
Nickname: $nickname
Email: $email
Angaben zum Spiel:
Spielname: $spielname
Status: $spielstatus
Sprache: $sprache
Genre: $genre
Homepage: $homepage
Beschreibung/Kommentar:
$kommentar
Dateiname: $source_name
";
mail("$email_absender", "$email_empfaenger", "$betreff", $msg);
}
unlink($source);
ftp_quit($conn_id);
}
else
{
echo "Keine Datei ausgewählt!";
}
}
?>