• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

SLIFE

RadioButton

27 mensagens neste tópico

Boas a todos

Precisava de uma ajuda!

Estava a tentar melhorar a minha pagina! Na qual tenho uma tabela onde aparece diversas linhas existentes na base de dados.

E nas ultimas duas colunas da minha tabela, existe dois links para fazer o alterar do registo e apagar o mesmo.

Agora estive a pensar, e achei que está um pouco em bruto, digamos, e queria colocar um radiobutton numa coluna e eliminar as duas colunas do alterar e do apagar.

Assim o utilizador ao clicar num radiobutton de uma determinada linha, iria ficar com a opção num menu que fiz a parte para poder alterar e eliminar!

Tipo, todos conhecem o hotmail certo? temos as mensagens do lado direito e umas checkbox do lado esquerdo.

Mas as opções existentes para as mensagens estao mais a esquerda ou num menu por cima.

No hotmail podemos efectuar a selecção de diversas mensagens, mas eu apenas queria poder selecionar uma de cada vez na minha pagina, por isso optei por um radiobutton.

Agora precisava de saber como faço para sempre que clique num determinado radiobutton o valor da id dessa linha passe para uma variavel por exemplo para depois poder colocar no href=xxx.

Junto envio uma imagem a mostrar o que estou a tentar fazer:

problemaradiobutton.jpg

So se pode Alterar ou Eliminar caso seja selecionado uma radiobutton.

Nao sei se me estou a fazer entender!

Cumprimentos

SLIFE

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pelo que percebi isso é JavaScript, mas posso ter percebido mal.

Mas podes fazer em PHP de uma maneira diferente. Atribuis ao ID de cada radiobutton radio_idregisto. Estes forms estão dentro de um form. Depois, em php, obténs o ID registo a registo e verificas, através da variável $_POST, se a radiobutton com esse id estava selecionada, e se sim, apagas/alteras o registo. Do género:

if ($_POST["radio_" & $id] == "apagar") {
     //apaga o registo
} elseif ($_POST["radio_" & $id] == "alterar") {
     //altera o registo
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pelo que percebi isso é JavaScript, mas posso ter percebido mal.

Mas podes fazer em PHP de uma maneira diferente. Atribuis ao ID de cada radiobutton radio_idregisto. Estes forms estão dentro de um form. Depois, em php, obténs o ID registo a registo e verificas, através da variável $_POST, se a radiobutton com esse id estava selecionada, e se sim, apagas/alteras o registo. Do género:

if ($_POST["radio_" & $id] == "apagar") {
     //apaga o registo
} elseif ($_POST["radio_" & $id] == "alterar") {
     //altera o registo
}

Boas

Mas nao existe nenhuma maneira de atribuir o id a uma variavel quando se clicka no radiobutton?

Algo do tipo:

<input type="radio" name="radio" id="id" value="<a href="<? $linha['id']"?>

Existe uma opção de onclick="" mas nao sei como atribuir o valor da Id nesse campo!

Isto em VB 2008 era simples de ser feito:

If radiobutton1.check= true then
variavel1= "id"
end if

Tem alguma ideia de como posso fazer??

Cpts

SLIFE

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas não te esqueças que tens de verificar também no servidor. Mas se as dúvida é de JavaScript, movo-a para lá. :D

É mais isto:

<input type="radio" name="radio" id="id" value="<a href="javascript: id = <?php echo $id; ?>">

Embora não sei muito de JavaScript, por isso corrijam-me se estiver enganado. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas não te esqueças que tens de verificar também no servidor. Mas se as dúvida é de JavaScript, movo-a para lá. :D

É mais isto:

<input type="radio" name="radio" id="id" value="<a href="javascript: id = <?php echo $id; ?>">

Embora não sei muito de JavaScript, por isso corrijam-me se estiver enganado. :)

É mais assim :

<input type="radio" name="radio" id="id" value="<a href="javascript:this.id='o_id_que_queres'">

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É mais assim :

<input type="radio" name="radio" id="id" value="<a href="javascript:this.id='o_id_que_queres'">

Ou isso. Como já disse não percebo muito de JavaScript.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ou isso. Como já disse não percebo muito de JavaScript.

Aliás,

<input type="radio" name="radio" id="id" onclick="javascript:this.id='o_id_que_queres'">

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pelo que sei, o href serve. No onclick, não precisas de meter javascript: uma vez que o Browser interpreta o que está no onclick automaticamente como JavaScript. No href, este é necessário para o Browser o interpretar como uma acção de JavaScript e não um URL. Ou então estou muito, mas mesmo muito enganado. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pelo que sei, o href serve. No onclick, não precisas de meter javascript: uma vez que o Browser interpreta o que está no onclick automaticamente como JavaScript. No href, este é necessário para o Browser o interpretar como uma acção de JavaScript e não um URL. Ou então estou muito, mas mesmo muito enganado. :D

Sim, é isso, mas um link dentro do value é que não funciona de certeza :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, é isso, mas um link dentro do value é que não funciona de certeza :)

