Foros del Web » Programando para Internet » PHP »

Como puedo hacer esto??

Estas en el tema de Como puedo hacer esto?? en el foro de PHP en Foros del Web. Estimados, tengo dos archivos.php en el primero lleno un arreglo con los nombres de los campos de una tabla que se llama $nombreCampos y queda ...
  #1 (permalink)  
Antiguo 05/06/2006, 14:30
Avatar de ciberpato  
Fecha de Ingreso: agosto-2004
Mensajes: 142
Antigüedad: 19 años, 8 meses
Puntos: 1
Pregunta Como puedo hacer esto??

Estimados, tengo dos archivos.php en el primero lleno un arreglo con los nombres de los campos de una tabla que se llama $nombreCampos y queda como una variable de session con el mismo nombre (nombreCampos), como tambien el nombre de la tabla , además los name de los input asumen los nombre de estos campos, de manera cualquier tabla que edite para modificar use el mismo archivo, de esta manera tengo un editor genérico . En el segundo archivo quiero armar una query dinámico por ejempo:

foreach($nombreCampos as $ valor) {
$sql='UPDATE '.$nombreTabla.' SET ';
$sql.="'".$valor.'='.$nombreCampospost;
}

Como pueden ver, la idea es como hago para que $nombreCampos pueda ser usado como variable. Es decir en el archivo 1 tengo un input con name="NOT_Id" que es el nombre del campo de la tabla y que se encuentra en el arreglo $nombreCampos, en el segundo quiero armar un $sql genérico en el cual $nombreCampospost asuma $NOT_Id.
Espero haber sido claro con mi problema
De ante mano agradezco su cooperación.
  #2 (permalink)  
Antiguo 05/06/2006, 14:48
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
mira te cuento lo q hago yo para crear los inputs

Código PHP:
<?
$tabla 
'pepe';
$sql"SHOW FIELDS FROM $tabla";

$query =mysql_query($sql);

if (!isset(
$_POST['enviar'])){
//mostramos form

?>
<form action="index.php" method="post" enctype="multipart/form-data"> 
<?
//no muestro el primer campo xq lo uso de ID siempre, entonces no quiero este para poner valores
$row $db->fetch_array($query);
//mientras existan campos
for($i $row $db->fetch_array($query); $i++){

echo 
'<input type=texto name='.$row['Field'].' >';

?>
<input type=summit name="enviar">
</form>

<?

}else{
//procesamos form
$sql "INSERT INTO $tabla SET ";
$row $db->fetch_assoc($query);

while(
$row $db->fetch_assoc($query)){    
$sql .= " ".$row['Field']." = ".$_POST[$row['Field']].", ";
}

mysql_query($sql);

}
  #3 (permalink)  
Antiguo 06/06/2006, 08:40
Avatar de ciberpato  
Fecha de Ingreso: agosto-2004
Mensajes: 142
Antigüedad: 19 años, 8 meses
Puntos: 1
Disculpa la demora NEFERTITER, tu script es válido pero no apropiado a mi desarrollo que ya está implementado y de acuerdo a eso encontré la solución mas simple, pues verás que en ese momento no me imaginaba como poner el $ en la variable campo en el segundo archivo, lo que hice es poner el $ como string en el input y en el segundo archivo $_REGUEST["$".$nombreCampos] y asunto arreglado. Gracias por tu cooperación hasta la próxima.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:59.