Jump to content
Fórum Script Brasil
  • 0

Como usar o input radio com input hidden


Murilo Cabral
 Share

Question

Estou querendo gravar dois campos de uma tabela simultaneamente, seria o campo "gale_fotos" usando o input radio e o "gale_status" usando o input hidden.
Porém ele somente grava o campo "gale_status" como Não, ou seja o ultimo input hidden.

Como faço para que ele grave no Campo "gale_status" o SIM, quando clicado na opção SIM.

Estou usando o código abaixo:

    <div align="center" style=" padding:2px; border-right:solid 1px;float:left; width:210px; height:auto; float:left;">
    <?php
    include '../conexao.php';
    $codigo = $_POST['codigo'];
    $gale_fotos = $_POST['gale_fotos'];
    $gale_status = $_POST['gale_status'];

    $query = mysql_query("SELECT * FROM menu");
    $res = mysql_fetch_array($query);

    if(isset($_POST['gale'])){

    $gale_fotos = $_POST['gale_fotos'];
    $gale_status = $_POST['gale_status'];
    $update = mysql_query("UPDATE menu SET gale_fotos = '$gale_fotos', gale_status = '$gale_status'");

    if($update == ''){
    echo "<script language='javascript'>
    window.alert('Erro ao Habilitar Link Galeria de Fotos!');
    </script>";
    }else{
    echo "<meta http-equiv='refresh' content='0; URL= menu_halitar_link.php'>
    <script language='javascript'>
    window.alert('Link Galeria de Fotos Habilitado com sucesso!');
    </script>";
    }}?>

    <form name="gale" action="" method="POST" enctype="multipart/form-data">
    <label>Habilitar o Link Galeria de Fotos?</label><br /><br />

    <label>Sim</label>
    <input type='radio' name='gale_fotos' value='<li><a href="<?php echo $res['dominio'];?>galeria.php" class="nav1">Galeria de Fotos</a></li><li class="divider"></li>' />
    <input type='hidden' name='gale_status' value='Sim' /><br />

    <label>Não</label>
    <input type="radio" name="gale_fotos" value="" />
    <input type="hidden" name="gale_status" value="Não" /><br />
    <input type="submit" name="gale" value="Atualizar" />
    </form>
    </div>

Desde já agradeço a atenção de todos.

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Olá Murilo!

Você tem 2 campos hidden com o nome gale_status, o que vale é o último.

Olha! O php recomenda há mais de dois anos, que não se use mais as extensões mysql_*

Existe um padrão de desenvolvimento chamado MVC, é excelente para deixar o código organizado. Quando puder, pesquise e leia um pouco.

 

 

mysql_.thumb.jpg.6e341f2068d2753158bc1dc

 

Link to comment
Share on other sites

  • 0

Estou querendo gravar dois campos de uma tabela simultaneamente, seria o campo "gale_fotos" usando o input radio e o "gale_status" usando o input hidden.
Porém ele somente grava o campo "gale_status" como Não, ou seja o ultimo input hidden.

Como faço para que ele grave no Campo "gale_status" o SIM, quando clicado na opção SIM.

Estou usando o código abaixo:

    <div align="center" style=" padding:2px; border-right:solid 1px;float:left; width:210px; height:auto; float:left;">
    <?php
    include '../conexao.php';
    $codigo = $_POST['codigo'];
    $gale_fotos = $_POST['gale_fotos'];
    $gale_status = $_POST['gale_status'];

    $query = mysql_query("SELECT * FROM menu");
    $res = mysql_fetch_array($query);

    if(isset($_POST['gale'])){

    $gale_fotos = $_POST['gale_fotos'];
    $gale_status = $_POST['gale_status'];
    $update = mysql_query("UPDATE menu SET gale_fotos = '$gale_fotos', gale_status = '$gale_status'");

    if($update == ''){
    echo "<script language='javascript'>
    window.alert('Erro ao Habilitar Link Galeria de Fotos!');
    </script>";
    }else{
    echo "<meta http-equiv='refresh' content='0; URL= menu_halitar_link.php'>
    <script language='javascript'>
    window.alert('Link Galeria de Fotos Habilitado com sucesso!');
    </script>";
    }}?>

    <form name="gale" action="" method="POST" enctype="multipart/form-data">
    <label>Habilitar o Link Galeria de Fotos?</label><br /><br />

    <label>Sim</label>
    <input type='radio' name='gale_fotos' value='<li><a href="<?php echo $res['dominio'];?>galeria.php" class="nav1">Galeria de Fotos</a></li><li class="divider"></li>' />
    <input type='hidden' name='gale_status' value='Sim' /><br />

    <label>Não</label>
    <input type="radio" name="gale_fotos" value="" />
    <input type="hidden" name="gale_status" value="Não" /><br />
    <input type="submit" name="gale" value="Atualizar" />
    </form>
    </div>

