Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Diego Sousa

file_get_contents

Recommended Posts

Bom dia pessoal, estou com um problema grande, o servidor onde hospedo uns sistemas, bloqueou a função file_get_contents..

 

Ja pedi para eles desbloquearem, porém me informaram que não é possivel, por motivos de segurança de outros clientes deles também...

 

Ja tentei usar outras funções como:

 

curl

file

fread

fgets

 

Ja procurei no google e nada =(

 

Presciso de uma solução alguem pode ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso é por questão de segurança da hospedagem compartilhada.

 

Não há muito o que fazer, a não ser que queira brincar com exploits pra conseguir o bypass e correr o risco de ser banido de lá.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

o cURL funciona muito bem.. qual a dificuldade ?

 

exemplo:

http://wbruno.com.br/blog/2011/05/29/buscando-uma-hash-tag-search-twitter/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha minha situação é essa, tentei arrumar e ficou assim, o email envia normalmente, porém o email chega em branco

 

 

#########################################################################################################################################

<?
include("mysql.inc.php");
$envia_email = $_GET["envia_email"];
if ($envia_email==1) {
$sql4 = selecionaBD("orca", "WHERE codigo_orca = '".$_GET["codigo_orca"]."'");
$z = listaLinhas($sql4); 

function curl_file($url, $timeout=0) {
       $ch = curl_init();
       curl_setopt ($ch, CURLOPT_URL, $url);
       curl_setopt ($ch, CURLOPT_HEADER, 1);
       curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
       curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
       $conteudo = curl_exec($ch);
       curl_close($ch);
       $arquivo = explode("\n", $conteudo);

       return $conteudo;
 }

$para	 = "".$z["email_contato"]."";
$subject = "Proposta *****";
$body = "<html>\n";
$body .= curl_file("include/detal_orca.php?codigo_orca=".$_GET["codigo_orca"]."&email=1");
$body .= "</body>\n";
$body .= "</html>\n";

$headers  = "From: *****<****@*****.com.br>\r\n";
$headers .= "Reply-To: ****@*****.com.br\r\n";
$headers .= "Return-Path: ****@*****.com.br\r\n";
$headers .= "X-Mailer: Drupal\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

mail($para, $subject, $body, $headers);
$msg = "Orçamento enviado com sucesso!";
}
?>

################################################################################################

 

 

Obs: ja tentei colocar caminho absoluto, mais também não resultou em nada

Antes Meu código estava assim, porém o servidor bloqueou a function file_get_contents

 

 

 

######################################################################################################################

<?
include("mysql.inc.php");
$envia_email = $_GET["envia_email"];
if ($envia_email==1) {
$sql4 = selecionaBD("orca", "WHERE codigo_orca = '".$_GET["codigo_orca"]."'");
$z = listaLinhas($sql4);  

$para	 = "".$z["email_contato"]."";
$subject = "Proposta ****";
$body = "<html>\n";
$body .= file_get_contents("/include/detal_orca.php?codigo_orca=".$_GET["codigo_orca"]."&email=1");
$body .= "</body>\n";
$body .= "</html>\n";

$headers  = "From: *****<****@*****.com.br>\r\n";
$headers .= "Reply-To: ****@*****.com.br\r\n";
$headers .= "Return-Path: ****@*****.com.br\r\n";
$headers .= "X-Mailer: Drupal\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

mail($para, $subject, $body, $headers);
$msg = "Orçamento enviado com sucesso!";
}

################################################################################################

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas se o arquivo está no teu servidor, pq você simplesmente não faz a operação desse arquivo nesse outro do email ?

 

 

poderia ser atraves de uma função.

faria include do arquivo, chama uma função dele, e então enviando um parametro, retorna a string.

 

que tal ? você não precisa nem de cURL nem de file_get_contents() nessa situação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

function faz_o_mesmo_q_o_arquivo_do_include( $param ){
  //operações.. $param..

  return $string;
}

 

e então no email:

$body .= faz_o_mesmo_q_o_arquivo_do_include( $_GET["codigo_orca"] );

 

 

 

ou seja, você não precisa nem de cURL e nem de file_get_contents(). Basta encapsular numa function, e chamar ela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.