[RESOLVIDO] Executar comandos de um TXT

Ois pessoal.
Preciso de outra ajuda.
tenho um controle que executa um monte de processos criando arquivos de texto usando os dados do BD.
Até ai tudo bem!!!

Bem, eu precisaria mudar isso e pegar essas linhas de comando direto de um bloco de notas para executá-las.

Criei um TXT e consegui pegar os dados desse arquivo… o problema é fazer o SC executar esses comandos… fiz assim:

$char="";

$fp = fopen(“c:\comandos.txt”, “r”);
while (!feof($fp)){
$char .= fgetc($fp);
}
fclose($fp);
echo $char;

Esse echo não deu certo… pq ele tá "imprimindo! os comandos na tela.
precisaria que a aplicação entendesse que isso são comandos a executar.
No arquivo de texto que ele lê existem comandos mais ou menos assim:
"
sc_lookup(dsclientes,“Select clinome from tb_clientes where clistatus= ‘A’”);

$contador = count({dsclientes});
$conteudo = “”;
for($x=0;$x<$contador;$x++) { $conteudo .= {dsclientes[$x][0]} .chr(13).chr(10); }

$arquivo1 = “c:\clientes.txt”;
$arquivo = trim($arquivo1);

if (!$abrir = fopen($arquivo,“w”)){

"

Oq fazer?

se é comando php, tem que dar include.

Se é comando sql, voce devera ler o conteudo e executar no sc_exec_sql(se nao precisar de retorno) ou sc_lookup(se quizer retorno).

Se o que vc esta escrevendo no txt ja são comandos php, leia um pouco mais sobre include:
http://br2.php.net/manual/en/function.include.php

Estude a função eval do PHP.

$COMANDO=“ECHO ‘COMANDO ECHO’;”;
eval($COMANDO);

Haroldo, Valeu… consegui usar o Eval… e realmente executa os comandos contidos no arquivo de texto.
Porem ele executa apenas quando os comandos estão em PHP.
Quando eu uso uma macro do SC, “sc_lookup(” por exemplo, ele não roda.

então eu deveria mudar o código e usar apenas comando em PHP…?
Existe alguma forma de pegar os dados da conexão que o SC está usando?
Pois no Select em PHP tenho que passar a conexão…
Não sei se consegui explicar…!
Algum sugestão??

Bem… to testando tudo o que posso aki… qq coisa aviso.

sim só comandos php, naturalmente.
macros sc são convertidas no momento da geração do código,e se a mesma estiver contida dentro de aspas, essa conversão não ocorrerá. Você pode fazer o acesso ao banco com php, ou ver o código que o sc_lookup gera e jogar diretamente esse código para ser executado pelo eval.

Estou usando PHP mesmo no arquivo… ele roda (faz) o que eu quero certinho… mas fica dando erro na aplicação:
ERRO
Use of undefined constant parsaidatxt - assumed ‘parsaidatxt’

esse erro ocorre na linha:
$dssaida = mysql_query(“SELECT parsaidatxt FROM tb_parametros”, $connection);
$saida = mysql_result($dssaida,0,parsaidatxt);

Não entendo pq. Ele acha esse campo, pq eh nessa saida que ele está criando os TXTs que preciso, mas insiste no erro…
Na verdade, em todos os Selects ele dá esse erro com o campo.
Alguém sabe pq??

Ou alguma forma de não exibir esses erros somente nesta aplicação?

poe :

$saida = mysql_result($dssaida,0,‘parsaidatxt’);
ou
$saida = mysql_result($dssaida,0,0);

Nunca tive problemas em usar o nome do campo sem as aspas em páginas PHP.
Mas de qualquer forma colocando as aspas nessas linha no bloco de notas rodou certinho sem erro!!

Obrigada Diogo!!!