Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

MateusGaioso

Chamar variáveis em um onClick de um button

Recommended Posts

Boa tarde, estou começando a programação em php e estou com problemas em atribuir valores à uma variável dentro de um onclick de um botão.

Segue o onclick:

onclick="window.location='reclamacoes.php?buttonDetalhes=Detalhes&y=<?php echo $codigo; ?>'"

Como existem vários botões, cada um com um código diferente, eu preciso pegar e armazenar o valor da variável quando eu clicar no botão, no caso, eu preciso que a variável $y receba o valor do $código. Gostaria de saber se existe algum problema de concatenação no meu window.location.

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ao invez de usar a função onclick porque você não usa um simples <a href=""></a> ?

<a href="reclamacoes.php?buttonDetalhes=Detalhes&y=<?php echo $codigo; ?>"></a>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ao invez de usar a função onclick porque você não usa um simples <a href=""></a> ?

<a href="reclamacoes.php?buttonDetalhes=Detalhes&y=<?php echo $codigo; ?>"></a

Fiz o teste com href, e o problema é o mesmo:

http://teste.com/teste/reclamacoes.php?buttonDetalhes=Detalhes&y=1

o endereço fica assim, porém a variável y continua null, mas ela deveria valer

<?php echo $codigo; ?> 

que no caso é 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz o teste com href, e o problema é o mesmo:

http://teste.com/teste/reclamacoes.php?buttonDetalhes=Detalhes&y=1

o endereço fica assim, porém a variável y continua null, mas ela deveria valer

<?php echo $codigo; ?> 

que no caso é 1

Poste seu código aqui, para averiguar se a variavel está sendo "declarada" corretamente...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poste seu código aqui, para averiguar se a variavel está sendo "declarada" corretamente...

Segue o código abaixo:

?php


    // lista o resultado do sql
    while(list($codigo, $especificacao, $datareclamacao, $responsavel, $tomador) = mysql_fetch_array($sql_listaPendentes)) {
    ?>
    <tr class="tabela-style-color">
      <td style="text-align: center;"><?php echo $especificacao; ?></td>
      <td style="text-align: center;"><?php echo $tomador; ?></td>
      <td style="text-align: center;"><?php echo substr($datareclamacao,8,2)."/".substr($datareclamacao,5,2)."/".substr($datareclamacao,2,2); ?></td>
      <td style="text-align: center;"><?php echo $responsavel; ?></td>
      <td><button style="font-size: 8pt; width: 100%; border-top: 1px solid white; border-right: 1px solid white; border-bottom: 1px solid white; border-left: 1px solid white;" name="buttonDetalhes" id="buttonDetalhes" type="button" value="Detalhes" class="btn btn-success style-formulario-button" onclick="window.location='reclamacoes.php?buttonDetalhes=Detalhes&y=<?php echo $codigo; ?>'">Detalhes</button>
      </td>
    </tr>
    <?php

        if(($_POST['buttonDetalhes']=="Detalhes")&&($codigo==$y))
            {
                echo "<tr><td colspan=\"5\">";
                include("inc/reclamacoes_detalhes.php");
                echo "</td></tr>";
            }
    ?>
    <tr>
      <td colspan="5" height="1"></td>
    </tr>
    <?php
    } // fecha while
    ?>

O meu problema é entrar no if (linha 17) para que os detalhes de uma reclamação sejam mostrados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta ai

<style type="text/css">
#btn_btn1 {
    font-size: 8pt;
    width: 100%;
    border-top: 1px solid white;
    border-right: 1px solid white;
    border-bottom: 1px solid white;
    border-left: 1px solid white;
}
</style>

<button name="buttonDetalhes" id="buttonDetalhes btn_btn1" type="button" value="Detalhes" class="btn btn-success style-formulario-button" onclick="window.location='reclamacoes.php?buttonDetalhes=Detalhes&y=<?php echo $codigo; ?>'">Detalhes</button>

<?php
if (isset($_GET['y'])) {
  $y = $_GET['y'];
}

// Declarei $codigo como uma variavel qualquer da minha lista para teste...
$codigo = 7;

// .....
if(isset($_GET['buttonDetalhes']) && $_GET['buttonDetalhes'] == "Detalhes" && $codigo == $y) {
  echo "
    <tr>
      <td colspan='5'>
  ";
        include("inc/reclamacoes_detalhes.php");
  echo "
      </td>
    </tr>
  ";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta ai

<style type="text/css">
#btn_btn1 {
    font-size: 8pt;
    width: 100%;
    border-top: 1px solid white;
    border-right: 1px solid white;
    border-bottom: 1px solid white;
    border-left: 1px solid white;
}
</style>

<button name="buttonDetalhes" id="buttonDetalhes btn_btn1" type="button" value="Detalhes" class="btn btn-success style-formulario-button" onclick="window.location='reclamacoes.php?buttonDetalhes=Detalhes&y=<?php echo $codigo; ?>'">Detalhes</button>

<?php
if (isset($_GET['y'])) {
  $y = $_GET['y'];
}

// Declarei $codigo como uma variavel qualquer da minha lista para teste...
$codigo = 7;

// .....
if(isset($_GET['buttonDetalhes']) && $_GET['buttonDetalhes'] == "Detalhes" && $codigo == $y) {
  echo "
    <tr>
      <td colspan='5'>
  ";
        include("inc/reclamacoes_detalhes.php");
  echo "
      </td>
    </tr>
  ";
}
?>

Isso funcionou! Agora eu consigo visualizar o detalhe de cada um dos buttons individualmente. Obrigado! Mas estou tentando entender o que você fez, o $_GET consegue pegar o valor do &y do onclick?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.