Para quem está iniciando ou está querendo pegar alguns macetes para configurar sua máquina digital para tirar umas fotos bem legais onde podes selecionar alguns tópicos que há em sua camera, achei este site que faz um calculo dos itens que podes alterar conforme a situação do tempo, velocidade do filme e outros...
Entre aqui e verifique com seus próprios olhos
Estava tendo um problema que de uma hora para outra parou de funcionar:
coloquei entre o {literal} a linha a seguir
{literal}
<script type="text/javascript" src="js/styleswitcher.js"></script>
{/literal}
E a saida na página foi a seguinte:
Na realidade ele comentou as minhas aspas duplas como se fosse um PHP e tals, fazendo que não chame o meu javascript melhor dizendo qualquer coisa que utilize o {literal} está fazendo isto, meus CSS tbm.
Outra coisa que estou achando estranho é a mensagem que está me dando ao chamar o arquivo de configurações
{config_load file="test.conf"}
Erro que aparece é o seguinte
Fatal error: Smarty error: [in site.tpl line 1]: syntax error: invalid attribute name: 'test.conf\' (Smarty_Compiler.class.php, line 1536) in C:\web\efotos\Smarty\libs\Smarty.class.php on line 1095
Mas caso eu tire as aspas duplas funciona numa beleza, mas poderia tirar as aspas e tals, mas o problema parece q está sendo estas benditas aspas, o que fazer ?
Configurações: PHP 5.1.4 e testado tbm no 5.1.2; Apache 2.0; Smarty 2.6.14; WinX pro SP2
E acabei descobrindo como arrumar isto e foi altera no php.ini o magic_quotes_runtime que pelo visto é este o problema.
Achei a solução no forum do site do smartyPHP
«php.ini»
; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
magic_quotes_runtime = Off
Estava navegando na net e olha o que achei, um site com o mesmo intuito de publicar de forma clara e objetiva o cotidiano de quem usa Oracle e outras tecnologias, e desta forma achei muito interessantes seus artigos e um já estou postando aqui, que trata-se de uma falha no oracle e +/- como fazer e como identifica-la.
Trata-se da técnica de SQL Injection justamente com uma package que o SYS executa, portanto o BURACO de segurança, permitindo que um simples usuário com conexão e direito de criar procedures pode tornar-se DBA!!
Para o restante do artigo clique aqui...
Estava lendo na net artigos e dicas para aproveitar o máximo do Oracle, e acabei vendo esta matéria da Damaris Fanderuff mestre e doutoranda em Engenharia de Produção e Sistemas pela UFSC e bacharel em Ciência da Computação pela FURB, onde ela ensina a fazer um arquivo com os registros do banco de dados e depois a recuperalos pelo próprio oracle. Vou trocar a idéia do set serverout on por este método, muito melhor para logar alguma coisa ou mesmo para uma listagem de registros diários.
«artigo completo»
Leitura e Gravação em Arquivo Texto
Os comandos necessários para o desenvolvimento de rotinas para ler e escrever dados em arquivos do tipo texto encontram-se na package-padrão UTL_FILE, disponível a partir da versão 7.3 do Oracle. Porém sua implementação estará sujeita às permissões do sistema operacional e do banco de dados, sendo que os diretórios que podem ser acessados para leitura e gravação devem ser especificados no parâmetro de inicialização, como UTL_FILE_DIR = nome_do_diretório ou *.
Observação: * especifica que qualquer diretório está acessível para as operações com arquivos.
|
Procedimentos da package UTL_FILE
|
Funcionalidade
|
|
FOPEN
|
abre um arquivo para entrada ou saída, criando um arquivo de saída caso o arquivo specificado não exista |
|
IS_OPEN
|
indica se determinado arquivo está ou não aberto
|
|
FCLOSE
|
fecha um arquivo |
|
FCLOSE_ALL
|
fecha todos os arquivos abertos
|
|
GET_LINE
|
lê uma linha de um arquivo aberto |
|
PUT
|
escreve uma linha no arquivo. Não acrescenta automaticamente o caractere de fim de linha
|
|
PUT_LINE
|
escreve uma linha no arquivo, acrescentando automaticamente o caractere de fim de linha
|
|
NEW_LINE
|
inclui o caractere de fim de linha no arquivo, o que irá gerar uma nova linha em branco
|
|
FFLUSH
|
escreve, fisicamente, todas as pendências para um arquivo
|
|
Exceções package UTL_FILE
|
Controle
|
| INVALID_PATH | diretório ou nome de arquivo inválido |
| INVALID_MODE |
o parâmetro de modo de abertura é inválido
|
| INVALID_FILEHANDLE | especificador de arquivo inválido |
| INVALID_OPERATION |
o arquivo não pode ser aberto ou a operação é inválida
|
| READ_ERROR |
ocorreu um erro do sistema operacional durante a leitura de um arquivo
|
| WRITE_ERROR |
ocorreu um erro do sistema operacional durante a gravação de um arquivo
|
| INTERNAL_ERROR | erro não especificado no PL/SQL |
| NO_DATA_FOUND |
nesse caso, é disparada quando o fim do arquico é encontrado em processamento de leitura seqüencial de um arquivo de texto
|
Roteiro para geração de arquivo texto:
DECLARE
arquivo_saida UTL_File.File_Type;
Cursor Cur_Linha is select to_char(sysdate,'dd/mm/yyyy hh24:mi:ss "século" CC') DATA from dual;
BEGIN
/*
A Append Text
AB Append Byte Mode
R Read Text
RB Read Byte Mode
W Write Text
WB Write Byte Mode
*/
arquivo_saida := UTL_File.Fopen('/home/oracle/','alfa.txt', 'W');
For Reg_Linha in Cur_linha Loop
UTL_File.Put_Line(arquivo_saida, Reg_linha.Data);
End Loop;
UTL_File.Fclose(arquivo_saida);
Dbms_Output.Put_Line('Arquivo gerado com sucesso.');
EXCEPTION
WHEN UTL_FILE.INVALID_OPERATION THEN
Dbms_Output.Put_Line('Operação inválida no arquivo.');
UTL_File.Fclose(arquivo_saida);
WHEN UTL_FILE.WRITE_ERROR THEN
Dbms_Output.Put_Line('Erro de gravação no arquivo.');
UTL_File.Fclose(arquivo_saida);
WHEN UTL_FILE.INVALID_PATH THEN
Dbms_Output.Put_Line('Diretório inválido.');
UTL_File.Fclose(arquivo_saida);
WHEN UTL_FILE.INVALID_MODE THEN
Dbms_Output.Put_Line('Modo de acesso inválido.');
UTL_File.Fclose(arquivo_saida);
WHEN Others THEN
Dbms_Output.Put_Line('Problemas na geração do arquivo.');
UTL_File.Fclose(arquivo_saida);
END;
Roteiro para leitura de arquivo texto:
DECLARE
arquivo_ler UTL_File.File_Type;
Linha Varchar2(100);
BEGIN
arquivo_ler := UTL_File.Fopen('caminho completo’,’nm arquivo', 'r');
Loop
UTL_File.Get_Line(arquivo_ler, Linha);
End Loop;
UTL_File.Fclose(arquivo_ler);
Dbms_Output.Put_Line('Arquivo processado com sucesso.');
EXCEPTION
WHEN No_data_found THEN
UTL_File.Fclose(arquivo_ler);
Commit;
WHEN UTL_FILE.INVALID_PATH THEN
Dbms_Output.Put_Line(‘Diretório inválido.');
UTL_File.Fclose(arquivo_ler);
WHEN Others THEN
Dbms_Output.Put_Line ('Problemas na leitura do arquivo.');
UTL_File.Fclose(arquivo_ler);
END;
Fonte: SQL Magazine
Para quem trabalha com PL/SQL as vezes precisa usar tabelas temporarias para pegar algumas informaçoes e depois ficar fazendo select´s em cima de tabelas temporarias, e o pior... esquecem muitas vezes de limpar estas tabelas do banco.
Uma boa dica seria usar um ARRAY, assim podemos criar um record.
Aqui vou mostrar a criação de um array do tipo table sem pegar os dados de uma tabela e alimenta-la desde o zero e depois consultar os seus dados.
Estou usando a tabelateste onde tem o codigo e descricao e estou inserindo as descricoes de um unico codigo no meu array. Bom uma simples aplicação mas muito util para transportar dados de um select sem usar cursor ou tabela temporaria.
SET serverout ON; CREATE OR REPLACE procedure TesteRafa AS type my_lista_rec IS record( campo1 varchar2(100), campo2 number); type a_lista IS TABLE of my_lista_rec INDEX BY binary_integer; lista a_lista; CURSOR cCor IS SELECT DESCRICAO FROM TABELATESTE WHERE CODIGO = '011'; rCor cCor%rowtype; contador number; BEGIN contador := 0; open cCor; loop fetch cCor INTO rCor; exit when cCor%notfound; begin lista(contador).campo1 := rCor.descricao; lista(contador).campo2 := contador; contador := contador + 1; end; end loop; close cCor; contador := 0; FOR i IN lista.first .. lista.last loop dbms_output.put_line(lista(i).campo1); end loop; -- retificando /* Limpando tabelas de memória */ lista.DELETE; END; /
execute TesteRafa;
e aqui vai aparecer os dados do record, claro para fazer este teste é bom vc polular a tabela de teste para ele colocar alguma coisa no record do pl/sql e dps imprimir algo.
Meio trilhão de ciclos por segundo, isto é coisa p/ burro, imagina soh abrir o gerenciador de tarefas e o da CPU soh aparecer 1% toda vida pois seria o mínimo ?
A IBM fez um chip que pode chegar a 500Ghz, e detalhe você hoje em dia compra com no máximo com um proc. de 3.0 ou um pouco superior.
Mais detalhes ...
Conforme mostra este post da infoWester, a Microsoft fez com que o programa WGA (Windows Genuine Advantage) exibisse uma aviso de que o sistema operacional do usuário é pirata, caso detectasse que o Windows não é original.
O que ninguém sabia - mas todo mundo desconfiava - é que o WGA coleta informações que não devia e as envia à Microsoft. Segundo esta matéria do The Register, o endereço IP e a lista de softwares instalados no Windows é enviado à empresa de Bill Gates.
Além disso, é possível encontrar em alguns fóruns de discussão que o WGA identificou como pirata sistemas operacionais genuínos. Em virtude disso, a Microsoft prometeu para breve mudanças no funcionamento do WGA.
Alguém aí está surpreso?
Referências: The Register, Terra.
Fonte: Blog da InfoWester
Os impactos para esta vulnerabilidade são:
Execução de Comandos.
Ataque Remoto com ganho de acesso.
Denial Of Service e outros.
A solução para estas vulnerabilidades é a aplicação de um Patch descrito no site da oracle que seque abaixo.
www.oracle.com/technology/deploy/security/pdf/cpujan2006.html
Os Sistemas Afetados são:
Entre no link para visualizar todos os sistemas e esse é o local de onde obtive os dados deste post.
achei um xml muito bom para sabermos qual a codificação do language que o cliente vai utilizar.

0