Anonymní profil svetlusak – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil svetlusak – Programujte.comAnonymní profil svetlusak – Programujte.com

 

Příspěvky odeslané z IP adresy 193.84.205.–

svetlusak
PHP › upload souboru na FTP přes P…
3. 12. 2015   #206991

dobry den vsem! moc bych vas chtela poprosit o pomoc. muj provozovatel hostingu nedavno zmenil verzi a prostredi PHP a od te doby mam problemy na webu. konkretne s nahravanim souboru na FTP server pres formular a PHP. komunikace s databazi mi funguje, ale neprenese se mi soubor. prosim, najde se nekdo, kdo by mi mohl poradit? byla bych vam moc vdecna...

formular: 

<?  include('./config.php');    ?>
<?
    $spojeni = @MySQL_Connect($se, $uz, $he);
    $db = @MySQL_Select_DB($DB);

?>


<FORM METHOD="POST" action="ins_info.php" enctype="multipart/form-data">
<TABLE>

<TR><TD><u><b>Upload a file:</b></u></TD></TR>
<TR>
<TD><b>Title:</b></TD>
<TD><INPUT TYPE="TEXT" NAME="titulek_form"></INPUT></TD>
</TR>
<TR>
<TD><b>Date:</b></TD>
<TD><INPUT TYPE="TEXT" NAME="datum_form"></INPUT></TD>
</TR>
<TR>
<TD><b>File:</b></TD>
<TD><INPUT TYPE="FILE" ACCEPT="*/*" SIZE="33" NAME="soubor"></INPUT></TD>
</TR>
<TR>
<TD><INPUT TYPE="SUBMIT" NAME="Odeslat" VALUE="Add to database"></INPUT></TD>
</TR>
</TABLE>

</FORM>

a soubor ins_info.php (soubor vlozeny pres formular dostane nove jmeno, napr. info1234.pdf -- ale ted mi funguje pouze komunikace s databazi -- takze vysledek je, ze na vystupu dostanu pouze info1234. (bez souboru na FTP serveru a bez koncovky s typem souboru). asi mam chybu nekde v te druhe casti kodu, od podminky while, ale nevim si s tim rady. slozky, do kterych se ma zapisovat, maji obe dve prava 777): 

<?	include('./config.php')	?>
<?
    @Set_Time_Limit(0);
    $INI_ADMIN_PASSWORD = $_POST["INI_ADMIN_PASSWORD"];
    $INI_ftp_server = $_POST["INI_ftp_server"];  
    $INI_info_path = $_POST["INI_info_path"];                                  
    $INI_info_ftp_path = $_POST["INI_info_ftp_path"]["filetype"]; 
    $INI_server_info_path = $_POST["INI_server_info_path"];
    $INI_server_tmp_path = $_POST["INI_server_tmp_path"];
    $INI_ftp_user = $_POST["INI_ftp_user"];
    $INI_ftp_pass = $_POST["INI_ftp_pass"];                               
    $spojeni_ftp = $_POST["spojeni_ftp"];
    $soubor = $_FILES["soubor"]["name"];

    $titulek_form = $_POST["titulek_form"];
    $datum_form = $_POST["datum_form"]; 
    $DatumInt = $_POST["DatumInt"];
    $MaxID = $_POST["MaxID"];     
    $prenos_info = $_GET[prenos_info];
    $vloz_info = $_GET[vloz_info];   
    $jmeno = $_POST["jmeno"];
    $vyber2 = $_POST["vyber2"];
    $datum2 = $_POST["datum2"];
    $nazev = $_POST["nazev"]; 
    $soubor_name = $_POST["soubor_name"];
    $cislo = $_POST["cislo"];
    $jmeno =  $_POST["jmeno"];    

IF($PASSWORD==$INI_ADMIN_PASSWORD):

	$spojeni = @MySQL_Connect($se, $uz, $he);
	$db = @MySQL_Select_DB($DB);

	$vyber2 = @MySQL_Query("SELECT Max(ID) FROM info");
	$MaxID = @MySQL_Result($vyber2, 0) +1;

	$titulek_form = HTMLSpecialChars($titulek_form);
	$datum_form = HTMLSpecialChars($datum_form);

	$datum2 = Explode(".", $datum_form);

	$DatumInt = MkTime(0,0,0, $datum2[1], $datum2[0], $datum2[2]);

	$jmeno = "info";
	
	$i = 1;

	do
{
		 if($i==1) $jmeno_old = $jmeno;
		 $jmeno = $jmeno_old;
		 $nazev = Explode(".", $soubor_name);
		 SRand((double)MicroTime()*1e6);
		 $cislo = Rand (1, 9999);
//		 $nazev[0] .= $cislo;
		 $jmeno .= $cislo.".".$nazev[1];
		 $i++;
}
	While(@File_Exists($soubor));


	$vloz_info = @MySQL_Query("INSERT INTO info VALUES ('$MaxID', '$titulek_form', '$datum_form', '$jmeno', '$DatumInt')");


// ***	FTP prenos souboru

        @ftp_chdir($INI_server_tmp_path);                 						        	// docasny adresar
        $spojeni_ftp = ftp_connect($INI_ftp_server); 	 					                // pripojeni k FTP serveru
        @ftp_login($spojeni_ftp, $INI_ftp_user, $INI_ftp_pass);                 // prihlaseni k FTP serveru

        $prenos_info = @ftp_put($spojeni_ftp, $INI_info_ftp_path.'/'.$jmeno, $_FILES["soubor"]["name"], FTP_BINARY);   	// kam se ma soubor ulozit

        @ftp_chdir($INI_server_home_path);                                 				// nastaveni domovskeho adresare
        @ftp_close($spojeni_ftp);                                                     			// odhlaseni od FTP serveru


// *** Konec - FTP prenos souboru

	Header("Location: status.php?prenos_info=$prenos_info&vloz_info=$vloz_info");
?>
<?
ELSE:
	Echo "<p style=\"color: #FF0000;\"><b>Nemáte přístup k aplikaci!</b></p>";
ENDIF;
?>

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032022 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý