Jump to content


Photo

Inserir Vários Dados De Uma List No Mesmo Campo Banco De Dados Mysql


  • Faça o login para participar
4 replies to this topic

#1 MnMk

MnMk

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Feminino
  • Localidade:Curitiba

Posted 01/04/2010, 14:13

Bom dia, eu tenho um cadastro de clientes onde o cliente pode escolher vários planos em uma list, porém na hora de gravar no banco de dados ele grava somente o último registro selecionado. Tenho que mudar algo no banco para que ele insira todos os registros?

aqui é a parte do formulário onde é montado a list a partir de uma base de dados
<select name="plano" size="4" multiple="multiple" id="plano">
<?php
require_once("BD_list_plano.php");
?>
</select>




BD_list_plano.php
<?php

require "BD_conecta.php";

$consulta = mysql_query("SELECT Nome FROM plano ORDER BY Nome");

while($linhas = mysql_fetch_assoc($consulta)) {
echo "<option value=".$linhas['Nome'].">".$linhas['Nome']."</option>";
}

?>




Para inserir os valores no mysql estou usando um
$plano = $_POST['plano'];
e usando um insert normal.
Sugestões?

#2 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 01/04/2010, 18:00

Faça o seguinte...

Aonde você usa

$plano = $_POST['plano'];

coloque:

echo "<pre>";
print_r($_POST['plano']);
echo "<pre>";

e coloque o resultado aqui para vermos o que está sendo enviado pelo formulário.

A função print_r serve para imprimir os valores contidos em uma variável.

http://www.php.net/m...ion.print-r.php
Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.

#3 MnMk

MnMk

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Feminino
  • Localidade:Curitiba

Posted 05/04/2010, 08:19

Se eu colocar ex1, ex2 e ex3 le salva no banco somente o ex3.

#4 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 05/04/2010, 08:59

Faça o seguinte... coloque isso no nome do campo select '[]' dessa forma:

<select name="plano[]" size="4" multiple="multiple" id="plano">

Adicionando os colchetes no campo select todos os valores que vc selecionar no campo select serão enviados através do post em um objeto array dentro do post.
Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.

#5 MnMk

MnMk

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Feminino
  • Localidade:Curitiba

Posted 06/04/2010, 14:48

Assim funciona, consigo gravar os vários dados no banco, mas ele ficam em forma de Array, sendo que não posso visualizá-los. Como posso fazer isso?
Gravar os dados no banco separados por virgula, por exemplo...




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq