Foros del Web » Programando para Internet » PHP »

varios form dentro de un ciclo while

Estas en el tema de varios form dentro de un ciclo while en el foro de PHP en Foros del Web. Pues bien, necesito asignarle casos a diferentes usuarios en un sistema para abogados, por lo que consulto los casos, los desplego en un ciclo while ...
  #1 (permalink)  
Antiguo 22/05/2012, 15:00
 
Fecha de Ingreso: abril-2012
Mensajes: 65
Antigüedad: 12 años
Puntos: 0
varios form dentro de un ciclo while

Pues bien, necesito asignarle casos a diferentes usuarios en un sistema para abogados, por lo que consulto los casos, los desplego en un ciclo while y agrego un listbox con los nombres de cada uno para poder asignarselos...

si limito a la query a 1 solo un despliegue, inserta los datos correctamente, pero si la agrando a a 10 resultados (ver foto) y luego trato de guardar (el listbox salva automaticamente con un
Código:
onChange='form1.submit()'
)

solo guarda los datos del primero (independiente que trate de salvar cualquiera de mas abajo)



el codigo

Código PHP:
<?
$con 
mysql_connect('xxxx''xxxx''xxxx');
if (!
$con)
  {
  die(
'Could not connect: ' mysql_error());
  }
mysql_query("SET NAMES 'utf8'");
mysql_select_db("auditoria_asesor"$con);


$sql1 "
SELECT
        *
FROM 
        base_auditoria
limit 0,10    "
;

$res mysql_query($sql1);
echo
"<form action='' method='GET' name='form1'>"
echo 
"<table width='100%' border='1' cellspacing='1'>
<tr>
<th>Asignar</th>
<th>Ruc</th>
<th>ID Relación</th>
<th>Fiscalía</th>

<th>Estado</th>
<th>Fiscal</th>
<th>Glosa</th>
</tr>"
;

while(
$row mysql_fetch_array($res))
  {
  echo 
"<tr>";
  echo 
"<td width='80'><select name='users'' onChange='form1.submit()'>
<option value=''>Asignar:</option>
<option value='mlopez'   >mlopez</option>
<option value='mmoreno'  >mmoreno</option>
<option value='hdelgado' >hdelgado</option>
<option value='colivos'  >colivos</option>
<option value='rnavarro' >rnavarro</option>
</select></td>"
;
  echo 
"<td width='80'>" $row['idf_rolunico'] . "</td>";
  echo 
"<td><input name='crr_idrelacion' type='hidden' value=" $row['crr_idrelacion'] . ">" $row['crr_idrelacion'] . "</td>";
  echo 
"<td>" $row['cod_fiscalia'] . "</td>";
  
  echo 
"<td>" $row['gls_estcaso'] . "</td>";
  echo 
"<td>" $row['idf_fiscal'] . "</td>";
  echo 
"<td>" $row['gls_relacion'] . "</td>";
  echo 
"</tr>";
  
  
  }
echo 
"</table>";
echo 
"</form>";

            
            
$asesor $_GET['users'];
            
$crr_idrelacion $_GET['crr_idrelacion'];

if (isset(
$users)) { 

            
            
$updatequery="insert into asignacion_asesor (select '$crr_idrelacion', '$asesor', date_format(now(),'%Y-%m-%d %h:%m:%i')) ";

mysql_query($updatequery) or die(mysql_error());            
     

?>
Como podria hacer para que ser guarden correctamente si quisiera asignar los ultimos (como decia solo el primer registro de arriba guarda bien)
  #2 (permalink)  
Antiguo 22/05/2012, 15:06
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: varios form dentro de un ciclo while

Eso es por que estás creando un solo form en vez de uno por fila de tu tabla.
Deberías crear el form en daca fila, pudiendo colocar en su nombre un contador para que vaya cambiando, y para el envío, se puede usar this.form.submit()
  #3 (permalink)  
Antiguo 22/05/2012, 15:09
 
Fecha de Ingreso: abril-2012
Mensajes: 65
Antigüedad: 12 años
Puntos: 0
Respuesta: varios form dentro de un ciclo while

Cita:
Iniciado por ocp001a Ver Mensaje
Eso es por que estás creando un solo form en vez de uno por fila de tu tabla.
Deberías crear el form en daca fila, pudiendo colocar en su nombre un contador para que vaya cambiando, y para el envío, se puede usar this.form.submit()
solo necesito salvar dos datos de esa tabla para insertarla en la bd, usuario y relacion, dices que acote el form a solo esos dos campos? probablemnte aun asi con ello, como es un solo form con el while, sea el mismo problema.

Etiquetas: mysql, registro, sql, usuarios, formulario, ciclos
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 20:01.