Ir para conteúdo

POWERED BY:

Arquivado

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

RafaxZ

Combo dinamico

Recommended Posts

Gostaria de saber como fazer o meu combo dinamico, na hora que for alterar os dados ele me trazer os dados que estão cadastrados no banco de dados poq aqui na hora q vai alterar ele n funciona , ele n traz a cidade no caso

 

JQUERY:

 

<script type="text/javascript" src="../util/jquery-1.3.2.min.js"></script>

<script type="text/javascript">

$(document).ready(function() { // execute uma funcção

$("select[name=EST_CODIGO]").change(function() {

$("select[name=CID_ID]").html('<option value="0">Carregando...</option>');

 

$.post("lista_cidades.php",

{EST_CODIGO:$(this).val()},

function(valor){

$("select[name=CID_ID]").html(valor);

}

)

 

})

})

 

</script>

 

ARQUIVO.PHP

 

<?php

mysql_connect("localhost","root" ,"");

mysql_select_db("db_cidade");

$EST_CODIGO = $_POST['EST_CODIGO'];

$sql = "select * from cidades where CID_ESTADO='$EST_CODIGO' order by CID_NOME ASC";

$resultado = mysql_query($sql) or die(mysql_error());

if(mysql_num_rows($resultado) == 0) {

echo '<option value="0">'.htmlentities('Não a cidade').'</option>';

}

else {

while($registrocidade = mysql_fetch_assoc($resultado))

{

echo'<option value="'.$registrocidade['CID_ID'].'">'.$registrocidade['CID_NOME'].'</option>';

}

}

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais tipo como faço para ele me trazer os valores gravados no banco na hora do alterar? tipo no select de cidade>> ele trazer a cidade que cliente colocou na hora q se cadastrou

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais tipo como faço para ele me trazer os valores gravados no banco na hora do alterar? tipo no select de cidade>> ele trazer a cidade que cliente colocou na hora q se cadastrou

cara eu tenho um aqui.. q eu to fazendo.. se você quiser eu posto aqui ele, e ta funcionando certinho só q ta em pdo a conexão com o banco de dados

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então tipo registrando ta, mais tipo na hora de alterar queria q ele fosse la no banco visse os dados e retornasse pra mim eles dentro dos selects tipo

 

NOVO REGISTRO Cliente cadastro la : Campinas

 

Na hora que fosse alterar ele fosse la no banco e retornasse pra mim no Select :Campinas

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta simplificado pra você xD

acho q com isso você cosengue resolver tudo.

 

 

JQuery

$(function(){
//aqui ele vai pegar o valor do select
 $("select[name=tipo]").change(function(){
      //antes de enviar o valor ele vai mostrar carregando no outro select q será aplicado o combo
  beforeSend:$("select[name=categoria]").html('<option value="0">Aguarde Carregando...</option>');
  //aqui ele cria a variável e envia como post para a pagina de php q fará a pesquisa
  var categoria = $("select[name=tipo]").val();
  $.post("filtro/categoria.php",{categoria: categoria},function(pega_cat){
	  //após completar a pesquisa ele retora os  resultados 
                 complete:$("select[name=categoria]").html(pega_cat);

     });
 });	
})

PHP consegui aqui em mysql pra você- melhor né pq se nao com pdo ia complicar muito xD


<?php include"../Connections/painel_config.php";

$conecta = mysql_connect("$hostname_painel_config","$username_painel_config","$password_painel_config");
$db = mysql_select_db("$database_painel_config");

$cat = $_POST['categoria'];
$seleciona = mysql_query("SELECT * FROM up_imoveis WHERE imovelNegocio = '$cat' GROUP BY imovelTipo");
echo '<option value="">Selecione a Categoria</option>';
while($res_seleciona = mysql_fetch_array($seleciona)){
$tipo = $res_seleciona['imovelTipo'];
echo '<option value="'.$tipo.'">'.$tipo.'</option>';

}?>

 

 

Se puder passar .. manda ai

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então usei este codigo so que ele ainda n me retornou,

 

TIPO O CLIENTE CADASTRA UMA CIDADE, AI NA HORA QUE CLIENTE QUISER ALTERAR ELE ABRE O FORM DE ALTERAÇÃO E SELECT DE CIDADE JA TA COM A CIDADE QUE ELE CADASTROU NO BANCO

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então usei este codigo so que ele ainda n me retornou,

 

TIPO O CLIENTE CADASTRA UMA CIDADE, AI NA HORA QUE CLIENTE QUISER ALTERAR ELE ABRE O FORM DE ALTERAÇÃO E SELECT DE CIDADE JA TA COM A CIDADE QUE ELE CADASTROU NO BANCO

pera ai não intendi direito...

nao ta buscando as cidades do banco de dados é isso?

 

no meu caso eu criei um input em hidden e coloquei o id da categoria para pegar somente dado com base naquele id,

porem se você quer q quando o cliente abre ja aparece a cidade q ele ta cadastrado é só fazer o chamado com o php.

 

me confirma se é isso mesmo.. xD

Compartilhar este post


Link para o post
Compartilhar em outros sites

porem se você quer q quando o cliente abre ja aparece a cidade q ele ta cadastrado é só fazer o chamado com o php.

 

E ISTO AI MESMO , QUERO QUE QUANDO ABRA O FORM DE ALTERAÇÃO JA APAREÇA A CIDADE QUE O CLIENTE CADASTROU

Compartilhar este post


Link para o post
Compartilhar em outros sites

porem se você quer q quando o cliente abre ja aparece a cidade q ele ta cadastrado é só fazer o chamado com o php.

 

