Jump to content

Redirection error after upload


Strac72

Recommended Posts

Hi all,

 

I'm using some code that I got from the net (I forget where but all credit to the author). I've tried to adapt it to suit my own needs (almost suceeded?). I have an upload page with 5 file uploads which is processed by this script: (I've annotated where I think the problems may be)

 

UPLOAD FORM

 

<table width="600" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#993399">

<tr>

<form action="../uploads/upload2.php" method="post" enctype="multipart/form-data" name="form1" id="form1">

<td>

<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#993399">

<tr>

<td><div align="center"><strong><h3>Upload your files</h3></strong></div></td>

</tr>

<tr>

<td align="center">Select file

<input name="ufile[]" type="file" id="ufile[]" size="50" /></td>

</tr>

<tr>

<td align="center">Select file

<input name="ufile[]" type="file" id="ufile[]" size="50" /></td>

</tr>

<tr>

<td align="center">Select file

<input name="ufile[]" type="file" id="ufile[]" size="50" /></td>

</tr>

<tr>

<td align="center">Select file

<input name="ufile[]" type="file" id="ufile[]" size="50" /></td>

</tr>

<tr>

<td align="center">Select file

<input name="ufile[]" type="file" id="ufile[]" size="50" /></td>

</tr>

<tr>

<td align="center"><input type="submit" name="Submit" value="Upload" /></td>

</tr>

</table>

</td>

</form>

</tr>

</table>

 

Here is "uploads.php"

 

<?php

 

$path1= "../uploads/".$HTTP_POST_FILES['ufile']['name'][0];

$path2= "../uploads/".$HTTP_POST_FILES['ufile']['name'][1];

$path3= "../uploads/".$HTTP_POST_FILES['ufile']['name'][2];

$path4= "../uploads/".$HTTP_POST_FILES['ufile']['name'][3];

$path5= "../uploads/".$HTTP_POST_FILES['ufile']['name'][4];

 

 

copy($HTTP_POST_FILES['ufile']['tmp_name'][0], $path1);

copy($HTTP_POST_FILES['ufile']['tmp_name'][1], $path2);

copy($HTTP_POST_FILES['ufile']['tmp_name'][2], $path3);

copy($HTTP_POST_FILES['ufile']['tmp_name'][3], $path4);

copy($HTTP_POST_FILES['ufile']['tmp_name'][4], $path5);

 

include '../includes/smile.php';

echo "<table width=\"900\"height=\"180\"cellpadding=\"5\" cellspacing=\"5\" background=\"../images/upbg.png\" align=\"center\">

 

<tr><td align=center><img src=\"$path1\" width=\"100\" height=\"100\"></td>";

 

echo "<td align=center><img src=\"$path2\" width=\"100\" height=\"100\"></td>";

 

echo "<td align=center><img src=\"$path3\" width=\"100\" height=\"100\"></td>";

 

echo "<td align=center><img src=\"$path4\" width=\"100\" height=\"100\"></td>";

 

echo "<td align=center><img src=\"$path5\" width=\"100\" height=\"100\"></td></tr></table>";

 

$filesize1=$HTTP_POST_FILES['ufile']['size'][0];

$filesize2=$HTTP_POST_FILES['ufile']['size'][1];

$filesize3=$HTTP_POST_FILES['ufile']['size'][2];

$filesize4=$HTTP_POST_FILES['ufile']['size'][3];

$filesize5=$HTTP_POST_FILES['ufile']['size'][4];

 

if($filesize1 && $filesize2 && $filesize3 && $filesize4 && $filesize5 !=0)  // possible error? :-[

{

 

echo "<h3 align=center><img src=\"../images/niceone.png\"></h3>";

include '../includes/smilefoot.php';

}

 

else {

 

  echo "<meta http-equiv='Refresh' content='0; url=../includes/fail.php'>";  // possible error?  :-[

}

?>

 

It took me an entire day to get it at this level of functionality where if you sucessfully upload your files you get a success message on the same page but otherwise are redirected to a failure page.

 

The problem is, if you don't upload a file for each of the 5 form inputs, you get the succes message and then redirected to the fail page.

Someone who actually knows something about php will probably see a solution straight away but I don't know anything much really and I have few ideas on how to fix this.

 

I am beginning to suspect that it is my redirect method but I have no idea how to do it differently.

 

I'd be really grateful if someone could explain what I'm doing wrong here, this is for my personal family site and I want it to be good. It took me a week to do the login!

 

What I'd love to achieve is exactly the same as the attachment box(es) right below where I am typing now.

 

I have attached my two relavent pages.

 

Thanks in advance.

 

Paul

 

[attachment deleted by admin]

Link to comment
https://forums.phpfreaks.com/topic/246685-redirection-error-after-upload/
Share on other sites

Make sure you exit after a PHP Header Location

 

Without the exit; after the Header Location call, execution will continue down the page.

Make sure you call exit after a PHP Header call to Location if you want execution to branch immediately!

 

header("Location: http://www.mysite.com/");exit();

Thank you both for your input. I had already tried a header (Location: x) before but ended up going with the meta equivalent as it was the only thing that worked. I did try implementing your ideas in every possible combination but it still wouldn't work for me. I have to admit defeat.

I've ended up spending £15 on an uploading script to save me going any greyer and my brain melting. Maybe I should have spent it on a php for Dummies book! Thanks for the exit pointer, but that was the end of the php. I will remember it for the future though. Thanks, both, for your time. I did learn what an absolute path was though. I thought it was just the full http address!

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.