| Autor | Zpráva | ||
|---|---|---|---|
| Šéva Profil * |
#1 · Zasláno: 6. 3. 2012, 15:40:24
Zdravím,
měl bych dotaz ohledně uploadu souborů z jednoho serveru na druhý. Na ten druhý server se dá dostat pouze po přihlášení přes UNC cestu \\server\slozka, přihlašovací údaje znám, ale nevím, jak mám vytvořit spojení s tímto severem, abych na něj mohl nahrávat soubory a následně pak z něj vypisovat složky, soubory a mazat obsah složek... pro upload jsem zkoušel něco takového <style type="text/css">
p#progress_bar{
visibility: hidden;
text-align: center;
margin: 0px;
padding: 0px;
background-color: #fff;
border: 0px solid #ccc;
}
</style>
<center>
<p style="color:red"><u><b><big>Maximální velikost souboru je 1MB!!</big></b></u></p>
<br>
Koncovka souboru může být jen: 'jpg', 'jpeg', 'png', 'gif'
<br><br><br>
<script type="application/javascript;version=1.7">
function zacitNahravani(){
document.getElementById('progress_bar').style.visibility = 'visible';
return true;
}
function konecNahravani(stav){
document.getElementById('progress_bar').style.visibility = 'hidden';
return true;
}
</script>
<b>Vyberte umístění souboru:</b>
<form action="" method="post" enctype="multipart/form-data" onsubmit="zacitNahravani();">
<input name="soubor" type="file" SIZE="40">
<input name="nahrat" value="Nahrát" type="submit">
</form>
<br>
<p id="progress_bar">Nahrávám soubor...<br><img src="./loading.gif"><br>Neaktualizujte a neklikejte na tuto stranku ! Upload souboru může trvat i několik hodin.</p>
<p id="vysledek"></p>
<?php
if(isset($_POST['nahrat']))
{
$request_url = "\\\upload_nas";
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERPWD, "user:password");
curl_setopt($ch, CURLOPT_URL, $request_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$soubor = ($_FILES["soubor"]["tmp_name"]);
$soubor_name = ($_FILES["soubor"]["name"]);
$koncovky = array('jpg', 'jpeg', 'png', 'gif');
$soubor_size = ($_FILES["soubor"]["size"]/1024)/1024;
if($soubor_name == "")
{
echo "<center><b>Chyba - soubor nebyl nahrán. Chyba vstupních dat</b></center><BR>";
}
elseif($soubor_size>1)
{
echo "<center><b>Chyba - soubor nebyl nahrán. Velikost překračuje 1MB.</b></center><BR>";
}
elseif (!in_array(strtolower(pathinfo($soubor_name, PATHINFO_EXTENSION)), $koncovky))
{
echo "<b><center>CHYBA!!</b><br>Koncovka souboru musí být jedna z: " . implode(", ", $koncovky) . ".</center>";
}
else
{
if (move_uploaded_file($soubor, "\\\upload_nas\\test\\$soubor_name"))
{
echo "OK";
}
else
{
echo "<center><b>Chyba - soubor nebyl nahrán.</b></center><br>";
}
}
curl_close($ch);
}
?>ale pokaždé mi to skončí na této chybové hlášce Warning: move_uploaded_file(\\upload_nas\test\prohlaseni.JPG) [function.move-uploaded-file]: failed to open stream: Invalid argument in C:\wamp\www\upload.php on line 76 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'c:/wamp/tmp\php23F4.tmp' to '\\upload_nas\test\prohlaseni.JPG' in C:\wamp\www\upload.php on line 76 Chyba - soubor nebyl nahrán. už nevím co s tím, máte nějaké napady prosím? Díky |
||
| Taps Profil |
#2 · Zasláno: 6. 3. 2012, 17:30:15
|
||
| Šéva Profil * |
#3 · Zasláno: 6. 3. 2012, 19:03:17
nakonec jsem to vyresil pres curl a ftp...
trochu jsem se bal toho,aby kdyz zapnu moznost pripojeni pres ftp, tak se tam bude moci dat pripojit i z venci pres ftp,ale provider firewallu ma tu VLANu dobre nastavenou,takze to budu posilat tak :) jinak jestli jsem to dobre pochopil,tak to pres UNC cesty nejde od verze 5.2.0? jinak stavajici upload co je ted se take odkazuje pres UNC cestu a to funguje, leda, ze by byl problem primo v te funkci curl s UNC cestou... |
||
|
Časová prodleva: 14 let
|
|||
0