Ir para conteúdo

POWERED BY:

Arquivado

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

MarceloZ

Cadastrar varios inputs em dois campos?

Recommended Posts

Bom dia Carissimos Gostaria de saber se é possivel cadastrar varias inputs em dois campos ?

 

assim em uma tabela tem assim id , nome , email dai eu tenho um form que tem inputs nome , email eu preciso multiplicar esses inputs nome , email

ficando nome email nome email nome email nome email nome email

ai fazer o insert $sql = "INSERT INTO contatos(idniver,nome,email)VALUES(:idniver,:nome,:email,:nome2,:email2,:nome3,:email3,:nome4,:email4,:nome5,:email5)";

 

tem como isso? obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

cria os imputs assim:

Nome1;
Email1;

Segundo imput no nome você faz
Nome2;
Email2

No terceiro
Nome3
Email3

Assim por diante.

Hora de inserir no banco você faz um while mais ou menos assim:

Do{
i=i+1;
Nome=$_Post["nome$1"];
Email=$_Post["email$i"];
$sql = "INSERT INTO contatos(idniver,nome,email)VALUES(idniver,'nome','email','nome')";
} While


Mais ou menos isso.
Se tiver erros me desculpe pois estou postando do celular. Mas ja da pra tirar uma idéia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim , eu tenho os inputs nome , nome2, nome3, nome4, nome5...

a minha duvida é no insert into

não entendi esse seu do while

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo o do while é um laço. Você pode usar um for se quiser.

 

Expressão acima cada vez que o laços for executado oa variável $i vai valer mais um. Ou seja vai ser; 1, 2, 3, 4... Até o parâmetro do for terminar.

Assim cada vez que for executado o laço vai ficar assim

Nome=$_Post["nome1"];Nome=$_Post["nome2"];

 

Só que cada inserção desse laço vai criar uma nova chave. Se quer inserir tudo na mesma aí não tem como. Só se você colocar tudo em um array.

Compartilhar este post


Link para o post
Compartilhar em outros sites

po não funfou

 

<?php
include("db.php");
$idniver = $_POST['idniver'];
$nome = $_POST['name'];
$email = $_POST['email'];
$nome2 = $_POST['name2'];
$email2 = $_POST['email2'];
$nome3 = $_POST['name3'];
$email3 = $_POST['email3'];
$nome4 = $_POST['name4'];
$email4 = $_POST['email4'];
$nome5 = $_POST['name5'];
$email5 = $_POST['email5'];
$pdo = conectar();
Do{
i=i+1;
$nome=$_Post["nome$i"];
$email=$_Post["email$i"];
$sql = "INSERT INTO contatos(idniver,nome,email)VALUES(:idniver,:nome,:email,:nome2,:email2,:nome3,:email3,:nome4,:email4,:nome5,:email5)";
} While
$cadastra = $pdo->prepare($sql);
$cadastra->bindValue(":idniver",$idniver);
$cadastra->bindValue(":nome",$nome);
$cadastra->bindValue(":email",$email);
$cadastra->execute();
if($cadastra->rowCount() == 1){
echo "Cadastro sucesso";
}else{
echo "erro ao cadastrar";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa o laço for:

 

for($c=1;$c<=5;$c++){
$nome=$_Post["nome$i"];
$email=$_Post["email$i"];
$sql = "INSERT INTO contatos(idniver,nome,email)VALUES('$idniver','$nome','$email')";


.....
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

funfou não

<?php
include("db.php");
$pdo = conectar();
for($i=1;$i<=5;$i++){
$idniver = $_POST['idniver'];
$nome = $_POST["nome$i"];
$email = $_POST["email$i"];
$sql = "INSERT INTO contatos(idniver,nome,email)VALUES(:idniver,:nome,:email,:nome2,:email2,:nome3,:email3,:nome4,:email4,:nome5,:email5)";
$cadastra = $pdo->prepare($sql);
$cadastra->bindValue(":idniver",$idniver);
$cadastra->bindValue(":nome",$nome);
$cadastra->bindValue(":email",$email);
}
$cadastra->execute();
if($cadastra->rowCount() == 1){
echo "Cadastro sucesso";
}else{
echo "erro ao cadastrar";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá alguma msg de erro, tente assim:

 

 

<?php
include("db.php");

 
   $pdo = conectar();
   $idniver  = $_POST['idniver'];  
   for($i=1;$i<=5;$i++){

 
   $nome  =  $_POST["nome$i"];
   $email =  $_POST["email$i"];
   $sql = "INSERT INTO contatos(idniver,nome,email)VALUES(:idniver,:nome,:email)";
   
    $cadastra = $pdo->prepare($sql);
$cadastra->bindValue(":idniver",$idniver);
    $cadastra->bindValue(":nome",$nome);
    $cadastra->bindValue(":email",$email);

    $cadastra->execute();
	}
    

 
if($cadastra->rowCount() == 1){
echo "Cadastro sucesso";
}else{
echo "erro ao cadastrar";
}
   
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

erro não da

só não faz o cadastro. :S

adicione essas 2 linhas no inicio da pagina.

 

 

ini_set('display_errors', 1);
error_reporting(E_ALL);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se não faz o cadastro pode ser algum problema no sql, faz um teste aí:

 

<?php
include("db.php");

 
   $pdo = conectar();
   $idniver  = $_POST['idniver'];  
   for($i=1;$i<=5;$i++){

 
   $nome  =  $_POST["nome$i"];
   $email =  $_POST["email$i"];
   $sql = "INSERT INTO contatos(idniver,nome,email)VALUES(:idniver,:nome,:email)";
   
    /*$cadastra = $pdo->prepare($sql);
$cadastra->bindValue(":idniver",$idniver);
    $cadastra->bindValue(":nome",$nome);
    $cadastra->bindValue(":email",$email);

    $cadastra->execute();
	}
    

 
if($cadastra->rowCount() == 1){
echo "Cadastro sucesso";
}else{
echo "erro ao cadastrar";
}*/
echo $sql."<br/>";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

não parace nada ,nem um erro

não sei se tem haver com o pdo

 

 

Um luz

 

 

esta cadastrando 4 campos em branco e depois cadastra 4 campos com os dados dos inputs

fica só que eu tenho 5 inputs

 

 

não sei porque :S

não sei porque :S

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma luz esta cadastrando 4 campos em branco e depois cadastra 4 campos com os dados dos inputs
fica só que eu tenho 5 inputs

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.