Jump to content


'' sem.Ponto

Member Since 31/12/2005
Offline Last Active 19/10/2015, 09:00
****-

#989978 Str_Query()

Posted by '' sem.Ponto on 15/12/2009, 00:44

Sintaxe: str_query( [ mixed $vars ] )
Retorno: String
Descrição: Substitui valores e/ou adiciona/remove parâmetros de uma query string e a retorna modificada. Para utilizar a função, basta passar um array com os parâmetros ou uma string (ex.: var1=valor&var2=valor).
Bibliotecas: Nenhuma
Limitações: PHP 5+

Função:

<?php

/**
 * str_query()
 *
 * @author      Muller Dias <mullerdias (at) gmail.com>
 * @author      Paulo Freitas <paulofreitas dot web at gmail dot com>
 * @version     20091221
 * @param       array|string $vars parâmetros que devem ser substituídos/adicionados/removidos
 * @return      string query string modificada
 */

function str_query($vars=array())
{
    if (is_string($vars) || is_array($vars)) {
        if (is_string($vars)) {
            parse_str($vars, $vars);
        }
		
	return http_build_query(array_filter(array_merge($_GET, $vars)));
    }

    return false;
}

?>

Exemplos de utilização:

<?php

// caso esteja acessando ?produto=televisao&cor=azul

echo str_query(array('cor' => 'laranja'));
// produto=televisao&cor=laranja

echo str_query('cor=verde');
// produto=televisao&cor=verde

echo str_query(array('produto' => NULL));
// cor=azul

echo str_query(array('produto' => 'computador', 'cor' => 'amarelo'));
// produto=computador&cor=amarelo

echo str_query('produto=computador&cor=amarelo');
// produto=computador&cor=amarelo

echo str_query(array('polegadas' => 42));
// produto=televisao&cor=azul&polegadas=42

echo str_query('polegadas=42');
// produto=televisao&cor=azul&polegadas=42

echo str_query();
// produto=televisao&cor=azul

?>

Changelog:

  • 20091221
    • array_filter() adicionado para remover parâmetros false (null, empty, etc).
  • 20091215
    • Versão Inicial - nessa versão, o Paulo Freitas me ajudou bastante na redução do código.



#989948 Checando Em Cada Pagina Se O Usuario Esta Logado

Posted by '' sem.Ponto on 14/12/2009, 19:22

Você não sabe como fazer? Mas você fez aí... :P

Só faltou iniciar a sessão com session_start(). ;)


#989941 Agrupar E Ordenar Array

Posted by '' sem.Ponto on 14/12/2009, 17:17

Que tal?

foreach($array as $row) {
     $new[$row['continent']][$row['country']][$row['id']] = $row['name'];
}

print_r($new);

Será gerado um array assim:

Array
(
    [américa central] => Array
        (
            [brasil] => Array
                (
                    [0] => Paulista
                    [1] => são paulo
                )

        )

    [américa do sul] => Array
        (
            [argentina] => Array
                (
                    [2] => hola
                )

        )

)

Com 3 foreach nesse novo array você consegue fazer a listagem que você quer facilmente. Só não esqueça que Brasil está na América do Sul, não na América Central. :P

(ok2)


#989319 [Resolvido] Include Query String

Posted by '' sem.Ponto on 07/12/2009, 16:33

Sim, é desnecessário...

Vale para qualquer coisa, não só para includes.

(ok2)


#989037 [Resolvido] Php+Telnet

Posted by '' sem.Ponto on 04/12/2009, 23:33

É como o Dudu disse... ;)

Exemplo:

$telnet->DoCommand($_POST['campo_do_formulario'], $result);

(ok2)


#988858 [Ajuda] Listagem De Diretorios

Posted by '' sem.Ponto on 03/12/2009, 18:32

Verdade, o navegador bloqueia mesmo.

Também dá para criar um outro aquivo php para ler a imagem e imprimir ela. Aí você acessaria ela assim: file.php?src=d:\Fotos\teste.jpg