Não percebi.  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

value="<a href="javascript: id = <?php echo $id; ?>"

Tens razão. Eu apenas modifiquei o código dele, que nem dei por isso.

@SLIFE, funcionou como o yoda.pt disse?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens razão. Eu apenas modifiquei o código dele, que nem dei por isso.

@SLIFE, funcionou como o yoda.pt disse?

Vou experimentar hoje, e logo ja digo alguma coisa!

Cpts

SLIFE

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ja experimentei e continuo sem conseguir!

problemaradiobutton.jpg

Coloquei uma imagem em cima para poderem ter uma ideia melhor do que estou a atentar fazer!

Actualmente tenho a funcionar, mas sem a opção do radiobutton.

Isto é com um link directo no na propria linha:

width=750 height=47http://img121.imageshack.us/img121/5846/assistencias.jpg[/img]

Alguem me consegue dar uma ideia?

Actualmente tenho neste exemplo o seguinte codigo para apagar ou alterar:

if(@$_GET['btn'] == "excluir"){
$id = $_GET["id"];
$delete = mysql_query("DELETE FROM assistencias WHERE id = '$id'");

Depois tenho  nas linhas:

<a href="alterarassistencia.php?id=<?=$linha['id']?>">
<a href="?btn=excluir&id=<?=$linha['id']?>">

Nao sei se assim me conseguem ajudar ou nao!

Espero que ajude a entender o que preciso.

Aguardo possiveis ajudas.

Cpts

SLIFE

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tenta antes assim.

<a href="alterarassistencia.php?id=<?php echo $linha['id'];?>">
<a href="?btn=excluir&id=<?php echo $linha['id'];?>">

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tenta antes assim.

<a href="alterarassistencia.php?id=<?php echo $linha['id'];?>">
<a href="?btn=excluir&id=<?php echo $linha['id'];?>">

Boas mas esse codigo eu ja tenho e esta a funcionar bem.

O problema que tenho e como colocar a opção de eliminar apenas se o radiobutton estiver clicado(Selecionado).

Ou dizes para colocar esse codigo no onclick???

Tipo:

<input type="radio" name="radio" id="id" onclick="<a href="?btn=excluir&id=<?php echo $linha['id'];?>">

Cpts

SLIFE

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Esse teu código não está correcto, porque tu não podes colocar um link dentro de um evento onclick.

Para, ao clicares, ele ir para uma página onde vai apagar o registo, fazes assim

<input type="radio" name="radio" id="id" onclick="window.location='?btn=excluir&id=<?php echo $linha['id'];?>';">

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Esse teu código não está correcto, porque tu não podes colocar um link dentro de um evento onclick.

Para, ao clicares, ele ir para uma página onde vai apagar o registo, fazes assim

<input type="radio" name="radio" id="id" onclick="window.location='?btn=excluir&id=<?php echo $linha['id'];?>';">

Boas

Mas com esse codigo, ele assim que clicar no radio button irá logo apagar certo????

Eu queria era que ele atribui-se o valor do id dessa linha a uma variavel, para depois se clicar no botao eliminar, entao apagava!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Então tenta assim:

<input type="radio" name="radio" id="id" onclick="idlinhas='<?php echo $linha['id'];?>';">

Assim, ele apaga apenas o último seleccionado.

<input type="radio" name="radio" id="id" onclick="idlinhas= idlinhas + ',<?php echo $linha['id'];?>';">

Assim ele adiciona, de cada vez que ele clica, o id à variável, sendo todos os ids separados por vírgulas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Então tenta assim:

<input type="radio" name="radio" id="id" onclick="idlinhas='<?php echo $linha['id'];?>';">

Assim, ele apaga apenas o último seleccionado.

<input type="radio" name="radio" id="id" onclick="idlinhas= idlinhas + ',<?php echo $linha['id'];?>';">

Assim ele adiciona, de cada vez que ele clica, o id à variável, sendo todos os ids separados por vírgulas.

Boas

Obrigado pela a ajuda.

Mas continua sem resultar!

Estou a desesperar.

Pensava ser uma coisa simples de ser feita, mas pelo visto enganei-me...

cpts

SLIFE

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas

Obrigado pela a ajuda.

Mas continua sem resultar!

Estou a desesperar.

Pensava ser uma coisa simples de ser feita, mas pelo visto enganei-me...

cpts

SLIFE

Aquilo que pretendes faz-se mais facilmente com checkboxes, aliás, é para isso que elas servem ..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aquilo que pretendes faz-se mais facilmente com checkboxes, aliás, é para isso que elas servem ..

Mas com checkbox iria poder selecionar mais que uma linha!

Por isso coloquei em radiobutton.

Mas o certo e que nem com radio nem com check estou a conseguir fazer isto.

Esta complicado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ele dá-te algum erro JavaScript?

Nao, simplesmente nao faz nada!

Estou perdido.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ah, já percebi o que queres fazer lol.

Estás a usar jquery no projecto?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora