Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Beto Lima

[Resolvido] 2 values em um combo

Recommended Posts

Como colocar dois values numa combo?

 

ex: de R$10 a R$20

 

eu imagino que o value fique assim: 1020

 

não sei se ta certo....

 

E depois como colocar em duas variáveis:

 

$recebe1 = post do value valendo 10

$recebe2 = post do value valendo 20

 

Como fazer isso?

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta assim... no value coloca um divisor tipo |, ficando assim o value 10|20, depois é só dar um explode pelo caracter '|' que ele separa os values em um array, ai é só pegar pelo índice...

 

entendeu mais ou menos a idéia?! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

senão qq coisa posta de novo...

 

flw

 

Como colocar dois values numa combo?

 

ex: de R$10 a R$20

 

eu imagino que o value fique assim: 1020

 

não sei se ta certo....

 

E depois como colocar em duas variáveis:

 

$recebe1 = post do value valendo 10

$recebe2 = post do value valendo 20

 

Como fazer isso?

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

10 reais e 10 reais e 15 centavos??

 

melhor por xxxx|zzzz ?nao??

 

e se tiver 1000??

 

pode acontecer de precisa depois..

Compartilhar este post


Link para o post
Compartilhar em outros sites

<select name=\"combo\" id=\"combo\">

<option value=''>Qualquer valor</option>

<option value='10000|20000'>de: R$10.000,00 até R$20.000,00</option>

</select>

 

 

isso?

 

e pra recuperar eles depois?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tudo bem mas não quero dar acho na variavel...

e sim guardar cada valor em duas variáveis diferentes....

 

porque depois vou dar o post e fazer um selec dessas duas variaveis..

 

SELECT * FROM tabela WHERE valor_venda >= $minimo AND valor_venda <= $maximo AND categorias=%s ORDER BY $ordenar $asc_desc

Compartilhar este post


Link para o post
Compartilhar em outros sites

será que funciona assim:

 

SELECT * FROM tabela WHERE valor_venda >= $var[0] AND valor_venda <= $var[1] AND categorias=%s ORDER BY $ordenar $asc_desc

Compartilhar este post


Link para o post
Compartilhar em outros sites

não deu certo...

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND valor_venda <= AND categorias='4' ORDER BY nome asc' at line 1

 

será que é pq: [0] e [1] no select?

Compartilhar este post


Link para o post
Compartilhar em outros sites
$sql = "SELECT * FROM tabela WHERE valor_venda >= '".$var[0]."' AND valor_venda <= '".$var[1]."' AND categorias=%s ORDER BY {$ordenar} {$asc_desc}";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá,...

// CONEXÃO AO BANCO  DE DADOS
	require_once("conexao.php");
	mysql_select_db($database_conn, $conn);
	
	$_nome_categoria = $_REQUEST["cat_venda"];
	
	$ordenar  = $_POST["ordenar"];
	$asc_desc = $_POST["asc_desc"];
	
	$minimo = explode("|", $_POST['valores']);


	if ($minimo == "") {
	$minimo= "0|1000000"; 
	}else {
	$minimo   = $minimo;
	}

	if (($ordenar == "") || ($asc_desc == "")){ 
	$ordenar= "nome"; 
	$asc_desc= "asc";
	} 
	else { 
	$ordenar = $ordenar;
	$asc_desc = $asc_desc; 
	}
	if ($ordenar == "valor_venda") {
	$var = "Preço";
	}
	if ($ordenar == "time") {
	$var = "Data";
	}
	if ($ordenar == "id") {
	$var = "Referência";
	}
	if ($ordenar == "nome") {
	$var = "Nome";
	}
	if ($asc_desc == "asc") {
	$var1 = "Crescente";
	}
	if ($asc_desc == "desc") {
	$var1 = "Decrescente";
	}
	
	$sql = sprintf("SELECT * FROM produtos WHERE valor_venda >= '".$minimo[0]."' AND valor_venda <= '".$minimo[1]."' AND categorias=%s ORDER BY {$ordenar} {$asc_desc}","'".$_nome_categoria."'");
	$qry = mysql_query($sql, $conn) or die(mysql_error());
	  $lista = mysql_fetch_array($qry);

<form action=\"".$_SERVER['PHP_SELF']."?cat_venda=$_nome_categoria\" method=\"post\" name=\"ordenacao\">
	<select name=\"ordenar\" class=\"combo\" id=\"ordenar\">
	<option value='$ordenar' selected>Ordenação por:</option>
	<option value='nome'>Ordenação: Nome</option>
	<option value='valor_venda'>Ordenação: Valor</option>
	<option value='nome'>Ordenação: Data</option>
	<option value='nome'>Ordenação: Referência</option>
	</select>
	<select name=\"asc_desc\" class=\"combo\" id=\"asc_desc\">
	<option value='asc'>Ordem: A - Z</option>
	<option value='desc'>Ordem: Z - A</option>
	</select>
	<select name=\"valores\" class=\"combo\" id=\"valores\">
	<option value=''>Qualquer valor</option>
	<option value='100000|200000'>De: R$100.000,00 até R$200.000,00</option>
	</select>
	<input name=\"Submit\" type=\"submit\" class=\"btn_ordena\" value=\"ok\" id=\"ok\">
	</form>

na primeira descarregada ele não mostra produto...só depois que eu seleciono na combo os valores e depois do submit aí que ele mostra o resultado....

 

Acho que não estou conseguindo definir um valor padrão pra primeira descarregada.....

até tentei fazer um if mais acima...

se não estiver nada, receber= 0|10000000

mas tem algo errado ainda.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, deixa eu me meter na conversa, pelo que entendi você quer um combo com os dois valores, e porque tu não coloca no combo os dois valores ?

 

<select name="valores">
<option value="10">$10</option>
<option value="20">$20</option>
</select>
e depois faz o select ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troca:

$sql = sprintf("SELECT * FROM produtos WHERE valor_venda >= '".$minimo[0]."' AND valor_venda <= '".$minimo[1]."' AND categorias=%s ORDER BY {$ordenar} {$asc_desc}","'".$_nome_categoria."'");

 

Por:

$sql = "SELECT * FROM produtos WHERE valor_venda >= '".$minimo[0]."' AND valor_venda <= '".$minimo[1]."' AND categorias='".$_nome_categoria."' ORDER BY {$ordenar} {$asc_desc}";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beto lima, já viu o que eu sugeri ? me explique novamente o que que tu quer fazer porque só o que entendi é como montar o seu combo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Alaerte, desculpa...

seguinte: uma combo só passando dois valores distintos.

e depois uma variavel recupera elas pra depois por último fazer o select entre o minimo e o máximo....

 

 

Mas neste exato momento achei o erro...

 

tava errado o meu if...

 

na verdade tem que ser assim

 

if ($minimo[0] == "") {

$minimo[0]= "0";

}else {

$minimo[0] = $minimo[0];

}

 

if ($minimo[1] == "") {

$minimo[1]= "10000000";

}else {

$minimo[1] = $minimo[1];

}

 

 

na descarregada por padrão ele vai dar um select entre 0 e 10000000

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.