Acho que você pode usar a função readfile().

Exemplo do código:

<?php

$file = $_GET['src'];

header('Content-type: image/jpeg');
readfile($file);

?>

Testa aí e vê se funciona... ;)

Eu prefiro a idéia do PF, mas você que sabe... ^_^

(ok2)


#988672 Filtro De Busca

Posted by '' sem.Ponto on 02/12/2009, 19:03

Uma solução é montar a query com base nas informações enviadas. ;)

Exemplo:

<?php

$data1 = 1;
$data2 = 3;

if($data1) $conds[] = 'data > '.$data1;
if($data2) $conds[] = 'data < '.$data2;

$conds = (count($conds)>0) ? ' WHERE '. implode(" AND ", $conds) : NULL;

$sql = "SELECT * FROM tabela". $conds;
echo $sql;

?>

Eu dei um echo no $sql para você ver o resultado. Para executar, acho que você já sabe que é com a função mysql_query() né?

A propósito... lindo código, não? :lol:


#988664 Ajuda Recebimento De Formulario De Contato Via E-Mail

Posted by '' sem.Ponto on 02/12/2009, 17:16

Eu vou explicar melhor o que eu fiz...

Quando você envia um cabeçalho com iso-8859-1, você não pode acentuar palavras dessa maneira:

tópico
experiência

Todos os caracteres devem ser convertidos para entidades html. Então, o correto seria colocar assim:

t&oacute;opico
experi&ecirc;ncia

htmlentities() é capaz de converter, mas é melhor usar só quando variáveis forem chamadas. O resto pode escrever manualmente mesmo.

Se você envia um cabeçalho utf-8, aí sim você pode mandar os caracteres sem converter, mas é preciso tormar cuidado para o usuário não colocar código html. Nesse caso, htmlspecialchars() pode resolver esse problema.

Sobre colocar tags html, head, body sempre me deixou encucado. Não entendo porque alguns colocam, pois em meus testes, ao ver o original de uma mensagem enviada pelo gmail, a gente não encontra tais tags.


#988421 [Resolvido] Php+Telnet

Posted by '' sem.Ponto on 01/12/2009, 14:49

Veja se essa classe é o que você procura: http://www.geckotribe.com/php-telnet/

(ok2)


#988214 Pegar Valores Checkbox

Posted by '' sem.Ponto on 30/11/2009, 11:43

Agora entendi o que você quer fazer. ^_^

Faça isso aqui:

$total = $_POST['nome'];

foreach ($total as $key => $val) {
	$opcao[] = $key;
	$preco[] = $val;
}

O que o código acima vai fazer? Ele vai gerar 2 arrays, o array $opcao terá apenas os nomes dos campos e o array $preco terá apenas os valores dos campos. Exemplo: se eu marcar os 3 checkboxs, meus arrays ficarão assim:

// $opcao
Array
(
    [0] => Milho
    [1] => Alho
    [2] => Catupiry
)

// $preco
Array
(
    [0] => 3
    [1] => 10
    [2] => 5
)

E como pegar cada opção e cada preço separadamente? Exatamente como você fez na query, você colocou $opcao[0] e $preco[0], $opcao[1] e $preco[1], e assim por diante.

(ok2)


#987303 Login Direcionando O Usuario Para Paginas Especificas

Posted by '' sem.Ponto on 24/11/2009, 17:17

Veja este tópico: http://forum.wmonlin...arios-completo/

Vai te ajudar muito... ;)


#947607 10º Desafio De Vetores - Especial Fim De Ano

Posted by '' sem.Ponto on 24/11/2008, 01:44

Temas: Natal ou Ano Novo.

Escolha um dos temas e crie 1(um) topo para o Fórum WMO. Caso queira, você poderá criar 2(dois) topos sendo um de Natal e o outro de Ano Novo. Segue abaixo a imagem base (clique nela ou aqui para abrir em tamanho original):

Posted Image

