ftp_check_and_send.php
3.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php
/*
Copyright 2000, 2001, 2002, 2003, 2004, 2005 Dataprev - Empresa de Tecnologia e Informações da Previdência Social, Brasil
Este arquivo é parte do programa CACIC - Configurador Automático e Coletor de Informações Computacionais
O CACIC é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como
publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão.
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer
MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes.
Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título "LICENCA.txt", junto com este programa, se não, escreva para a Fundação do Software
Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
require_once('library.php');
AntiSpy('1,2,3'); // Permitido somente a estes cs_nivel_administracao...
function checkAndSend($pStrNmItem,
$pStrFullItemName,
$pStrTeServer,
$pStrTePathServer,
$pStrNmUsuarioLogin,
$pStrTeSenhaLogin,
$pStrNuPortaServer)
{
require_once('class.ftp.php');
$strSendProcess = 'Nao Enviado!';
$strProcessStatus = '';
$strProcessCode = '';
try
{
$FTP =& new FTP();
if ($FTP->connect($pStrTeServer))
{
// Retorno esperado....: 230 => FTP_USER_LOGGED_IN
// Retorno NÃO esperado: 530 => FTP_USER_NOT_LOGGED_IN
if ($FTP->login($pStrNmUsuarioLogin,$pStrTeSenhaLogin))
{
// Retorno esperado: 250 => FTP_FILE_ACTION_OK
// Retorno NÃO esperado: 550 => FTP_PERMISSION_DENIED (ou a pasta não existe!)
$FTP->chdir($pStrTePathServer);
$intFtpPutResult = $FTP->getLastResult();
$strProcessCode = $intFtpPutResult;
if ($intFtpPutResult == 250)
{
// Retorno esperado....: 226 => FTP_FILE_TRANSFER_OK
// Retorno NÃO esperado: 550 => FTP_PERMISSION_DENIED
$FTP->put($pStrNmItem,$pStrFullItemName);
$intFtpPutResult = $FTP->getLastResult();
$strProcessCode = $intFtpPutResult;
if ($intFtpPutResult == 226)
{
$strSendProcess = 'Enviado com Sucesso!';
$strProcessStatus = 'Ok!';
}
else
$strProcessStatus = 'ERRO: Problema no Envio!';
}
else
$strProcessStatus = 'ERRO: Pasta "' . $pStrTePathServer . '" inacessivel!';
}
else
{
$strProcessStatus = 'Falha no Login com usuario "' . $pStrNmUsuarioLogin . '"!';
$strProcessCode = $FTP->getLastResult();
}
$FTP->disconnect();
}
else
{
$strProcessStatus = 'ERRO: Impossivel conectar o servidor "' . $pStrTeServer . '"!';
$strProcessCode = $FTP->getLastResult();
}
}
catch (FTPException $e)
{
$strProcessStatus = 'ERRO: Problema durante a conexao! (' . $e->getMessage() . ')';
$strProcessCode = $FTP->getLastResult();
}
return $strSendProcess . '_=_' . $strProcessStatus . '_=_' . $strProcessCode;
}
?>