I tried to search for this issue on the group, but don't even know
where to start, so here's my problem.
We have a very simple form which has a file upload box.
Upon submit the file should be uploaded (using the copy function, from
the server's temp directory to our final directory), the database
should be updated, and the user should be notified of success/failure.
In that order. When we test it at the office, and even from a dial-up
at home, everything is fine.
When my client tries to do it from his cable modem connection here is
what happens: He chooses the file on the form, clicks submit and the
page churns away for a long while. Then, it just goes back to the form
page. In the meantime, the file has been moved to the server's temp
directory, but does not get to our final directory. The database gets
updated (which should only happen after the copy function), but no
confirmation message is given.
Here is some truncated code:
function upload_file()
{
global $target_dir,$target_file;
$upload_temp = $_FILES['filename_new']['tmp_name'];
$upload_file = $_FILES['filename_new']['name'];
$target_dir = "../downloads";
$target_file = $target_dir . "/" . $upload_file;
if (!copy($upload_temp, $target_file))
{
echo "<h4>Failed to upload file...<h4><br>\n";
die();
}
else
{
echo "<h4>Uploaded File Successfully...<h4><br>\n";
return;
}
}
upload_file();
$sql = "INSERT INTO downloads
(name,filename,sort_order,description,category,reg istration) VALUES
('".$name."','".$filename."',".$sort_order
..",'".$desc."',".$category.",".$registration.") ";
$result = mysql_db_query($glb_db,$sql) or die(mysql_error());
print "<p>The download has been added";