Ir para conteúdo
Fórum Script Brasil
  • 0

Incluir Script Em Php


Lucas NN

Pergunta

10 respostass a esta questão

Posts Recomendados

  • 0

você pode usar o file_get_contents() para processar o PERL e pegar o valor da saída. O problema da segurança pode ser resolvido se você criar uma espécie de senha, que você passa na hora o get_contents e verifica no PERL.

PHP:

<?php
$saida_perl = file_get_contents("perl_script.cgi?senha=aert");
?>
PERL
$senha = $QUERY_STRING{senha};

if($senha != "aert") /// usuário não pode ver o script

Link para o comentário
Compartilhar em outros sites

  • 0

**Aqui é o irmão do Lucas, ele me pediu para verificar as respostas da pergunta, mas não sei muita coisa**

Eu copio e colo os códigos em que parte das páginas?

Lembrando que o PHP é um fórum IPB da mesma versão que este e o perl é um arquivo só (o CGIPROXY).

Ou você quer que eu faça um arquivo php com um include e adicionar o script?

Muito obrigado em nome do meu irmão, ele está tentando fazer essa integração a meses, mas perl é uma linguagem de suporte muito pequeno.

EDITANDO:

1) Sendo um pouco chato, dá para incluir uma página de erro caso a senha não seja validada?

2) No perl_script.cgi eu mudo para o nome do arquivo? A extensão é .pl, tem alguma diferença?

Link para o comentário
Compartilhar em outros sites

  • 0

Olha o que eu fiz até agora:

Criei o arquivo php e inclui a linha que você me indicou:

pox.php


<html>
<head>
<title>Orkut Proxy                       by Lucas [NN]</title>
<meta http-equiv="Content-Type" content="text/html;">
<link rel="stylesheet" href="class.css" type="text/css">
</head>
<body bgcolor="#E2E2E2" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<br>
<font class="titulos" size="4">&nbsp;&nbsp;&nbsp;Novo Sistema de Integracao em testes</font>

[color=#FF0000]
<?php
$saida_perl = file_get_contents("http://www.nn.bluehosting.com.br/okt4/nph-proxy.pl?senha=aert");
?> [/color]


<?php include("http://www.nn.bluehosting.com.br/okt4/nph-proxy.pl"); 
?>

<br>
<center><font face="Verdana" size="2"><a href="../">Home</a></font></center>
<br>
<center><font face="Verdana" size="2">© 2000-2005 Pk's - Lucas [NN]. Todos os direitos reservados ®.</font></center>
<body>
</html>



E mesmo colocando em vários lugares do arquivo perl a outra parte do código, a operação resulta em um erro que postarei mais embaixo. Aqui vai o código Perl do outro arquivo: nph-proxy.pl
#!/usr/bin/perl

Pelo tamanho do código tive que hospedá-lo, pois não estava conseguindo postar.
Ele encontra-se em http://www.nn.bluehosting.com.br/codigo_perl_script.txt


ERRO quando abro o pox.php:
Warning: file_get_contents(http://www.nn.bluehosting.com.br/okt4/nph-proxy.pl?senha=aert): failed to open stream: HTTP request failed! tÿ¿xÿ¿Œ? ¸ÄdG  in /home/lucasnn/public_html/ipb2/IPB2/pox.php on line 13

Warning: main(http://www.nn.bluehosting.com.br/okt4/nph-proxy.pl): failed to open stream: HTTP request failed! 5 in /home/lucasnn/public_html/ipb2/IPB2/pox.php on line 17

Warning: main(): Failed opening 'http://www.nn.bluehosting.com.br/okt4/nph-proxy.pl' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/lucasnn/public_html/ipb2/IPB2/pox.php on line 17

A parte do php me parece tudo certo, pode ser que eu estou colocando o código na parte errada do arquivo Perl. Onde eu devo colocar a parte do Perl? Algum erro está acontecendo? Este parâmetro é aceito para cgi/perl?

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Para fazer um "include" de um arquivo que não é PHP, mas deve ser processado antes, deve-se utilizar a função virtual(). Experimente:

<?php virtual("arquivo.cgi"); ?>

Logicamente, os códigos que eu te passei foram só exemplos, não adianta você apenas copiar e colar no seu código, apenas te mostrei como fazer...

Ah, só por curiosidade... o que esse gigantesco script PERL faz?

Link para o comentário
Compartilhar em outros sites

  • 0

Meu servidor é apache com cPanel, Linux.

Eu estava colocando só isso no arquivo .php:

<?php
virtual("http://www.nn.bluehosting.com.br/okt4/nph-proxy.pl");
?>
Url relativa? E só uma recapitulação: 1) Se a pessoa colocar a url do arquivo perl no browser ela vai conseguir acessá-lo? Ou só pelo .php mesmo? Eu pedi em uma comunidade para verificarem o código perl que você me passou e falaram para eu colocar o código abaixo:
foreach $pair ($ENV{'QUERY_STRING'}) {
    ($name, $value) = split(/=/, $pair);
    $value =~ tr/+/ /;
    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    if ($name) {
         ${$name} = $value;
    }
}

if ($senha ne "aert") {
    print "você não pode ver esse script mané!";
}

Mesmo assim não consegui fazer com que funcionasse como eu quero.

***Ps: O Perl é um script de um proxy, é bem gigante mesmo ^^

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Visitante

Eu queria fazer isso agora entre dois arquivos php, eu quero que somente a index possa chamar (include) o arquivo xyz.php caso o usuário abra o xyz.php diretamente (pelo link no browser) ele seja redirecionado para erro.php....

vlw!!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...