aletres 0 Denunciar post Postado Março 24, 2009 Qual a melhor maneira para guardar strings no banco de dados? Exemplo de caracteres especiais ou códigos HTML: à = à è = è O que é melhor? Alexandre. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 25, 2009 no formato original ao converter para HTMLEntities terá problemas quando fizer comparações em filtros por ordem alfabética por exemplo como exemplo, a palavra "Água" Original: Água HTML Entities: Água supondo-se que esteja cadastrando diversas palavras Abacaxi Açaí Açúcar Azeite como ficaria a ordem alfabética numa instrução SQL ? ORDER BY nome ASC se guardar os nomes em HTML Entities, será retornado a seguinte ordem: Água Açaí Açúcar Abacaxi Azeite Isso acontece porque o banco de dados não distingue se a palavra está usando HTML Entities ou não Nesse caso, Água retornará em primeiro porque inicia-se com um caracter especial "e comercial" (&) Água portanto, salve sem corromper os dados originais Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Março 25, 2009 Era mesmo o que eu pensava... Fico preocupado com a segurança do site... acho que vou bloquear somente as TAGS <> e ASPAS "''". Obrigado. Alexandre. Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Março 26, 2009 porque irá bloquear? apenas evite as injections nao precisa bloquear caracters Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Março 27, 2009 Já uso um anti sql_injection: if(eregi("http|www|ftp|.dat|.txt|.gif|wget", $acao) OR eregi("http|www|ftp|.dat|.txt|.gif|wget", $codigo)) { echo "<b>Problemas na página! Fale com o administrador do site.</b>"; exit; } Pra inibir códigos maliciosos elaborei este: foreach($_POST as $nome_campo => $valor){ $comando = "\$".$nome_campo."=trim(addslashes(htmlspecialchars(\$_POST[\$nome_campo], ENT_QUOTES)));"; eval($comando); } Obrigado a todos que me responderam!!! Alexandre. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 27, 2009 1. o primeiro codigo serve para filtrar o quê ? 2. no segundo código tem um erro gravíssimo.. uma injecção sql pode não passar mas uma injeção php passa aí facil, fácil.. Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Março 27, 2009 O primerio código evita que passa alguma URL pelo GET. Qual é o erro no segundo código? Pode dar um exemplo? Ou solução? Valeu. Alexandre. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Março 27, 2009 está usando a função eval() pesquise por PHP injection para saber mais.. Compartilhar este post Link para o post Compartilhar em outros sites
aletres 0 Denunciar post Postado Março 27, 2009 Aff... deixa prá lá, você tá está dando voltas na conversa sem qualquer nexo... valeu pelo primeiro post. [resolvido] Compartilhar este post Link para o post Compartilhar em outros sites