[Cascavel-pm] [Bulk] Re: Dúvida

roan Brasil roanbrasil em gmail.com
Terça Março 27 10:18:35 PDT 2007


Em 27/03/07, Luis Motta Campos <luismottacampos em yahoo.co.uk> escreveu:
>
> On Mar 27, 2007, at 3:08 PM, roan Brasil wrote:
> > 1. $ENV{ORACLE_OWNER} = 'roanbrasil';
> > $ENV{ORACLE_HOME} = '/home/roanbrasil/oracle/product/10.2.0/client_1';
> > $ENV{TNS_ADMIN} = $ENV{ORACLE_HOME};
> > $ENV{NLS_LANG} = 'AMERICAN_AMERICA.WE8ISO8859P1';
>
>    Isto não é o dump do ambiente do script que eu pedi.
>    Você tirou isto do seu .bash_profile.
>    Por favor preste atenção por que os dois scripts podem obter estes
> valores de lugares diferentes.
>    Eles certamente não rodam como o seu usuário. ;-)


Não tirei do meu  .bash_profile. Isto está no meu CGI. Ou seja... os valores
são idênticos apesar de que cada script tem o seu, ele foi copiado um do
outro.
--------8<---------------------------8<---------------------------------------

#!/usr/bin/perl
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use DBI;
use Switch;

$ENV{ORACLE_OWNER} = 'spider';
$ENV{ORACLE_HOME} = '/home/spider/oracle/product/10.2.0/client_1';
$ENV{TNS_ADMIN} = $ENV{ORACLE_HOME};
$ENV{LD_RUN_PATH} = '/home/spider/oracle/product/10.2.0/client_1/lib';
$ENV{NLS_LANG} = 'AMERICAN_AMERICA.WE8ISO8859P1';


my $dbh = DBI->connect("dbi:Oracle:host=HOST;sid=XXXX", 'XXXXX', 'XXXXX');
my $q = CGI->new;
my $from_catid = $q->param("from_catid") ;
my $to_catid = $q->param("to_catid") ;
my $prod_nome = $q->param("produto_nome") ;
my $prod_nome_txt = $q->param("produto_nome_text");
my $submit = $q->param("submit") ;
my $sql_update;
my $out;
my $rows_affected;
my $msg;

switch ($submit)
{
   case "alterar"
   {
        my $sucess;
        if($from_catid && $to_catid)
        {
         $sql_update =
                       '
                        UPDATE produtos
                        SET categoria_id = ?
                        WHERE categoria_id = ?
          ';
         if($prod_nome && $prod_nome_txt)
         {
           if($prod_nome eq "1")
           {
             $sql_update .= ' AND lower(produto_nome) like
\'%'.$prod_nome_txt.'%\' ';
           }
           elsif($prod_nome == "2")
           {
             $sql_update .= ' AND lower(produto_nome) like
\''.$prod_nome_txt.'%\' ';
           }
           elsif($prod_nome == "3")
           {
             $sql_update .= ' AND lower(produto_nome) like
\'%'.$prod_nome_txt.'\' ';
           }
         }
         my $sth = $dbh->prepare($sql_update);
         $rows_affected = $sth->execute( "$to_catid", "$from_catid")  or die
$sth->errstr;
         $dbh->commit or die $dbh->errstr;
         $msg = "O número de linhas afetadas foi de $rows_affected linhas";
         $dbh->disconnect;
 }
   }
   case "consultar"
   {
        my $sql =
        '
           SELECT p.produto_id, p.produto_nome, p.cod_fabricante,
c.categoria_nome
           FROM produtos p, categorias c
           WHERE p.categoria_id = c.categoria_id
           AND c.categoria_id = ?
        ';
          if($prod_nome && $prod_nome_txt)
             {
               if($prod_nome eq "1")
               {
                 $sql .= ' AND lower(produto_nome) like
\'%'.$prod_nome_txt.'%\' ';
               }
               elsif($prod_nome == "2")
               {
                 $sql .= ' AND lower(produto_nome) like
\''.$prod_nome_txt.'%\' ';
               }
               elsif($prod_nome == "3")
               {
                 $sql .= ' AND lower(produto_nome) like
\'%'.$prod_nome_txt.'\' ';
               }
            }

            my $sth = $dbh->prepare($sql);
            $sth->execute("$from_catid");
            my $row;
            while(my @row = $sth->fetchrow_array) {
                foreach $row (@row)
                {
 $out.= "$row<br/>";
                }
                $out .= "<br/><br/>";
            }

     $dbh->disconnect;
   }
}
###########################################
####              HTML                 ####
###########################################

print "Content-type:text/html\n\n";
print <<"FORM"
      <html>
        <head><title>Sistema de Mudança de Produtos e Categorias de Produtos
