vou postar o codigo, mais o codigo nao tem erro, entao tenho duas opções, ou o apache ou o php
<?php require_once('../conecta.php'); $data_arquivo = date("YmdHis"); @copy($_FILES['arquivo']['tmp_name'], "arquivos/".$data_arquivo.'_'.$_FILES['arquivo']['name']); $arquivo = $_FILES['arquivo']['tmp_name']; $retorno = file($arquivo); $totalLinhas = count( $retorno ); $pedidos = array(); /* DEFINE AS LINHAS DE CABEÇALHO E FOOTER */ $linhaStart = 1; $linhaStop = $totalLinhas - 1; $matrix = 0; $counter = 0; $arquivo = array(); for ($i=$linhaStart; $i<$linhaStop; ++$i){ $produto[$matrix][$counter] = $retorno[$i]; $arquivo['NOSSO_NUMERO']['ID'] = substr( $produto[ $matrix ][ $counter ], 64 - 1, 17 ); $arquivo['DATA_CREDITO']['GET'] = substr( $produto[ $matrix ][ $counter ], 111 - 1, 8 ); $arquivo['DATA_CREDITO']['DAY'] = substr( $arquivo['DATA_CREDITO']['GET'], 0, 2 ); $arquivo['DATA_CREDITO']['MONTH'] = substr( $arquivo['DATA_CREDITO']['GET'], 2, 2 ); $arquivo['DATA_CREDITO']['YEAR'] = '20'.substr( $arquivo['DATA_CREDITO']['GET'], 4, 2 ); $arquivo['DATA_CREDITO']['DB'] = $arquivo['DATA_CREDITO']['YEAR'] . "-" . $arquivo['DATA_CREDITO']['MONTH'] . "-" . $arquivo['DATA_CREDITO']['DAY']; $arquivo['DADOS']['VALOR'] = (int)substr( $produto[ $matrix ][ $counter ], 261 - 1, 4 ).','.substr( $produto[ $matrix ][ $counter ], 265 - 1, 2 ); //echo (int)substr( $produto[ $matrix ][ $counter ], 261 - 1, 4 ).','.substr( $produto[ $matrix ][ $counter ], 265 - 1, 2 ); $counter = 0; $pedidos[$matrix] = array("id" => $arquivo['NOSSO_NUMERO']['ID'], "dt_pagamento" => $arquivo['DATA_CREDITO']['DAY'].'/'.$arquivo['DATA_CREDITO']['MONTH'].'/'.$arquivo['DATA_CREDITO']['YEAR'], "valor" => $arquivo['DADOS']['VALOR'], "baixado" => 0); $query = " SELECT b.id_insc_matricula FROM boleto b WHERE b.numero_boleto = " . $arquivo['NOSSO_NUMERO']['ID'] . " AND pagamento = '0'"; //echo $query; if (!$result = mysql_query( $query )){ die( "ERRO: " . mysql_error() . $query); } if (mysql_num_rows($result ) != 0){ $values = mysql_fetch_array($result); $valor_pago = str_replace(",", ".", $arquivo['DADOS']['VALOR']); $query = "UPDATE boleto SET pagamento = '1', dt_pagamento = '" . $arquivo['DATA_CREDITO']['DB'] . "', valor_pago = '" . $valor_pago . "' WHERE numero_boleto = '" . $arquivo['NOSSO_NUMERO']['ID'] ."'"; //echo $query . "<br>"; //exit; $pedidos[$matrix]['baixado'] = 1; if (!$result = mysql_query($query)){ die("ERRO: " . mysql_error() . $query); } ++$matrix; } else { echo "O boleto " . $arquivo['NOSSO_NUMERO']['ID'] . " não existe ou ja foi baixado!<br>"; } ++$counter; } ?>
a conexão com o BD esta perfeita, e o arquivo chega através de um form
quando mando esse codigo para um outro servidor o mesmo funciona numa boa, parece que alguns dos serviços do PHPou funções estão desligados.
Alguem sabe o que pode ser.