-
Content count
6431 -
Joined
-
Last visited
-
Days Won
34
Bruno Augusto last won the day on February 1 2014
Bruno Augusto had the most liked content!
Community Reputation
417 Incrível
About Bruno Augusto

-
Rank
Sou Bobo Também ¬¬
- Birthday 03/13/1988
Informações Pessoais
-
Sexo
Masculino
-
Localização
Itajubá (MG)
-
Interesses
Desenvolvimento de Sistemas e Aplicações Web 2.0
Recent Profile Visitors
19003474 profile views
-
compDOS started following Bruno Augusto
-
GIANCARLO01 started following Bruno Augusto
-
Victor Penna started following Bruno Augusto
-
Franciscods9206 started following Bruno Augusto
-
LevinskTM started following Bruno Augusto
-
playopen started following Bruno Augusto
-
felipephp started following Bruno Augusto
-
Igor Contini started following Bruno Augusto
-
voopys started following Bruno Augusto
-
Ed Rodrigues started following Bruno Augusto
-
Me pegou nessa. :yay:
-
:seta: Stack Overflow Seria isso?
-
Ela é gata, mas é gaaaaaaata. Tem muita sueca que deixa ela no chinelo. Eu podia jurar que o nome dele era Walker, com R :o Mas já que o tópico é sobre esses silogismos de quando eu tava no primário, então eu prefiro pão de forma Panco, o Bill Pullman
-
Empacotar numa função parametrizável com esse recurso slugficador ( :sick:) até que é interessante, mas a abordagem da substituição de caracteres com arrays é tão... esdrúxula, que quase chega a ser uma piada.
-
Usar N preg_replace() pra isso (já que essas não são todas as situações) é matar formiga com bola de canhão. Só dizendo... :closedeyes:
-
Você tem dois problemas diferentes: 1. Forçar download de um determinado arquivo externo 2. Passar por qualquer possível barreira que a Aplicação Externa (no caso o UOL) possa estar tentando impor. O primeiro problema já teve solução, se o arquivo de retorno é muito pequeno é porque alguma coisa do segundo problema está impedindo que o recurso (MP4) seja lido programaticamente em sua totalidade e, qualquer tipo de ajuda nesse sentido num fórum público, pode ser e será considerado apologia a pirataria e/ou violação de direitos autorais, haja vista que se existe alguma espécie de bloqueio é justamente para que apenas a Aplicação que o definiu consuma o recurso.
-
Bom, já que o tópico foi ressuscitado, vou deixar minha contribuição que dispensa o uso de iconv() que as vezes não está disponível em servidores compartilhados geridos por chimpanzés raivosos (que compilam o PHP sem ela): <?php $string = 'ÁÍÓÚÉÄÏÖÜËÀÌÒÙÈÃÕÂÎÔÛÊáíóúéäïöüëàìòùèãõâîôûêÇç'; $tr = strtr( $string, array ( 'À' => 'A', 'Á' => 'A', 'Â' => 'A', 'Ã' => 'A', 'Ä' => 'A', 'Å' => 'A', 'Æ' => 'A', 'Ç' => 'C', 'È' => 'E', 'É' => 'E', 'Ê' => 'E', 'Ë' => 'E', 'Ì' => 'I', 'Í' => 'I', 'Î' => 'I', 'Ï' => 'I', 'Ð' => 'D', 'Ñ' => 'N', 'Ò' => 'O', 'Ó' => 'O', 'Ô' => 'O', 'Õ' => 'O', 'Ö' => 'O', 'Ø' => 'O', 'Ù' => 'U', 'Ú' => 'U', 'Û' => 'U', 'Ü' => 'U', 'Ý' => 'Y', 'Ŕ' => 'R', 'Þ' => 's', 'ß' => 'B', 'à' => 'a', 'á' => 'a', 'â' => 'a', 'ã' => 'a', 'ä' => 'a', 'å' => 'a', 'æ' => 'a', 'ç' => 'c', 'è' => 'e', 'é' => 'e', 'ê' => 'e', 'ë' => 'e', 'ì' => 'i', 'í' => 'i', 'î' => 'i', 'ï' => 'i', 'ð' => 'o', 'ñ' => 'n', 'ò' => 'o', 'ó' => 'o', 'ô' => 'o', 'õ' => 'o', 'ö' => 'o', 'ø' => 'o', 'ù' => 'u', 'ú' => 'u', 'û' => 'u', 'ý' => 'y', 'þ' => 'b', 'ÿ' => 'y', 'ŕ' => 'r' ) ); var_dump( $tr ); //string(47) "AIOUEAIOUEAIOUEAOAIOUEaioueaioüeaioueaoaioueCc" Quanto à pergunta acima, tanto quanto eu sei, com a iconv() você não faz isso pois ela trata codificações de caracteres e não os caracteres em si. Mas nada que um str_replace() DEPOIS do preg_match() do Carlos não resolva. Obviamente que ao invés de ecoar diretamente o resultado este deve ser armazenado numa variável a fim de str_replace() ter sobre o que operar. Utilizando strtr() como eu fiz, basta que você adicione uma nova entrada em qualquer ponto do array e usufruir de uma, na minha opinião, falha de conceito de arrays que o PHP tem (índices vazios). Ambas as técnicas tem prós e contras. A do Carlos é a "limitação" de matar dois Coelho ( :lol: ) uma cajadada só pois cada funcionalidade deve ser usada para um fim específico e este não é o propósito da iconv() e ainda arriscar um servidor chinfrim que não a tenha disponível. Já strstr() é ligeiramente mais rápida que preg_match() e ainda permite você fazer essa gambiarrazinha, mas você fica a mercê desse "bug" ser corrigido e vocêr ter de mexer no código às pressas. Isso sem contar que os caracteres dessa lista podem nem ser todos os acentuados ou problemáticos existentes. Essa lista abrange vários deles, mas sempre tem mais um...
-
FPDF error: Some data has already been output, can't send PDF file
Bruno Augusto replied to gildo.rj's topic in PHP
Não, ambos os argumentos de FPDF::Output() são opcionais. Ao omiti-los a classe assume doc.pdf para o primeiro argumento e I para o segundo, fazendo com que o buffer seja enviado ao browser. -
Apesar de explode() funcionar e ter melhor performance (mínima, porém existente), se você está trabalhando com strings, deve usar funções de string para trabalhar com strings que retornem strings. No caso, me refiro a substr(), porém como você precisaria de strpos() como apoio, por chamar duas funções, perde um tiquinho de dana de performance.
-
Aqui na cidade tem uma loja de um cara educado assim. :lol:
-
10 razões para o BlackBerry 10 salvar a marca do esquecimento
Bruno Augusto replied to Motta's topic in Notícias e Novidades
Por quê? Nem celular eu tenho. Pelo menos não um que funcione... -
10 razões para o BlackBerry 10 salvar a marca do esquecimento
Bruno Augusto replied to Motta's topic in Notícias e Novidades
Com o perdão do trocadilho: "10 razões para o Blackberry 10 salvar a marca do esquecimento" Esqueceram da 11ª, o Motta! :lol: -
Primeiro separe os elementos: Grupos, Usuários e Permissões. São três tabelas diferentes. Na tabela de Grupos você tem apenas o ID Primário e o nome do Grupo. Na tabela de Usuários, você tem dentre tudo aquilo que vai precisar, uma coluna para relacionar com a tabela Grupos. Na tabela Permissões você tem além do ID Primário, uma coluna para se relacionar com o ID do Grupo e uma para cada ação que os membros daquele Grupo poderá realizar. Esses valores serão simples, como zeros e uns. Segundo, na tela de criação/edição de um Grupo você mostra um checkbox para cada coluna de ação (a do ID primário e estrangeiro não contam). Por padrão mostre tudo marcado, mas se estiver atualizando um grupo existente condicione o atributo checked com o valor armazenado. Terceiro, no acesso antes de executar cada ação você busca o valor da coluna referente a ação condicionando a coluna que referencia o Grupo das Permissões com o ID do Grupo ao qual o usuário pertence. Essa informação normalmente vêm junto com os dados de sessão, durante a autenticação. Para facilitar, crie formas rápidas de executar essas verificações. Se estiver trabalhando com Orientação a Objetos fica ainda melhor.
-
Eu não citei essa porque é boa ou ruim, afinal nem beber eu bebo. O fiz porque é uma das mais caras que conheço. E, na bem da verdade, nem rico gosta, só bebe de poser, porque pode pagar.