upload in cartelle diverse

grazie criric

riposta i file modificati
penso proprio di essere andato in tilt ieri
e questa mattina ho riparato ad alcuni errori al sito.

questo è il primo file
PHP:
<?php 
<input type='hidden' name='passwd' value='<?php echo $passwd; ?>'/> 

<!------------------- inizio html pagina riservata-------------------->

<html>

<head>
<meta http-equiv="Content-Language" content="it">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Upload </title>
</html>
<html>
<head>
</head>

<body bgcolor="#ffffff">

<div align="center">
  <center>
  <table border="0" cellpadding="0" cellspacing="0" width="90%">
    <tr>
      <td width="100%"><table width="400" height="47" border="0" align="center" cellpadding="00">
          <tr>
            <td width="475" background="sf_tit.jpg"><div align="center"><span class="nero_sott">Area Protetta </span></div></td>
          </tr>
        </table></td>
    </tr>
    <tr>
      <td width="100%" height="290"><div align="center">
        <table width="400" height="250" border="0" cellpadding="00">
          <tr>
            <td background="sf_table.jpg"><form action="up.php" method="post"
enctype="multipart/form-data">
              <label for="file"></label>
              <div align="center">
                <label for="label"><span class="nero">Filename:</span></label>
                <span class="nero">
                <input name="file" type="file" class="azzurro" id="file" />
                </span> <br />
                <br>
                <input name="submit" type="submit" class="azzurro" value="Submit" />
              </div>
            </form></td>
          </tr>
        </table>
      </div>
    </tr>
  </table>
  </center>
</div>
<!------------------- fine html pagina riservata-------------------->
</body>
</html>
e questo è il secondo
PHP:
<?php

if(!isset($_SERVER['DOCUMENT_ROOT'])){
 if(isset($_SERVER['SCRIPT_FILENAME'])){
	$_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF'])));
 };
};
 
if(!isset($_SERVER['DOCUMENT_ROOT'])){
 if(isset($_SERVER['PATH_TRANSLATED'])){
	$_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr(str_replace('\\\\', '\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF'])));
 };
};

$PercorsoDominio = $_SERVER['DOCUMENT_ROOT'];
//echo "<br>".$PercorsoDominio;
$public = "/public/upload/" . $_POST['passwd'] . "/";   
if(is_dir($PercorsoDominio.$public))
{

   echo "<font color=green>Check cartella OK.</font><br>";

}
else
{

   echo "<font color=red>ATTENZIONE LA CARTELLA DI DESTINAZIONE NON ESISTE. FARE RIFERIMENTO ALLA GUIDA, CREARE LA CARTELLA. UPLOAD NON RIUSCITO</font><br>";
exit;
}




if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "application/zip")
|| ($_FILES["file"]["type"] == "application/x-zip-compressed")
|| ($_FILES["file"]["type"] == "application/x-shockwave-flash"))
&& ($_FILES["file"]["size"] < 2000000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Tipo: " . $_FILES["file"]["type"] . "<br />";
    echo "Dimensione: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "File temporaneo: " . $_FILES["file"]["tmp_name"] . "<br />";
	
	
   if (file_exists($PercorsoDominio. $public . $_FILES["file"]["name"]))

      {
      echo $_FILES["file"]["name"] . " esistente. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
	       $PercorsoDominio. $public . $_FILES["file"]["name"]);

    echo "Upload eseguito con successo";
	  
      }
    }
  }
else
  {
  echo "Tipo di file non valido";
  }
?>
 
Ultima modifica di un moderatore:
Quell'input che hai messo (giustamente) nascosto in alto, deve stare nel form altrimenti non invia niente all'altra pagina e infatti tu non ricevi niente nella seconda avendo così un valore nullo per $_POST['passw'].
Quindi spostalo nel form e prova.
In <?php non serve nella prima pagina.
 

Discussioni simili