Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/09/2014, 15:39
pakillo
 
Fecha de Ingreso: mayo-2004
Mensajes: 400
Antigüedad: 20 años
Puntos: 0
Respuesta: Hacer update en bd con arreglo enviado desde formulario

Lo puse en el primer post tengo un formulario que envia datos en un arreglo asi

Código PHP:
<form method="POST" action="editar.php">
        <
input type="text" name="cliente[]" />
        <
input type="text" name="cliente[]" />
        <
input type="password" name="cliente[]" />
        <
input type="submit" name="submit" />
    </
form>; 
en el archivo editar recibo por post de esta forma para los insert

Código PHP:
if(isset($_POST['cliente'])){
    foreach (
$_POST['cliente'] as $val){
 
$data[] = sqlValue($val,'text');
}
$imp  =  implode(",",$data);
 
mysql_query("INSERT INTO clientes VALUES ($imp)") or die ("Error: "mysql_error());  
 
header("Location:clientes.php");

Mi pregunta es como tengo que hacer en lugar del insert el update para que coja el arreglo cliente[] y actualice solo ese usuario. Uso arreglos en los formularios porque mis formularios tienen mas de 20 campos.
En otras palabras quiero saber como hacer la actualización sin tener que escribir cada nombre de campo. El formulario que puse es solo un ejemplo para no poner uno tan grande como el que uso.

Como seria esto?
Código PHP:
if(isset($_POST['cliente'])){
    foreach (
$_POST['cliente'] as $val){
 
$data[] = sqlValue($val,'text');
}
$imp  =  implode(",",$data);
mysql_query("UPDATE clientes SET $imp where id_client='$id'") or die ("Error: "mysql_error());   
 
header("Location:clientes.php");

Se que esta mal el ejemplo del uodate por eso pregunto como puedo hacerlo, o agregarle el nombre de los campos para que lo hago solo sin ponerlos uno por uno.

Última edición por pakillo; 24/09/2014 a las 15:47