Desde já agradeço a atenção de todos.

Eu retirei os inputs hidden, e inseri isso:

<div align="center" style=" padding:2px; border-right:solid 1px;float:left; width:210px; height:auto; float:left;">
<?php
include '../conexao.php';
$codigo = $_POST['codigo'];
$gale_fotos = $_POST['gale_fotos'];
$gale_status = $_POST['gale_status'];

$query = mysql_query("SELECT * FROM menu");
$res = mysql_fetch_array($query);

include '../conexao.php';
if(isset($_POST['gale'])){

$gale_fotos = $_POST['gale_fotos'];
$update = mysql_query("UPDATE menu SET gale_fotos = '$gale_fotos'")or die(mysql_error());

if($gale_fotos == '<li><a href="<?php echo $res["dominio"];?>galeria.php" class="nav1">Galeria de Fotos</a></li><li class="divider"></li>'){
    $update = mysql_query("UPDATE menu SET gale_status = 'Sim'");
    }else{
    $update = mysql_query("UPDATE menu SET gale_status = 'Não'");
    }

if($update == ''){
echo "<script language='javascript'>
window.alert('Erro ao Habilitar Link Galeria de Fotos!');
</script>";
}else{
echo "<meta http-equiv='refresh' content='0; URL= menu_halitar_link.php'>
<script language='javascript'>
window.alert('Link Galeria de Fotos Habilitado com sucesso!');
</script>";
}}?>

<form name="gale" action="" method="POST" enctype="multipart/form-data">
<label>Habilitar o Link Galeria de Fotos?</label><br /><br />

<label>Sim</label>
    <input type='radio' name='gale_fotos' value='<li><a href="<?php echo $res['dominio'];?>galeria.php" class="nav1">Galeria de Fotos</a></li><li class="divider"></li>' />

<label>Não</label>
<input type="radio" name="gale_fotos" value="" /><br />

<input type="submit" name="gale" value="Atualizar" />
</form>
</div>

Mas ele continua pegando somente uma opção, ou seja, a opção "Não".

Se em IF a variavél $gale_fotos é igual ao conteúdo, ele grava no gale_status a opção "Não" quando deveria gravar a opção "Sim"
Já na ELSE ele funciona de acordo com o que eu preciso, ou seja, ele retira a linha do conteúdo da variavél $gale_fotos, e grava a opção "Não" corretamentente.
Pô galera me mostre o que estou fazendo de errado? Por que que ele não grava a opção correta na Variavél $gale_status.
Abraços a todos e agradeço a paciencia e a atenção.

Edited by Murilo Cabral
Link to comment
Share on other sites

  • 0

Ok Murilo, vou observar com atenção o seu script.

Por favor, me ajude a entendê-lo.

    Não entendi de onde vem a variável 'codigo' que você recebe em: $codigo = $_POST['codigo'];

    Você acessa esse arquivo a partir de um <form method='post'> que traz essa variável 'codigo'???

====================================================================================================================

Creio que entendi o que você quer fazer:

Se clicar em sim, gravar um link

Se clicar em não, gravar vazio

Então, talvez assim funcione. Teste aí:

<div align="center" style=" padding:2px; border-right:solid 1px;float:left; width:210px; height:auto; float:left;">
    <?php
    include '../conexao.php';

    $codigo = $_POST['codigo'];
    $gale_fotos = $_POST['gale_fotos'];

    $query = mysql_query("SELECT * FROM menu");
    $res = mysql_fetch_array($query);

    // checar se foi postado algo:
    if (isset($_POST['gale_status'])) { // só entra aqui, se gale_status tiver sido postado
        $link = null;
        $status = 'não';
        // se a pessoa marcar a opção sim:
        if ($_POST['gale_status'] == 1) {
            $status = 'sim';
            $link = '<li><a href="' . $res['dominio'] . 'galeria.php" class="nav1">Galeria de Fotos</a></li><li class="divider"></li>';
        }
        // acho que tá faltando definir uma id em seu update.
        $update = mysql_query("UPDATE menu SET gale_fotos = '$link', gale_status = '$status'");
        if ($update == '') {
            echo "<script language='javascript'>window.alert('Erro ao Habilitar Link Galeria de Fotos!');</script>";
        } else {
            echo "<meta http-equiv='refresh' content='0; URL= menu_halitar_link.php'>
                      <script language='javascript'>window.alert('Link Galeria de Fotos Habilitado com sucesso!');</script>";
        }
    }

    //  só use: enctype="multipart/form-data" quando o formulário fizer upload de algum arquivo.
    ?>
    <form method="post">
        <label>Habilitar o Link Galeria de Fotos?</label><br><br>
        <input type='radio' name='gale_status' value='1'><label>Sim</label>
        <input type="radio" name="gale_status" value='0'><label>Não</label>
        <input type="submit" value="Atualizar">
    </form>
</div>

 

Edited by lowys
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...