Atribuir valor a uma variável vinda de arquivo texto
Bom dia!
Depois de muita pesquisa e tentativas-e-erros, resolvi perguntar aqui no fórum se alguém tem uma dica para minha dúvida.
Tenho um arquivo texto que contém uma query de busca no banco. Nesta query há uma variável "codigo", que será atribuída pelo usuário.
Porém essa query pode ser alterada para outros parâmetros de busca (mas a variável código não mudará).
Eu poderia criar uma procedure no banco, mas é inviável.
O que preciso: que o PHP leia o conteúdo do arquivo texto e atribua um valor vindo do formulário (estou usando POST) para essa variável "codigo".
Segue o que tenho:
CONTEÚDO DO ARQUIVO TEXTO (consulta.txt):
SELECT CODIGO, NOME, CPF FROM ALUNOS WHERE CODIGO = '$codigo';
MEU CÓDIGO PHP:
<html>
<head>
<title>Pesquisa</title>
</head>
<form method="post" action="pesquisa.php" name="hilario">
<font face="Arial">
<p>
Digite o codigo do aluno:
<table style="text-align: left; width: 266px; height: 27px;" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td style="vertical-align: top;"><br></td>
</tr>
<tr>
<td style="vertical-align: top;">Codigo:</td>
<td><input id="txtCod" name="txtCod" type="text" autofocus required ></td>
</tr>
</tbody>
</table>
<p><input name="buscarDados" value="Buscar!" type="submit">
</form>
<?
ini_set('display_errors', true);
error_reporting(E_ALL);
include "conexao_db.php";
//Pega o conteúdo do arquivo:
$arquivo = file_get_contents('consulta.txt');
//Pega o código do formulário:
$codigo = $_POST["txtCod"];
//Atribui o conteúdo do arquivo na variável $consulta:
$consulta = $arquivo;
//Apenas para testes
//echo $consulta."<br>";
//echo $codigo;
if (isset($codigo)){
if (!$conn){
print "FALHA AO CONECTAR AO DB!<p>";
print $erro['message'];
} else {
$stid = oci_parse($conn, $consulta);
oci_execute($stid);
while ($row = oci_fetch_array($stid))
{
echo $row["CODIGO"]."<br>";
echo $row["NOME"]."<br>";
echo $row["CPF"]."<br>";
}
$numeroderegistros = oci_num_rows($stid);
echo "<p>Linhas >> " . $numeroderegistros . "<br>";
oci_close($conn);
}
}else{
echo "Faca a pesquisa.";
}
?>
</html>Caso não fui claro, peço desculpas kkkkkkkkkkkk
Já tentei colocar as tags de PHP no arquivo texto, na esperança que ele interpretasse como um código PHP:
<? SELECT CODIGO, NOME, CPF FROM ALUNOS WHERE CODIGO = '$codigo'; ?>
<? echo "SELECT CODIGO, NOME, CPF FROM ALUNOS WHERE CODIGO = '$codigo'"; ?>
SELECT CODIGO, NOME, CPF FROM ALUNOS WHERE CODIGO = <? echo '$codigo'; ?>
Mas sem sucesso...
Alguém tem uma ideia de como isso pode funcionar?
Muito obtigado!
Discussão (7)
Carregando comentários...