Jump to content
fvaladao

Select dinâmico para site sobre saúde

Recommended Posts

Oi Pessoal. Primeiramente parabéns por compartilhar o conhecimento de vcs. Segundamente me perdoem pela ignorância. Alguém poderia por favor me enviar um arquivo.zip para eu testar esta possibilidade de Select dinâmico???
Minha situação é:
Sou médico pediatra e até pouco tempo usava um app para me dar padrões laboratoriais de normalidade por faixa etária (todos os padrões de normalidade mudam conforme a idade e o sexo do paciente). O desenvolvedor do app simplesmente deixou de fazer update desde o iOS novo. Consegui extrair o banco de dados deste app (que foi feito com dados públicos - diga-se de passagem) e estou pensando em montar algo como um "site" - que seja absolutamente público e consultável por qualquer pessoa (pretendo traduzir tudo para o português na unha mesmo!!).
Dividi o banco de dados em várias tabelas (quem quiser me ajudar eu posso enviar as tabelas) e preciso de algo que me ajude a caminhar de 
Neste sentido, minha idéia é:

Categorias principais (tabela main_category):
id    titulo
1    Adolescent Data
2    Basic Vitals
3    Cardiology
4    Development
5    Endocrinology
6    Nutrition
7    Hematology
8    Labs
9    Prevention
10    Resuscitation
11    Trisomy 21
12    Vaccines

Esta tabela, cria um Select que ao ser clicado me dá todas os ítens da categoria acima (conforme a imagem abaixo).
Na página inicial usaria este:
select-principal.png
Nas paginas secundárias este:
select-1.png 
select-1-selected.png
A partir de clicar em cada ítem, o passo seguinte seria montar uma caixa de seleção por idade e sexo (conforme a imagem abaixo).
idade-e-sexo.png
Com Categoria + Idade + Sexo o banco de dados consegue buscar a "row" específica e exibir os dados num padrão pré-estabelecido. 
Abaixo vcs vão ver a imagem do produto final e logo abaixo eu vou colocar o que seria o padrão pré-estabelecido:
No iOS o resultado inicial é exibido assim:
resultado-1-ios.png ou resultado-2-ios.png
No Palm o resultado é exibido assim:
resultado-2-palm.png
/// Apenas a título de ilustração, o php para chamar a Categoria 1 - Adolescent Data chamaria um php mais um ou menos assim (que não sei se precisará ser um arquivo separado ou uma coluna a mais no capítulo_1, por exemplo):
/////
<div class="label">Pubic Hair</div>
<div class="value"><?echo $row['data_1'];?></div>
<div class="label"><?echo $row['data_2'];?></div>
<div class="value"><?echo $row['data_3'];?></div>
<div class="label"><?echo $row['data_4'];?></div>
<div class="value"><?echo $row['data_5'];?></div>
<div class="label">17-hydroxyprogesterone (ng/dL | nmol/L):</div>
<div class="value">(<?echo $row['data_6'];?>-<?echo $row['data_8'];?> | <?echo $row['data_7'];?>-<?echo $row['data_9'];?>)</div>
<div class="label">androstenedione (ng/dL | nmol/L):</div>
<div class="value">(<?echo $row['data_10'];?>-<?echo $row['data_12'];?>) | (<?echo $row['data_11'];?>-<?echo $row['data_13'];?>)</div>
<div class="label">DHEA (ng/dL | nmol/L):</div>
<div class="value">(<?echo $row['data_14'];?>-<?echo $row['data_16'];?>) | (<?echo $row['data_15'];?><?echo $row['data_17'];?>)</div>
<div class="label">DHEA-S (µg/dL | µmol/L):</div>
<div class="value">(<?echo $row['data_18'];?>-<?echo $row['data_20'];?>) | (<?echo $row['data_19'];?>-<?echo $row['data_21'];?>)</div>
<div class="label">dihydrotestosterone, DHT (ng/dL | nmol/L):</div>
<div class="value">(<?echo $row['data_22'];?>-<?echo $row['data_24'];?>) | (<?echo $row['data_23'];?>-<?echo $row['data_25'];?>)</div>
<div class="label">estradiol (ng/dL | pmol/L):</div>
<div class="value">(<?echo $row['data_26'];?>-<?echo $row['data_28'];?>) | <?echo $row['data_27'];?>-<?echo $row['data_29'];?>)</div>
<div class="label">estrone (ng/dL | pmol/L):</div>
<div class="value">(<?echo $row['data_30'];?>-<?echo $row['data_32'];?>) | <?echo $row['data_31'];?>-<?echo $row['data_33'];?>)</div>
<div class="label">FSH (mIU/mL | U/L):</div>
<div class="value">(<?echo $row['data_34'];?>-<?echo $row['data_35'];?>)</div>
<div class="label">LH (mIU/mL | U/L):</div>
<div class="value">(<?echo $row['data_36'];?>-<?echo $row['data_37'];?>)</div>
<div class="label">testosterone (ng/mL | nmol/L):</div>
<div class="value">(<?echo $row['data_38'];?>-<?echo $row['data_40'];?>) | <?echo $row['data_39'];?> | <?echo $row['data_41'];?>)</div>
<div class="reference"> Alan H.B. Wu: <a href="http://www.amazon.com/gp/product/0721679757">Tietz Clinical Guide to Laboratory Tests 4th Edition</a> W.B. Saunders Co. Philadelphia, 2006.
  <p> Soldin, SJ, Brugnara, C, Wong, EC <a href="http://www.amazon.com/gp/product/1594250677">Pediatric Reference Intervals, 6th Edition</a>
  <p>Note: Lab values can vary depending on the assay technique or equipment used to make the measurement. It also can vary with differing populations. Local normal values should be used whenever possible. 
