Ir para conteúdo
Fórum Script Brasil
  • 0

Passar parâmetro em link


Guest --Fabiano --

Pergunta

Guest --Fabiano --

Estou com um problemão. A minha página tem que listar os usuários cadastrados, e tem um link para abrir uma página, no qual essa página é aberta passando como parâmetro o id do cara.

usuario1

link => pagina.php?usuario=idusuario1

usuario2

link => pagina.php?usuario=idusuario2

usuario3

link => pagina.php?usuario=idusuario3

...

Quando eu clico no link do usuário3, td bem, ele vai com o id certo a outra página. Mas quando eu clico em um usuário que não seja o último, não vai, pois a variável id só armazenou o valor do último id. Já tentei colocar dentro de um array pra resolver, mas no casso do array ao invés da variável, não tem como saber qual o valor do índice deve ser passado quando clico em um determinado link. Também tentei ao invés de link, usar um ~<input type='radio'> para amarrar o id com o valor do radio, mas não funciona. Nesse caso é mostrado pagina.php?usuario=undefined.

Como posso resolver isso ? Alguém tem uma idéia ? Desde já agradeço.

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0
Guest --Fabiano --

Allan, o código não está errado. Não está dando erro nenhum. O problema é que não estou conseguindo passar o id do cara para a outra página por parâmetro através de um laço. Só funciona quando o cara é o último da lista. Só quero uma idéia de como fazer isso.

Link para o comentário
Compartilhar em outros sites

  • 0

Só olhando o código pra ver onde está o erro.. porque você deve estar usando um laço para gerar esses links, logo todos deveriam funcionar...

Um exemplo pra fazer isso...

$sql = mysql_query("SELECT * FROM tabela");
while($x = mysql_fetch_assoc){
echo "<a href=\"pagina.php?id=".$x['id']."\">Link com o id ".$x['id']."</a><BR>";
}

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Fabiano --
<?php
$sql_id = mysql_query("SELECT id FROM usuarios WHERE usuario = '".$_SESSION['usuario']."'");
$id = mysql_result($sql_id,0,"id");
$sql = mysql_query("SELECT usuario FROM cad WHERE id = '".$id."'");
$linhas = mysql_num_rows($sql);
if($linhas > 0)
{
for($i=0;$i<$linhas;$i++)
{
$usuario = mysql_result($sql,$i,"usuario");
$sql_usuario = mysql_query("SELECT id FROM usuarios WHERE id = '".$usuario."'");
$id = mysql_result($sql_usuario,0,"id");

echo"<tr><td width='50%'><input type='radio' name='usuario' value='".$id."' onClick='abrirpagina();'><font face='Verdana, Arial, Helvetica, sans-serif' color='#0099FF' size='2'>usuário</font></td</tr>";

?>
&lt;script language='javascript'>
function abrirpagina()
{
var abrir = document.formulario.usuario.value;
window.open('pagusuario.php?usuario='+abrir');
}
</script>
<?php
}
}
?>

Link para o comentário
Compartilhar em outros sites

  • 0

Dois problemas... o primeiro, 3 querys? Pelo que eu vi você pega o nome de usuário do cara e faz uma query, mas não seria mais fácil guardar em uma sessão o ID do cara, assim você não precisaria fazer essa volta toda... ou pelo menos poderia utilizar alguns JOINs...

Segundo... você está mandando abrir por javascript, mas se você criar 50 campos com o mesmo nome, o javascript vai varrer todos e sempre vai pegar o último... você deveria numerar os campos de alguma maneira e no onclick passa essa informação para o javascript...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652,1k
×
×
  • Criar Novo...