Jump to content
Sign in to follow this  
cachopo

Inserir opção de 1 select na bd

Recommended Posts

cachopo

Boa tarde pessoal,

Tenho a seguinte duvida:

Eu tenho 1 select com 4 opções:

<select>
<option>a</option>
<option>b</option>
<option>c</option>
<option>d</option>
</select>

E eu preciso de inserir na base de dados a opção que o utilizador selecciona.

O que é que tenho de fazer? Se me puderem ajudar agradecia.

Share this post


Link to post
Share on other sites
kareka

Supondo que isso está dentro de um form , tens que dar um nome ao teu select e fazeres ou um $_POST['NOME DO SELECT'] ou um $_GET['NOME DO SELECT'] , dependendo do que usares .


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites
kareka

Sim , é bastante simples . Depois é só fazeres o insert na bd .

Já agora se em vez de guardares os valores que mostras quiseres guardar outros , podes fazer:

<select>
<option value="VALOR A GUARDAR NA BD">a</option>
</select>

E em vez de guardares "a" , guardas outro valor qualquer .


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites
Fabricio

Cachopo eu uso assim ...

Criando o select listando do banco

                echo "<select name='Nome_do_select'>";
        
                while ($linha=mysql_fetch_array($result))
                        { 
                            $variavel1=$linha["nome"];
                            $variavel2=$linha["id_categoria"];
                           print "<option value='".$id."'>".$categoria."</option>";
                        }
                
                echo "</select>";

inserindo no bd


$variavel1 = $_POST["campo1"];
$variavel2 = $_POST["campo2"];
$variavel3  = $_POST["campo3"];

$resulta = mysql_query("INSERT INTO tb_produto (nome_do_campo_bd1 ,nome_do_campo_bd2 , nome_do_campo_bd3) VALUES('".$Nomedavariavel1."','".$Nomedavariavel2."','".$Nomedavariavel13."')");

if(mysql_affected_rows()>0)
{
 print "Produto Incluido <a href='#' onClick='javascript:history.back(-1)'>Cadastrar Novamente</a>";
}

}

mysql_close();

?>


Alguem tem o Código Fonte da Vida ?

Share this post


Link to post
Share on other sites
cachopo

E assim eu tenho <select name = "teste">

e depois nas opções tambem tenho

<option value="teste2">

Ou basta me por em 1 deles?

Share this post


Link to post
Share on other sites
kareka

O nome do select é que vais usar para fazeres $_POST ,  o nome em cada uma das options é o que é passado para a bd .

Teoricamente precisas dos dois ..


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites
cachopo

Duvida esclarecida

Obrigado pela ajuda.

Eu tenho outra duvida mas agora nao tenho tempo para a expor depois quando tiver eu exponho.

Share this post


Link to post
Share on other sites
Lfscoutinho

Boas,

Para pegares o valor do select, basta utilizares o $_POST['nome_do_select'], mas deves usar o if para verificar se o valor é um dos possíveis que queres introduzir, pois um utilizador pode mudar o valor do select muito facilmente...

Share this post


Link to post
Share on other sites
kareka

Boas,

Para pegares o valor do select, basta utilizares o $_POST['nome_do_select'], mas deves usar o if para verificar se o valor é um dos possíveis que queres introduzir, pois um utilizador pode mudar o valor do select muito facilmente...

Mudar o valor do select ? Desculpa a ignorância mas como é que isso é feito ?


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites
Lfscoutinho

Boas,

Por exemplo com o Firefox basta teres o firebug instalado e muito facilmente mudas o html...

Share this post


Link to post
Share on other sites
kareka

Não sabia , não costumo usar o firefox .

Mas ao alterar o html , fica alterado no servidor onde está alojado o ficheiro ?


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites
Lfscoutinho

Boas,

Não, claro que não. Apenas no teu pc e quando fizeres refresh torna a aparecer como está no servidor.

Por exemplo, se tiveres um select com os valores "SLB, SCP e FCP", qualquer pessoas pode mudar e meter "Beira-Mar". Depois, se escolheres essa opção, o valor a ser enviado para o servidor é "Beira-Mar". Caso não faças nenhuma verificação, podes ter problemas...

Share this post


Link to post
Share on other sites
kareka

Não fazia a minima ideia que isso era possível , obrigado pelo esclarecimento  :D


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites
cachopo

Boa tarde,

Lfscountinho ja agora como e que se faz isso é que eu ate tinha pensado que era necessario usar 1 if mas nao por causa disso.

Share this post


Link to post
Share on other sites
Lfscoutinho

Boas,

Há várias formas, uma delas é colocar os valores que permites num array e depois verificar se o valor introduzido pelo utilizador é um desses, utilizando a função in_array().

Share this post


Link to post
Share on other sites
cachopo

Pois nao sei como fazer. :S

Como é que eu crio um código de activação de contas?

E como é que envio para o e-mail do utilizador para poder activar a conta?

Share this post


Link to post
Share on other sites
Lfscoutinho

Boas,

Por exemplo:

<?php

$valores = array('slb', 'scp', 'fcp');

if( ! in_array( 'scb', $valores ) ) {

echo 'erro';

}

?>

Relativamente à activação, tens de ter uma tabela onde colocas o id do utilizador e uma chave aleatória e na tabela de utilizadores um campo "activo". Depois, envias um mail com a chave que geraste e crias uma página para fazer a verificação, onde só tens que comparar se a chave aleatória indicada pertence aquele utilizador. Se pertencer, activas o utilizador.

Share this post


Link to post
Share on other sites
kareka
switch($_POST['NOME DO SELECT']) {
case OPTION 1:
case OPTION 2:
case OPTION 3:
case OPTION N: INSTRUÇÃO PARA INSERIR;
break;
default: MENSAGEM DE ERRO;
break;


<?php include("assinatura.txt"); ?>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.