E ISTO AI MESMO , QUERO QUE QUANDO ABRA O FORM DE ALTERAÇÃO JA APAREÇA A CIDADE QUE O CLIENTE CADASTROU

 

no select de cidade você faz o chamado..

tipo

<select>
<?php
$sql_cidades_cliente='SELECT * FROM bd_cidade_cliente WHERE id = :cliente_id'
try{
$query_cidades = $conecta->prepare($sql_cidades);
$query_cidades->bindValue(':cliente_id',$id_cliente,PDO::PARAM_STR);
$query_cidades->execute();
$resultado=$query_cidades->fetchAll(PDO::FETCH_ASSOC);
}catch(PDOexception $error_cidades){echo'erro ao buscar dados';}
foreach($resultado as $res){
$cidade = res['cidade'];
$cidadeid = res['id'];
?>
<option value='$cidadeid'>$cidade</option>
<?php
}
?>
</select>

ai ta em pdo.. mas com isso você deve ter uma noção para fazer no mysql

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo mano modifiquei ele para codigo simples , so que n funcionou da uma olhada ai:

<select>

<?php

$sql='SELECT * FROM cidades WHERE CID_ID = CID_ID' // CID ID UM PASSADO DA TABELA DE CIDADES OUTRO DA TABELA DE LOJAS.

$resultado = mysql_query($sql)

while($registrocidade = mysql_fetch_assoc($resultado))

{

$cidade = $registrocidade['CID_NOME'];

cidadeid = $registrocidade['CID_ID'];

?>

<option value='$cidadeid'>$cidade</option>

<?php

}

?>

</select>

 

$query_cidades->bindValue(':cliente_id',$id_cliente,PDO::PARAM_STR); // ESTE TRECHO N ENTENDI

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo mano modifiquei ele para codigo simples , so que n funcionou da uma olhada ai:

<select>

<?php

$sql='SELECT * FROM cidades WHERE CID_ID = CID_ID' // CID ID UM PASSADO DA TABELA DE CIDADES OUTRO DA TABELA DE LOJAS.

$resultado = mysql_query($sql)

while($registrocidade = mysql_fetch_assoc($resultado))

{

$cidade = $registrocidade['CID_NOME'];

cidadeid = $registrocidade['CID_ID'];

?>

<option value='$cidadeid'>$cidade</option>

<?php

}

?>

</select>

 

$query_cidades->bindValue(':cliente_id',$id_cliente,PDO::PARAM_STR); // ESTE TRECHO N ENTENDI

///é q no PDO você define os valores assim, tipo fica mais seguro.

mas com base no qvc passou vou mudar ele aki

na tabela cidades não pode cer a que tem as cidades cadastrada temq ser uma tabela cidades clientes tipo assim.

ID--CID_NOME--CID_ID--USER_ID

<select>
<?php
$USER_ID = //id do usuario!
$sql="SELECT * FROM cidades WHERE USER_ID = '$USER_ID'" ;
$resultado = mysql_query($sql)
while($registrocidade = mysql_fetch_assoc($resultado))
{ 
$cidade = $registrocidade['CID_NOME'];
$cidadeid = $registrocidade['CID_ID'];
?>
<option value='$cidadeid'>$cidade</option>
<?php
}
?>
</select>

Compartilhar este post


Link para o post
Compartilhar em outros sites

não consegui aff, incluo meus clientes normalmente salvando cidade e estado com o valor passado pelos campos do formulário.

O problema é quando (se necessário) eu preciso alterar o cadastro.

Não sei como carregar os valores salvos nos dois combos, como se eu estivesse selecionando o estado para carregar as cidades. Preciso que faça isso automaticamente e ainda de dê a opção de novamente selecionar uma nova localização.

Até consegui que ele carregasse e deixasse marcado o estado cadastrado na ficha do cliente mas a cidade não teve jeito.

 

O que poderia fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

muitos topicos ja abordaram isso..

 

testa ai veja oque acontece.. exatamente oq você quer!!

$estadoUsuario = 'MG';

$estados = array( 'AC' => 'Acre', 'AL' => 'Alagoas', 'MG' => 'Minas Gerais' /* ... */ );

print "<select name=\"estado\">\n\t\n";

foreach( $estados as $sigla => $estado ) {

   printf( "<option value=\"%s\"%s>%s</option>\n\t", $sigla, ( $sigla == $estadoUsuario ? ' selected="selected"' : '' ), $estado );
}

print "\n</select>";

Compartilhar este post


Link para o post
Compartilhar em outros sites

você quer que apareça o combo completo, mas com a cidade cadastrada como padrão? seria isto?

 

ISTO CÉLIO , SO QUE FOSSE NA HORA Q FOSSE ALTERAR

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aew pessoal criei esta função no php

 

function listar_cidade()

{

 

$retorna = '';

$sql = "select * from cidades order by CID_NOME ASC";

$resultado = $this->con->banco->Execute($sql);

while($registrocidade = $resultado->FetchNextObject())

{

$selecionado = '';

if($this->registro->CID_ID == $registrocidade->CID_ID)

{

$selecionado = "selected";

}

$retorna = $retorna.'<option value="'.$registrocidade->CID_ID.'"'.$selecionado.'>'.$registrocidade->CID_NOME.'</option>';

 

}

return $retorna;

}

 

so que ela me retorna todas as cidades , resumindo n é um combo dinamico mais..

 

 

so q na hora de alterar ela aparece a cidade certinha e talz

 

ai queria saber se tem como colocar esta função php dentro dessa função do Jquery

 

$.post("lista_cidades.php",

{EST_CODIGO:$(this).val()},

function(valor){

$("select[name=CID_ID]").html(valor);

}

)

 

})

})

 

 

</script>

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.