Lo script completo è riportato di seguito.
Penso che il problema sia soprattutto relativo alle variabili:
$dcrt=$_SERVER['DOCUMENT_ROOT'];}
$io= substr($PHP_SELF,strrpos($PHP_SELF,'/'));
$pth=str_replace("$io","",$_SERVER['SCRIPT_NAME']);
Come già detto, in locale funziona.
Vi ringrazio per la disponibilità ad aiutarmi (ho caricato ieri il tutto e questo è l'unico problema che ho incontrato.
Alberto
Codice PHP:
<?php
require_once"aut.php";
require_once"db_conn.php";
echo"
<head>
<link rel='stylesheet' type='text/css' href='mio.css' media='screen'/>
</head>";
$PHP_SELF=$_SERVER['PHP_SELF'];
if (isset($_FILES['fileup']['name'])) {$fileup=$_FILES['fileup']['name'];}
if (isset($_FILES['fileup']['tmp_name'])) {$ptup=$_FILES['fileup']['tmp_name'];}
if (isset($_FILES['fileup']['size'])) {$size=$_FILES['fileup']['size'];}
if (isset($_SERVER['DOCUMENT_ROOT'])) {$dcrt=$_SERVER['DOCUMENT_ROOT'];}
$io= substr($PHP_SELF,strrpos($PHP_SELF,'/'));
$pth=str_replace("$io","",$_SERVER['SCRIPT_NAME']);
if (isset($_POST['nome_dir'])) {$nome_dir=$_POST['nome_dir'];}
if (isset($_POST['tp'])) {$tp=$_POST['tp'];}
if (isset($_POST['nome2'])) {$nome2=$_POST['nome2'];}
if (isset($_POST['nome'])) {$nome=$_POST['nome'];}
if (isset($_GET['nome'])) {$nome=$_GET['nome'];}
if (isset($_GET['job'])) {$job=$_GET['job'];} else {$job="upload";}
switch ($job){
case "upload": // form di immisione messaggi
echo"<div class='riquadro'>
<form method=POST action= '$PHP_SELF?job=up' enctype=multipart/form-data>
<b>Carica file dosi temporanee</b><br><br>
Attenzione! Le precedenti dosi temporanee verranno sostituite!
<br><br>
<input type=file name=fileup size='70'>
<button name=submit type=submit>
Trasferisci
</button>";
echo"<br><br><br><a href='javascript:history.back()' class='bottone'>Annulla</a>
</form>
</body>
</html></div>";
break;
case "up":
if($fileup=='') {echo"Deve essere selezionato il file! <br><br><br><a href='javascript:history.back()' class='bottone'>Indietro</a>";die;}
$ap1=chr(39);
$ap2=chr(34);
$ap3=chr(47);
$ap4=chr(92);
$ap=strpos($fileup,$ap1); if($ap!='') {echo"Nel nome presente carattere vietato: $ap1 <br><br><br><a href='javascript:history.back()' class='bottone'>Indietro</a>";die;}
$ap=strpos($fileup,$ap2); if($ap!='') {echo"Nel nome presente carattere vietato: $ap2 <br><br><br><a href='javascript:history.back()' class='bottone'>Indietro</a>";die;}
$ap=strpos($fileup,$ap3); if($ap!='') {echo"Nel nome presente carattere vietato: $ap3 <br><br><br><a href='javascript:history.back()' class='bottone'>Indietro</a>";die;}
$ap=strpos($fileup,$ap4); if($ap!='') {echo"Nel nome presente carattere vietato: $ap4 <br><br><br><a href='javascript:history.back()' class='bottone'>Indietro</a>";die;}
//$absolute_path=$dcrt.$pth.'/tmp/'.$fileup;
$absolute_path=$dcrt.$pth.'/tmp/'.$dominio_db.'.csv';
@copy($ptup, $absolute_path) or die("<div class='riquadro'><b>Errore, file non selezionato o Upload fallito!</b>
<br><br><a href='javascript:history.back()' class='bottone'>Indietro</a></div>");
$sost=strpos($fileup,' ');
if($sost!=''){
$newnome=str_replace(' ','_',$fileup);
rename($fileup,$newnome);}
echo"<script language='javascript'> window.location.replace('$PHP_SELF?job=load')</script>";die();
break;
case "load":
//esempio di caricamento con load
//$sql='LOAD DATA INFILE "c:/program files/easyphp1-8/www/ape/import.csv" INTO TABLE test FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY """" LINES TERMINATED BY "\r\n"';
# first get a mysql connection as per the FAQ
$fcontents = file ('./tmp/'.$dominio_db.'.csv');
# expects the csv file to be in the same dir as this script
$con=mysql_connect ($server, $utente, $db_pass) or die (errore_server ());
$db = mysql_select_db ($dbase, $con) or die (errore_server ());
$sql="DELETE FROM tmp WHERE Dominio='".$dominio_db."'";
$res = mysql_query ($sql, $con) or die(mysql_error());
for($i=0; $i<sizeof($fcontents); $i++) {
$line = trim($fcontents[$i]);
$arr = explode("\t", $line);
#if your data is comma separated
# instead of tab separated,
# change the '\t' above to ','
$sql = "insert into tmp values ('$i$dominio_db','N','$dominio_db',".implode("','", $arr) .")";
$res = mysql_query ($sql, $con) or die(mysql_error());
}
mysql_close($con);
echo"<script language='javascript'> window.location.replace('tmp.php')</script>";die();
break;
}
?>
Usa i tag appositi per il codice