| Autor | Zpráva | ||
|---|---|---|---|
| dejvos Profil |
#1 · Zasláno: 10. 3. 2009, 11:16:42
Zdravím, mám problémy s funkcí ftp_put(). Vše proběhne zdánlivě v pořádku - data (obrázek .png) se zdánlivě v pořádku uloží na server. Soubor má stejnou velikost jako originál a dá se číst. Čtení nefunguje ovšem korektně ... systém ho vyhodnocuje jako NE obrázek. (Jako by byla poškozený hlavička png či podobně.)
Neví někdo z Vás kde by mohl být problém?
$result = array();
$addr = ereg_replace(' ','_',$addr);
$addr = ereg_replace('/','_',$addr);
$cn = ftp_connect(self::RES_LIBRARY);
//print_r($files);
if(!$cn) return false;
if(!ftp_login($cn,self::FTP_USER,self::FTP_PSSWD)) return false;
foreach($files as $key => $f){
if($f['size'] == 0) continue;
if(!ftp_chdir($cn,self::FTP_ADDR)) {
if(!ftp_mkdir($cn,self::FTP_ADDR)) return false;
ftp_chdir($cn,self::FTP_ADDR);
};
if(!ftp_chdir($cn,self::FTP_ADDR.$addr)) {
if(!ftp_mkdir($cn,self::FTP_ADDR.$addr)) return false;
ftp_chdir($cn,self::FTP_ADDR.$addr);
};
$x = ftp_nlist($cn,self::FTP_ADDR.$addr);
//var_dump($x);
$ne = true;
foreach($x as $y){
$y = explode("/",$y);
if($y[count($y)-1] == $f['name']) { $ne = false;break; };
};
$file_name = $f['name'];
if(!$ne){
$file_name = explode(".",$file_name,2);
$file_name = $file_name[0].time().'.'.$file_name[1];
};
//echo file_get_contents($f['tmp_name']);
//die();
$res = ftp_put($cn,self::FTP_ADDR.$addr.'/'.$file_name,$f['tmp_name'],FTP_BINARY);
//die();
//var_dump($res);
if(!$res) return false;
//echo "dsadas";
$result[] = $addr."/".$file_name;
};
ftp_close($cn);
|
||
| dejvos Profil |
#2 · Zasláno: 10. 3. 2009, 11:53:30 · Upravil/a: dejvos
Ještě tedy doplnění:
Velikosti předlohy a souboru který stáhnu je různá ... stažený je o byte větší ... |
||
| dejvos Profil |
#3 · Zasláno: 11. 3. 2009, 09:36:01
Řešení:
skript, který měl na starost stahování byl zakončen exit(0); ... proto ten byte nakonci ... exit; vyřešil můj problém.... |
||
|
Časová prodleva: 17 let
|
|||
0