使用插入PDO检索值

时间:2013-09-22 17:26:58

标签: php mysql for-loop pdo

我正在处理一个页面,用户可以在其中添加包含表单字段的动态行,具体取决于此页面的模型http://www.linhadecomando.com/scripts/input-dinamico/

我遇到问题RECOVER FROM插入第二行的值,因为第一行我可以安静地进行。检查我的代码:

<?php
// exibindo os dados
if ($_POST){
$IDCliente = $_POST['IDCliente'];
   $IDBanco = $_POST['Banco'];
   $Titular = $_POST['Titular'];
   $Agencia = $_POST['Agencia'];
   $CC = $_POST['CC'];
   $quant_linhas = count($IDBanco);

   for ($i=0; $i<$quant_linhas; $i++) {


//$pdo = conectar();
$sql = "INSERT INTO Clientes_Referencias_Bancos (IDCliente, IDBanco, Titular, Agencia, CC) VALUES (:IDCliente, :IDBanco, :Titular, :Agencia, :CC)";
$cadastrar = $pdo->prepare($sql);
$cadastrar ->bindValue(':IDCliente', $IDCliente[$i]);
$cadastrar ->bindValue(':IDBanco', $IDBanco[$i]);
$cadastrar ->bindValue(':Titular', $Titular[$i]);
$cadastrar ->bindValue(':Agencia', $Agencia[$i]);
$cadastrar ->bindValue(':CC', $CC[$i]);
$cadastrar ->execute();


if($cadastrar->rowCount() == 1):
echo "Departamento cadastrado com sucesso!<br/>";
else:
echo "Erro ao cadastrar o Departamento!";
endif;


echo  "Cliente: ".$IDCliente[$i]."<br />";   
echo  "Banco: ".$IDBanco[$i]."<br />";
echo  "Titular: ".$Titular[$i]."<br />";
echo  "Agência: ".$Agencia[$i]."<br />";
echo  "Conta Corrente: ".$CC[$i]."<br />";
   }
}
?>

这是我的表格......

<select name="Banco[]">
<input type="text" name="Titular[]" id="Titular[]" />
<input type="text" name="Agencia[]" id="Agencia[]" />
<input type="text" name="CC[]" id="CC[]" />

<input name="IDCliente[]" id="IDCliente[]" type="hidden" value="1" />

2 个答案:

答案 0 :(得分:0)

您可以使用交易。您应该首先准备查询。在for循环中,您应该绑定变量并执行查询

答案 1 :(得分:0)

Entãocara,faz assim:

<?php
// exibindo os dados
if ($_POST){
$IDCliente = $_POST['IDCliente'];
   $IDBanco = $_POST['Banco'];
   $Titular = $_POST['Titular'];
   $Agencia = $_POST['Agencia'];
   $CC = $_POST['CC'];

//$pdo = conectar();
$sql = "INSERT INTO Clientes_Referencias_Bancos (IDCliente, IDBanco, Titular, Agencia, CC) VALUES (:IDCliente, :IDBanco, :Titular, :Agencia, :CC)";
$cadastrar = $pdo->prepare($sql);
$cadastrar ->bindValue(':IDCliente', $IDCliente);
$cadastrar ->bindValue(':IDBanco', $IDBanco);
$cadastrar ->bindValue(':Titular', $Titular);
$cadastrar ->bindValue(':Agencia', $Agencia);
$cadastrar ->bindValue(':CC', $CC);
$cadastrar ->execute();


if($cadastrar->rowCount() == 1):
echo "Departamento cadastrado com sucesso!<br/>";
else:
echo "Erro ao cadastrar o Departamento!";
endif;


echo  "Cliente: ".$IDCliente."<br />";   
echo  "Banco: ".$IDBanco."<br />";
echo  "Titular: ".$Titular."<br />";
echo  "Agência: ".$Agencia."<br />";
echo  "Conta Corrente: ".$CC."<br />";
   }

?>

E o seu形式,ficaria assim:

<select name="Banco">
<input type="text" name="Titular" id="Titular" />
<input type="text" name="Agencia" id="Agencia" />
<input type="text" name="CC" id="CC" />

<input name="IDCliente" id="IDCliente" type="hidden" value="1" />