allora ho provato ad utilizzare l'unica cartella che crea per estrarre i file ma non ci riesce.. cioè i file estratti in cartelle esistenti riesce a farlo, mentre quelli estratti in cartelle create non ci riesce.. come mai? è come se nonostante ci siano i diritti di scrittura non mi faccia scrivere lo stesso...perché? in locale funziona tutto mentre sul maledetto server web no!!

AIUTO!!


Codice PHP:

for ($j=0$j<$zip->numFiles;$j++)
{
  
$f=$zip->statIndex($j);
  
$p=pathinfo($f['name']);
  
$dirst=explode('/',$p['dirname']);
  
//$d='../';
  
$d=$_SERVER['DOCUMENT_ROOT'].'/';
  for (
$i=0;$i<count($dirst);$i++)
  {                    
    if (
$dirst[$i]<>".")                    
    {                      
      
$d.=$dirst[$i].'/';
      if (! 
is_dir($d))
      {
        if (! 
mkdir($d,0777,true))
          echo 
'NON creata '.$d;
        else
        {                         
          echo 
'creata '.$d;
          if (
chmod($d,0777))
          {
            echo 
' permessi';
          }
          else
          {
            echo 
' non permessi';
          }
        }
      }
      else
        echo 
'esiste '.$d;
      echo 
'
'
;
      
$dext=$_SERVER['DOCUMENT_ROOT'].'/';
    }
    else
      
$dext=$_SERVER['DOCUMENT_ROOT'].'/tmp/';
  }
  if (
$zip->extractTo($dext,$f['name']) )
    echo 
$dext.$f['name'].' [B]ESTRATTO[/B] 
'
;
  else
    echo 
$dext.$f['name'].' NON estratto 
'
;
}
$zip->close();
echo 
'fine'