</div>
///////

Como tudo isto eu faço de forma voluntária e com finalidades absolutamente gratuitas, se vcs me ajudarem a ajuntar estas ideias em php e mysql (e um pouquinho de java eu tb posso conhecer...) eu agradeço muito. O banco de dados está disponível para download (com apenas alguns errinhos na numeração dos capítulos, mas nada difícil de corrigir) 
http://www.ipbg.org.br/img/kidometer_db_separado-por-capitulos.ods

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 wandoh
      Boa Tarde! estou com um dificuldades de puxar os dados do usuário logado no site. Atualmente estou conseguindo puxar somente o NOME, quando tento puxar o restante da erro! Abaixo segue o Código.
       
      session_start(); //inicializa variaveis $id = "accountid"; $name = ""; $email = ""; $errors = array(); //conexão db $db = mysqli_connect('localhost', 'root', 'senha', 'db') or die("could not connect to database"); //Registrar usuário if (isset($_POST['reg_user'])) { // receives all input values from the form $name = mysqli_real_escape_string($db, $_POST['name']); $email = mysqli_real_escape_string($db, $_POST['email']); $password = mysqli_real_escape_string($db, $_POST['password']); $password2 = mysqli_real_escape_string($db, $_POST['password2']); //form validação: ensure that the form is correctly filled ... // by adding (array_push)) corresponding error unto $errors array if(empty($name)) { array_push($errors, " "); } if(empty($email)) { array_push($errors, " "); } if(empty($pwd)) { array_push($errors, " "); } if($pwd != $pw2) { array_push($errors, " "); } // To protect MySQL injection (more detail about MySQL injection) $name = stripslashes($name); $password = stripslashes($password); // first check the databese to make sure // verifica na db se a usuário existente com o mesmo nome de usuário e email $user_check_query = "SELECT * FROM t_account WHERE name='$name' or email='$email' LIMIT 1"; $result = mysqli_query($db, $user_check_query); $user = mysqli_fetch_assoc($result); if($user) { // if user existente if ($user['name'] === $name) { array_push($errors, " "); } if ($user['email'] === $email) { array_push($errors, " "); } } // Registra o usuário se não haver erros if (count($errors) == 0 ) { $pwd = md5($pwd); print $pwd; $query = "INSERT INTO t_account (name, email, pwd, pw2) VALUES ('$name', '$email', '$password', '$password2')"; mysqli_query($db, $query); $_SESSION['accountid'] = $id;// $_SESSION['name'] = $name; $_SESSION['success'] = 'Você está logado em'; echo " "; //header('location: index.php'); } } //LOGIN USER if (isset($_POST['login_user'])) { $name = mysqli_real_escape_string($db, $_POST['name']); $password = mysqli_real_escape_string($db, $_POST['password']); if (empty($name)) { array_push($errors, " "); } if (empty($password)) { array_push($errors, " "); } if (count($errors) == 0 ) { $pwd = md5($pwd); $query = "SELECT 'email' FROM t_account WHERE name='$name' AND password='$password'"; $results = mysqli_query($db, $query); if (mysqli_num_rows($results)) { $_SESSION['accountid'] = $id;// $_SESSION['name'] = $name; $_SESSION['success'] = 'Você está logado em'; echo " "; //header('location: index.php'); }else{ array_push($errors, " "); } } } Com a variável abaixo, é exibido o nome de quem esta logado.
      $_SESSION["name"] Já com os demais, não e exibido o resultado é apresentado uma msg de erro.
      $_SESSION["email"] Notice: Undefined index: email in Passei em todos os post que tem sobre o assunto, mas infelizmente em meu código não deu certo.
       Sou novo em PHP!
      Preciso puxar todos os dados cadastrado do usuário.
    • By Mucio Willamys
      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)?
    • By Marcosvn
      Estou trabalhando num projeto que será semelhante a um fórum de discussão. No entanto, além de criar o tópico, o usuário deverá responder a um questionário com 40 perguntas. Essas perguntas serão armazenadas e exibidas posteriormente em forma de gráficos com o resultado estatístico de todos os usuários que responderam o questionário.
       
      Minha pergunta é: mysql seria uma boa escolha para esse projeto?
       
      Com o tempo, conforme a quantidade de respostas aumenta, não ficaria muito lento o calculo e exibição dos gráficos?
       
      Qual o melhor caminho a seguir para eu não ter problemas de velocidade no futuro?
       
      abraço
       
       
×

Important Information

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