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: 12 let
|
0