Stránka 1 z 1

PHP ftp_connect/ftp_login error

Napsal: 07 bře 2013 16:40
od honzaik
Tak sem se po dlouhé době rozhodl že udělám něco v php. Udělal sem skript na automatické updatování souborů na ftp serveru, vlastně je to stáhne a pak zase nahraje. Je to udělané pro více serverů. Vždy po 1. úspěšně provedenym updatu php napíše

Kód: Vybrat vše

Warning: ftp_connect() [function.ftp-connect]: php_network_getaddresses: getaddrinfo failed: Name or service not known in xxxxx on line 4
Warning: ftp_login() expects parameter 1 to be resource, boolean given in xxxxxx on line 5


prostě druhý připojení se nepovede, chyba bude u mě jako u klienta, zkoušel sem to na 2 jiný servery a vždycky funguje jenom 1. připojení.

tady source té funkce

Kód: Vybrat vše

function updateFile($server, $nick, $pass){
   echo "<br>Executing connection.<br>";
   $connection = ftp_connect($server);
   $login = ftp_login($connection, $nick, $pass);
   ftp_pasv($connection, true);
   if(!$connection || !$login){
      echo "Login failed.";
      die;
   }else{
      echo "Login succesful.";
   }

   if(ftp_get($connection, "derp.php", "index.php", FTP_BINARY)){
      echo " Downloaded succesfully.";
   }else{
      echo " Download error. on ".$server;
   }

   if(ftp_put($connection, "index.php", "derp.php", FTP_BINARY)){
      echo " Upload succesful.";
   }else{
      echo " Upload error.";
      die;
   }
   ftp_close($connection);
   
   echo "<br> UPDATED!";
}


a ta samozřejmě jede v loopu (for) ale v tom problém pravděpodobně neni.
Zkouším to doma na XAMPP ale zkoušel sem to i na wedos.cz, spustit skript.

Re: PHP ftp_connect/ftp_login error

Napsal: 07 bře 2013 19:27
od CrazyC0de
Zkus vyechovat ty proměnné, jestli se předají.

Re: PHP ftp_connect/ftp_login error

Napsal: 07 bře 2013 21:34
od CZechBoY
chtělo by to napsat jaký parametry tam cpeš
dáváš tam vůbec protokol? pač mi to připadá že si to stěžuje na protokol (neuveden)

Re: PHP ftp_connect/ftp_login error

Napsal: 08 bře 2013 00:49
od honzaik
cpu tam přesně ftp jen server jako "34894.wedos.net" nick jako přihlašovací jmeno a heslo taky. protokol je ftp ne? jako poprvé se to vždy připojí a udělá to přesně co chci, když to jde na další tak to nefunguje. proměné jsou všechny v pohodě když je vyechuju.

--- Doplnění předchozího příspěvku (08 Bře 2013 01:05) ---

ok tak sem pokročil, funguje to když spustim ty 2 funkce za sebou ale bez loopu, takže chyba bude někde tam, sice nevim kde ale podívám se na to.

--- Doplnění předchozího příspěvku (08 Bře 2013 01:13) ---

jo takže problém vyřešen :D blbýmu php vadilo že text je na jinejch lajnach v txt, takže to text vypsalo stejně ale nějak to nefungovalo. díky za pomoc :D

Re: PHP ftp_connect/ftp_login error

Napsal: 08 bře 2013 14:34
od CrazyC0de
Není zač, ale asi to nebude tím, že je PHP blbý, co ?

Re: PHP ftp_connect/ftp_login error

Napsal: 08 bře 2013 15:07
od honzaik
tak mi řekni proč má problém s tim že text je z jiný lajny v dokumentu ale obsah stringu je uplně stejnej. aspon by tě to mělo upozornit, je to jen string, neměl by mit žádný skrytý data v php, v javě a vyšších jazycích to chápu.
neměl by bejt problém když dáš
echo $prom1 ----> "ftp.server.cz"
a druhá
echo $prom2 ----> "ftp.server.cz"
ale druhou ti to nevezme. to by se dít nemělo aspon u tohodle imho

Re: PHP ftp_connect/ftp_login error

Napsal: 08 bře 2013 15:10
od CZechBoY
dal si tam ten protokol?
nebereš tam nějakej bordel z toho souboru?
dej si vypsat ty proměnný jak radil CrazyC0de

Re: PHP ftp_connect/ftp_login error

Napsal: 08 bře 2013 15:13
od honzaik
říkám jakej protokol? :D v php ftp dokumentaci žádnou zmínku o zadání protokolu nevidim - protokol je ftp ne? :D
žadnej borel tam nebyl jen data v lajně oddělený čárkou a středníkem
proměný píšou uplně to samý
----
problém je vyřešenej. chyba je někde mezi předávání informací mezi txt a php do array. mám funkční řešení (dám data do řady za sebou místo každý na jedný lince)

--- Doplnění předchozího příspěvku (08 Bře 2013 15:39) ---

tak už to všechno funguje jak má, při importu dat tam byly nějaké neviditelné whitespaces (aspon ve chromu), takže sem akorát použil tohle
preg_replace('/\s+/', '', $str);
a všechno už funguje jak má.
děkuji za snahu pomoci :D

Re: PHP ftp_connect/ftp_login error

Napsal: 08 bře 2013 21:45
od CrazyC0de
Není vůbec za co, konec konců jsi na to přišel sám.

Re: PHP ftp_connect/ftp_login error

Napsal: 09 bře 2013 00:25
od CZechBoY
no proto jsem se ptal jestli je tam bordel ;-)
protokol znamená ftp:// ale nevim jestli se tam musí dávat, nějak jsem to nezkoušel

Re: PHP ftp_connect/ftp_login error  Vyřešeno

Napsal: 09 bře 2013 14:01
od honzaik
nn nemá prej, aspon sem to čet, když sem pátral :D ani http://www atd