Jump to content
Mucio Willamys

Buscar dados de um select no banco de dados e exibir...

Recommended Posts

olá, gostaria da ajuda de vcs :

este código traz as informações do banco de dados e as coloca dentro de um select html

é parte de um projeto de um sistema de uma clínica médica, onde ao cadastrar os médicos posso escolher a especialidade do mesmo.

<select name="especialidade" required="">
                <option value="" >--Escolha uma especialidade--</option>
         <?php
             $result_especialidade = "select * from especialidade";
             $result_especialidade = mysqli_query($bd, $result_especialidade);
             while ($row_especialidade = mysqli_fetch_assoc($result_especialidade)){ ?>
                   <option value="<?php echo $row_especialidade['id']; ?>"><?php echo  $row_especialidade['nome']; ?> </option>


public function editar($id){
        	include "Bd.class.php";
        	$nome = $this->nome;
			$cpf = $this->cpf;
			$crm = $this->crm;
			$especialidade = $this->especialidade;
			
        	$query = "update medico set
        	nome = '$nome',
        	cpf = '$cpf',
        	crm = '$crm',
        	especialidade_id = '$especialidade'
        	where id = $id";
        $status = $bd->query($query);
        return $status;
        }

Acima ^ está a função editar...

 

 

 

abaixo está o form com as informações do médico.

<form method="POST" action="../controller/Controller-medico.php?op=e">
		 
        <input type="hidden" name="id" size="5" value="<?php echo $id; ?>" >
		
        <div class="campo">
			<label for="nome">Nome: </label>
			<input type="nome" name="nome" size="30" value="<?php echo $m->getNome() ?>">
		</div>
		
		<div class="campo">
			<label for="cpf">CPF: </label>
			<input type="text" name="cpf" size="30" value="<?php echo $m->getCpf() ?>">
		</div>

		<div class="campo">
			<label for="rg">CRM: </label>
			<input type="text" name="crm" size="30" value="<?php echo $m->getCrm() ?>">
		</div>

		<div class="campo">
          <label for="especialidade"> Especialidade: </label>
          
		</div>

		

		<div class="campo">
			<input type="submit" value="Atualizar">
		</div>

		

	</form>
			

Gostaria de saber como faço pra setar um input ou um select no caso para a alteração do dado(especialidade)?

Share this post


Link to post
Share on other sites

@Mucio Willamys

 

É simples, você faz o select para obter a especialidade do Médico e ao montar o <option> você faz uma pergunta para saber se a especialidade do médico é igual a uma especialidade, se for, você da um echo no option selected, caso contrário, você apenas da o echo do option sem o selected.

 

No meu caso o option será preenchido com todos os valores do select, porem ele vai deixar marcado ao carregar o que foi retornado do banco de dados.

 

EX:

 <?php
$sql = "select tp_produto from db_pescado_gelo.sqltb_compra";
//Vamos dizer que eu tenha o retorno "Camarão";
resultset['tp_produto'] = "Camarão";
?>
<select name="tp_produto" id="tp_produto" class="classcampo">
<?php if ($resultset['tp_produto'] == "Peixe") { ?>
<option value='Peixe' selected>Peixe</option>
<?php } else { ?>
<option value='Peixe'>Peixe</option>
<?php } ?>
<?php if ($resultset['tp_produto'] == "Camarão") { ?>
<option value='Camarão' selected>Camarão</option>
<?php } else { ?>
<option value='Camarão'>Camarão</option>
<?php } ?>
<?php if ($resultset['tp_produto'] == "Ostra") { ?>
<option value='Ostra' selected>Ostra</option>
<?php } else { ?>
<option value='Ostra'>Ostra</option>
<?php } ?>
<?php if ($resultset['tp_produto'] == "Carangueijo") { ?>
<option value='Carangueijo' selected>Carangueijo</option>
<?php } else { ?>
<option value='Carangueijo'>Carangueijo</option>
<?php } ?>
</select>

Espero ter ajudado.

 

Att.

Felipe Coutinho

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By granderodeo
      Estou tentando pegar dados de duas tabelas logo no inicio da sessão quando o usuário realiza o login, quando utilizo o 
      SELECT * FROM usuarios, orders WHERE email = '$login' and senha= '$senha' Consigo realizar o login tranquilamente, até ai de boa, mais quando modifico o código para
       
      $comando="SELECT * FROM usuarios INNER JOIN orders ON usuarios.id_usuario = orders.id_usuario WHERE email.usuarios='$login' and senha.usuarios='$senha'"; Ele só me deixa fazer login se o usuário já tiver algum orders (pedido). O que estou tentando fazer é assim que o usuário loga, mostre também os pedidos que ele já fez etc, que são dados que estão em outra tabela. Alguém consegue ver meu erro?
    • By fsanchez
      Pessoal, o que estou fazendo de errado?
       
      estou tentando gerar um numero sequencial concatenando string e int, porem quando chega no numero 10 ele fica no 10 e nao soma +1.
       
       
      PED-2019/1
      ....
      PED-2019/10
       
      ....chega aqui ele deveria gerar 
       
      PED-2019/11..12..13
       
      consulta:
       
      select concat('PED-',YEAR(NOW()),'/',cast(SUBSTRING_INDEX(PED_Codigo,'/',-1) as UNSIGNED)+1) as NUM_PED from tbs_pedido order by PED_Codigo desc limit 1  
    • By Fernando Rafael
      Estou tendo problemas com a leitura de porta serial com PHP, consigo facilmente escrever na mesma, mas sempre que no comando de abertura da porta eu coloco que haverá permissão de leitura o PHP trava e fica carregando infinitamente, e a porta fica bloqueada e só libera quando reiniciado o computador.
       
      Segue o cod:
      exec('MODE COM1:9600,n,8,1'); //seta configuração na porta COM $fp=fopen("COM1","r+b"); if(!$fp) {     echo("Erro ao abrir a porta com1");     exit; } else {         echo("COM1 aberta <br>"); } fwrite($fp,Chr(5));  //escrevendo valor na porta sleep(1); //pausa para retorno dos dados echo (fgets($fp)); fclose($fp); já tentei  colocar:
      fopen("COM1", "r+b");
      fopen("COM1", "r+t");
      fopen("COM1", "r");
      fopen("COM1", "w+");
      fopen("COM1", "r+");
       
      para escrever consigo normal, com o fopen("COM1", "w");.  mas já para ler.....
       
      Notei que na internet tem muito sobre esse problema, inclusive falaram em permissões de usuário, sendo que nos casos em que conseguiram, estavam usando o Linux.
      Eu estou usando o W7 e W10 com PHP 5.2, se for o caso de permissões, como resolvo isso? preciso configurar mais alguma coisa no php.ini?
       
      Também já tentei usar uma classe: phpSerial
       
      Mas retorna o seguinte erro:
      Warning: Reading serial port is not implemented for Windows in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\balanca\php_serial.class.php on line 503
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.