Os trabalhos vencedores dos desafios especiais de Bitmaps, Vetores e Mistos entrarão numa votação interna. A comissão julgadora, composta por membros da equipe e alguns usuários, escolherá os trabalhos que serão expostos como topo do Fórum WMO.
  • Natal: 18/12/2008 até 26/12/2008
  • Ano Novo: 26/12/2008 até 06/01/2009
E tem prêmio!

Além de ter os trabalhos expostos, os 2 usuários eleitos pela comissão julgadora receberão, cada um deles, 1 vale de R$ 50,00 para usar como quiser no Submarino.com.br.

É isso mesmo! São 2 vales e um deles pode ser seu, basta participar!

Posted Image Posted Image

REGRAS:
1- Da Participação:
1.1- Só poderá participar o usuário que for cadastrado no fórum.

2- Do Trabalho:
2.1- A imagem deverá ser totalmente vetorial.
2.2- Dimensões: 400 x 79 pixels.
2.3- A imagem deverá ser exportada com extensão .JPG ou .GIF com 72DPI de resolução.

3- Do programa a ser utilizado:
3.1- Será permitido o uso de qualquer versão dos programas de desenho vetorial (CorelDraw, Illustrator, e outros) e programas de edição de imagem que possuem ferramentas vetoriais tais como Photoshop e Fireworks.
3.2- O participante deverá usar apenas um software.
3.3- Está vetado o uso de programas que façam vetores automaticamente (Corel Trace, Adobe Streamline, etc).

4- Da postagem
4.1- De 24.11.2008 até 08.12.2008.
4.2- Depois de postada, a imagem não poderá sofrer qualquer tipo de alteração.
4.3- As imagens deverão ser postadas neste tópico em forma de link, (use imageshack.us, photobucket.com, ou outro de sua preferência).
4.4- Assim que encerrado o prazo para postagem dos trabalhos, será criado um tópico para votação.

5- Da votação
5.1- De 08.12.2008 até 15.12.2008 (uma semana).
5.2- O prazo para a votação é de uma semana.
5.3- Cada usuário deverá votar em dois participantes (1º=5 pontos, 2º=3 pontos).
5.4- O usuário deverá ter mais de 15 posts para que seja validado seu voto.

O participante que não cumprir qualquer uma das regras acima será automaticamente desclassificado!
Qualquer dúvida sobre, postem somente neste tópico.

COMO POSTAR O TRABALHO?

Dessa vez não teremos padrão de postagem, o participante poderá postar o trabalho da forma que achar melhor (em forma de link / anexo / inserção de imagem externa).

(ok2)


#915167 Em 2012 Tudo Vai Parar De Funcionar! O Fim Do Mundo!

Posted by '' sem.Ponto on 24/05/2008, 19:29

Estava eu navegando na internet quando eu encontrei a notícia 2012: o ano em que tudo pode parar.

Disseram que em 2012 haverá uma tempestade solar, a qual emite uma radiação de prótons e íons. Está bem, mas e daí? Segundo eles, essa radiação entra no planeta fazendo tudo parar de funcionar. Podem esquecer que os nossos computadores e aparelhos GPS vão funcionar... :o

Será que isso vai acontecer isso mesmo?

Dêem uma lida na notícia e digam o que vocês acham...


#847876 Paginas Fake

Posted by '' sem.Ponto on 12/05/2007, 16:26

O que seria essa página falsa? Como funciona? Não entendi muito bem...

Se você puder explicar exatamente o que a página falsa faz, com certeza poderemos compreender melhor a sua dúvida.


#732190 Botão Fechar Dentro Do Swf...

Posted by '' sem.Ponto on 18/04/2006, 13:08

Faça o seguinte:

1 - Abra o FLA.
2 - Selecione o botão FECHAR.
3 - Insira uma action (Actions > Browser/Network > unloadMovie). Deixe o Event = Release e Location = Level 0

Action gerada:

on (release) {
	unloadMovieNum(0);
}

Boa sorte. ;)




IPB Skin By Virteq