Daniel25 0 Denunciar post Postado Janeiro 16, 2009 Bom dia pessoal, sou novo aqui ( me escrevi agorinha mesmo) estou com um problema, estou desenvolvendo um sistema em PHP, mas estanquei, preciso enviar uma variavel quando o usuario clicar num link. Funciona assim, eu retorno umma consulta sql e imprimo na tela, essa tabela contem nomes de médicos, so que uma das colunas da tabela conterá links que abrirão uma nova janela do navegador e mostrarão dados relativos ao medico do qual o link foi clicado, ou seja, quando o usuário clicar no link relativo a um medico preciso passar dados desse medico pra outra página. como fasso isso? Compartilhar este post Link para o post Compartilhar em outros sites
_zeh_ 0 Denunciar post Postado Janeiro 16, 2009 provavelmente você tem nesta sua consulta à sql um ID para cada médico ex: MEdico | Especialidade | ID |Carlos| Ginecologia =)| 1 |_zeh_ | Neurologia | 2 onde com esse Id você identificara cada medico certo? a hora q você kiser o medico carlos você tem q chamar o numero 1 ok? então sabendo o id do medico você pode fazer uma consulta nesta pagina futura que abrirá com o id deste medico ok? mas como você imprimira este id no link? <a href... onclink="<?php echo $consulta_sql" ... > ond a variável consulta_sql é sua varivel que fez a busca pelo medico serto, e nela esta armazenada o ID dele! Compartilhar este post Link para o post Compartilhar em outros sites
Daniel25 0 Denunciar post Postado Janeiro 16, 2009 <a href... onclink="<?php echo $consulta_sql" ... > mas com esse echo ai, a variavel vai poder ser resgatada em outra pagina? Porque esse link vai apontar pra uma outra pagina na qual precisarei desse id pra buscar no banco os dados relativos ao medico em questão, tipo eu keria pegar essa variavel na outra pagina tipo um post ou get. Compartilhar este post Link para o post Compartilhar em outros sites
afbartels 0 Denunciar post Postado Janeiro 16, 2009 Daniel, para passar dados de variáveis de uma tela para outra você deve fazer isso utilizando os métodos de envio de formulário que são POST ou GET. Por exemplo: 1ª tela - enviando o conteúdo da variável (tela1.php) <html> <body <form method="post"> <input type="hidden" id="campo" value=" <? echo $variavel; ?>" > //campo oculto tipo hidden </form> <a href="tela2.php"> Link </a> </body> </html> 2ª tela - recebendo o conteúdo da variável (tela2.php) <? $variavel = $_POST["campo"]; ?> Compartilhar este post Link para o post Compartilhar em outros sites
Daniel25 0 Denunciar post Postado Janeiro 16, 2009 disso eu ja sei mas, nao posso usar um form pois o usuario vai clicar em um link, dexa eu tenta explicar melhor, eu tenho o id o nome e varios outros dados que são mostrados na tabela html, mas o que eu kero e so o id, preciso passar esse id pra aum outra pagian quando o usuario clicar no link respctivo ao medico, pois cada medico vai ter seu link, sendo assim cada link devera passar um id diferente, que será o id do medico Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Janeiro 16, 2009 Faça via GET então... <a href="tela2.php?idMedico=<?php echo $idMedico ?>"> Link </a> E para capturar, faça: echo $_GET['idMedico']; Sendo que a variável $idMedico, você pegou do retorno da tua consulta. Na segunda página, você faz uma query apartir desse GET. Compartilhar este post Link para o post Compartilhar em outros sites
_zeh_ 0 Denunciar post Postado Janeiro 16, 2009 poder fazer tbm uma função javascript quer receba o valor do ID do medico a hr que eh clicado no loink certO? e esta função abre uma nova janela com este ID Compartilhar este post Link para o post Compartilhar em outros sites
afbartels 0 Denunciar post Postado Janeiro 16, 2009 mas é mais fácil fazer via GET, assim como o William explicou. Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Veanet 0 Denunciar post Postado Janeiro 16, 2009 Willian, mas nao eh obrigatório a chamada da variavel pelo get ou é? Pq eu nao uso o get pra chamar a variavel e sim uso direto. <a href="tela2.php?idMedico=<?php echo $idMedico ?>"> Link </a> e na outra pagina uso apenas $idMedico tem algum problema nisso? Compartilhar este post Link para o post Compartilhar em outros sites
Daniel25 0 Denunciar post Postado Janeiro 16, 2009 ta via get ja fiz e pego muito obrigado pela ajuda, mas eu keria saber so por questao de segurança, tem como fazer isso via post ou de forma que o dado nao apareça na url? Esse projeto nao precisa de nivel de segurança, mas eu tenho outros que precisão. Tem como fazer via post??? Compartilhar este post Link para o post Compartilhar em outros sites
ZENDMaN 0 Denunciar post Postado Janeiro 16, 2009 Bruno Veanet, use $_GET pois se a register_globals estiver setado como off tu não via conseguir resgatar. e aconselho deixar sempre como off Compartilhar este post Link para o post Compartilhar em outros sites
afbartels 0 Denunciar post Postado Janeiro 16, 2009 via POST é do jeito que expliquei aí em cima.... Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Janeiro 16, 2009 $idMedico tem algum problema nisso? é como disseram, você só consegue isso se o register_globals estiver on.. oq não é uma boa coisa.Bom... você poderia tentar fazer por javascript como disseram.... não consegui bolar uma forma de fazer com $_SESSION... mas não vejo como passar a id do médico por URL comprometa seriamente a segurança do teu projeto... Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Veanet 0 Denunciar post Postado Janeiro 16, 2009 a sim , ta tranquilo.. queria tira uma duvida msm, nao uso muito esse metodo. prefiro passa via formulario com campo hiddene usando post menos arriscado Compartilhar este post Link para o post Compartilhar em outros sites
Marcio Leandro 0 Denunciar post Postado Janeiro 19, 2009 Título do tópico editado conforme as regras do fórum: Dúvida Ajuda por favor => Enviar variaveis ao clicar num link Daniel, por favor procure utilizar títulos que sejam coerentes com a sua questão. http://forum.imasters.com.br/index.php...E=01&HID=37 Compartilhar este post Link para o post Compartilhar em outros sites