- SiMu-PCP - 0.1 alfa - by RO\@N BRASIL</title>></head>
        <body>
           <table>
             <tr>
                <td><h1>Sistema de Mudança de Produtos e Categorias de
Produtos - SiMu-PCP - 0.1 alfa</h1></td>
             </tr>
             <tr>
               <td>
               <table>
                    <form name="processo" method="get" >
                    <tr>
                        <td>De ID:</td><td> <input type="text"
name="from_catid" value="$from_catid" /></td>
                    </tr>
                    <tr>
                        <td>Para ID:</td><td> <input type="text"
name="to_catid" value="$to_catid"/></td>
                    </tr>
                    <tr>
                        <td>Produto Nome:</td><td> <SELECT
NAME="produto_nome">
                                          <OPTION VALUE=""></OPTION>
                                          <OPTION VALUE="1">Contém a
palavra</OPTION>
                                          <OPTION VALUE="2">Começa com a
palavra</OPTION>
                                          <OPTION VALUE="3">Termina com a
palavra</OPTION>
                                          </SELECT>
                        </td>
                    </tr>
                    <tr>
   <td>Digite Produto Nome:</td><td> <input type="text"
name="produto_nome_text" value="$prod_nome_txt"/></td>
                    </tr>
                    <tr>
                        <td><input type="submit" name="submit"
value="alterar" /></td>
                        <td><input type="submit" name="submit"
value="consultar" /></td>
                    </tr>
                  </table>
                </td>
               </tr>
              </table>
            </form>
            <br/>
            <h3>$msg</h3>
            <br/>
            $sql_update
            <br/>
            <br/>
            $out
        </body>
      </html>
FORM
---------8<----------------------------8<------------------------------------


> 2. /usr/lib/libc5-compat
> > /lib/libc5-compat
> > /usr/i486-linuxlibc1/lib
>
>    Eu estou presumindo que isto é o resultado de $(cat /etc/
> ld.so.conf), certo?
>    Não consigo ver nenhuma referência a bibliotecas do Oracle aí...
> não deveria ter alguma?


Não sei.... pois  esse código acima se chama mudacategoria.cgi e o código do
webapp.cgi (que funciona) está no mesmo local....

> 3. O apache é o mesmo pra ambos.
>
>    Certo, mas onde estão as tuas configurações para o Apache?
>    Por que um dos seus scripts funcionam, eu não vou assumir que você
> fez tudo certo - sou paranóico e gosto de conferir tudo umas três
> vezes. ;-)
>
> > DIRETORIO CORRENTE$ ls
> > changecategory.cgi  qmailadmin  simu  test.cgi  vqadmin  webapp.cgi
>
>    Não sacaneia, por favor... tenta o $(ls -l), que pelo menos vai me
> deixar ver as permissões dos seus arquivos (que são importantes!).


hum...
$ ls -lh
total 164K
-rwxr-xr-x  1 www-data root     5,5K 2007-03-23 15:45 changecategory.cgi
-rwxr-xr-x  1 www-data www-data  371 2007-02-26 16:01 webapp.cgi


> Então o script webapp.cgi funciona blz... e change category não
> > funfa... e tem as mesma configuraçõ no codigo perl de variavel de
> > ambiente acima.
> > Sacou?
>
>    Saquei que você não está querendo ser ajudado.
>    Me desculpe a insistência, carinha.
>    É que eu tenho por norma ajudar todo mundo que eu posso.
>    E já resolvi problemas como o seu milhares de vezes.
>    Claro, as pessoas normalmente querem ser ajudadas.


Foi mal man... quero ser ajudado sim...  vc quer  alguma parte especifica da
configuração do apache ou tudo?

Valeu pela tentativa de ajuda :)

   Boa sorte com seu problema.
>    Putamplexos!
> --
> Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
> Perl fanatic evangelist, and amateur {cook, photographer}
>
>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>



-- 
Atenciosamente,

Roan Brasil Monteiro
Presidente do Rotaract Club Lauro de Freitas D4550
Gestão 2006/2007
________________________________
*-*,*-*,*-*,*-*,*-*,*-*,*-*,*-*,*-*,*-*
Faculdade UNIME
www.unime.com.br
BSI - Bacharelado de Sistema de Informação
Roan Brasil Monteiro
_____________________
*-*,*-*,*-*,*-*,*-*,*-*,*-*,*-*,*-*,*-*

"NA LUTA ENTRE BATMAN E PINGÜIM,
EU SOU MAIS O PINGÜIM..." by Roan
____
°v°   NÃO USE DROGAS,
/(_)\  USE GNU/LINUX
^ ^
Por que ver o MUNDO através de 'janelas'
Se você pode usar portas.

"Software Livre:
    Socialmente Justo,
    Economicamente Viável,
    Tecnologicamente Sustentável"
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070327/25f9ebd6/attachment-0001.html 


Mais detalhes sobre a lista de discussão Cascavel-pm