Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/12/2008, 16:12
Avatar de Coala
Coala
 
Fecha de Ingreso: marzo-2007
Ubicación: Chile/Santiago
Mensajes: 150
Antigüedad: 17 años, 1 mes
Puntos: 0
Problema para realizar Update

Hola.
Tengo un problema que y nose como poder solucionarlo realmente, lo que sucede es que cuando me voy a la sección actualizar los datos del perfil del usuario cargo los datos que trae este en su perfil en un formulario con textbox y ademas el formulario tiene dos combobox una que me carga los nombres de la comunas (santiago, maipu, etc) y otra que me carga los cargos del usuario (teleefonista, secretaria, etc). Y se pueden escoger nuevamente si se desea.

Ahora mi problematica se presenta cuando yo voy a actualizar los datos que se me han requerido, y entre ellos los contenidos de los combobox. Lo que pasa que en estos combobox yo no carge los id (PK) de las tablas "comuna" y "cargo_usuario_municipal" ya que el usuario ve sus nombres. Por ello tengo que pregunar por el evaluar el contenido de esos dos combos y de acuerdo a ello insertar su respectivo id en la tabla. Y mi pregunta
¿pero como puedo hacer para analizar esos dos contenidos en unasola consulta? ¿es posible?

Aqui mi codigo.

Código PHP:
<?php
//    
    
function modificar_usuario()
    {
    
//echo 'modificando usuario';
    //}
?>        
<table width="100%" >
        <br>
<tr>
                <td align="center" bgcolor="#99CCFF"><b> <font face="Arial, Helvetica, sans-serif" size="2"> Perfil Usuario de sistemas </font></b> </td>
            </tr>
        </table>
<?php

            $conexion 
mysql_connect(localhost,root,'') or die ('Error de conexion, el error es : '.mysql_error());
            
mysql_select_db(municipio,$conexion) or die ('Error de selecion de Base de Datos, el error es :'.mysql_error());
            
$consulta 'select * from usuario_municipal where usu_muni_rut= "'.substr($_POST['rut'],0,2).substr($_POST['rut'],3,3).substr($_POST['rut'],7,3).'"';
            
//echo "$consulta";
            //Ejecucion de la consulta SQL.
            
$resultado mysql_query($consulta,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());
            echo 
'<form name="modificar_usyario" action="adm_maestro_usuario.php" method="post" target="_self">';
            echo 
"<table border = '0' , align='center' \n";    
            while (
$row mysql_fetch_row($resultado))
            {
            
//echo "<tr><td<font face='Arial' size='2'>Rut</td><td><input type='text' name='rut' value=$row[0] size='8' readonly> - <input type='text' name='dv' value=$row[1] size='1' readonly></td></tr>";
            
echo "<br>";
            echo 
"<tr><td <font face='Arial' size='2'> <b>Datos De Sistema</b></td>";
            echo 
"<tr><td<font face='Arial' size='2'>Código Usuario</td><td><input type='text' name='codigo' value=$row[0]  size='2' readonly/></td> </tr>";
            
//echo "<tr><td<font face='Arial' size='2'>Cargo Usuario</td><td><input type='text' name='cargo' value=$row[1] size='8'></td></tr>";
            
echo "<tr>
                    <td>Cargo Usuario</td>
                    <td><select name='cargo'>
            <option selected='selected'>Seleccione una Cargo</option>"
;
            
$conexion mysql_connect(localhost,root,'') or die ('Error de conexion, el error es : '.mysql_error());
            
//Seleccion de la Base de Datos.
            
mysql_select_db(municipio,$conexion) or die ('Error de selecion de Base de Datos, el error es :'.mysql_error());
            
//Confeccion de la consulta SQL.
            
$consulta 'SELECT CARGO_USU_DES FROM cargo_usuario_muni';
            
//echo "$consulta";
            //Ejecucion de la consulta SQL.
            
$resultado mysql_query($consulta,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());
            
//Extraccion del dato.
               
$cargo mysql_fetch_row($resultado);
            
//Comprueba existencia de resultado
            
if (mysql_num_rows($resultado))
            {
                
//Muestra los resultados
                
for ($i 0;$i <= mysql_num_rows($resultado)-1$i++)
                {
                    if (!
mysql_data_seek($resultado$i))
                    {
                        echo 
"No se puede mostrar la fila ".$i.", el error es: ".mysql_error();
                        continue;
                    }
                    if (!(
$registro mysql_fetch_row($resultado)))
                    {
                        continue;
                    }
                    
                    echo 
'<option>'.$registro[0].'</option>';
                }
            }
        echo 
'</td>';
          echo 
'</tr>';
            echo 
"<tr><td <font face='Arial' size='2'> Correo Usuario</td> <td><input type='text' name='correo' value=$row[12] size='30'></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> Clave Usuario</td> <td><input type='text' name='clave' value=$row[13]></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> <b>Datos De Personales</b></td>";
            echo 
"<tr><td<font face='Arial' size='2'>Rut</td><td><input type='text' name='rut' value=$row[2] size='8' readonly> - <input type='text' name='dv' value=$row[3] size='1' readonly></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> Nombre</td><td><input type='text' name='nombre' value=$row[4]></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> Apelido Paterno</td> <td><input type='text' name='paterno' value=$row[5]></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> Apellido Materno</td><td><input type='text' name='materno' value=$row[6]></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> <b>Datos De Contacto</b></td>";
            echo 
"<tr><td <font face='Arial' size='2'> Telefono</td> <td><input type='text' name='fono' value=$row[7]></td></tr>";
            echo 
"<tr><td <font face='Arial' size='2'> Pasaje</td> <td><input type='text' name='pasaje' value=$row[8]></td><td <font face='Arial' size='2'> Numero</td> <td><input type='text' name='numero' value=$row[9]></td><td <font face='Arial' size='2'> Población</td> <td><input type='text' name='villa' value=$row[10]></td></tr>";
            echo 
"<tr>
                    <td> Comuna</td>
                    <td><select name='comuna'>
            <option selected='selected'>Seleccione una Comuna</option>"
;
            
//<input type='text' value=$row[11]></td></tr>
            //Conexion a la Base de Datos.
            
$conexion mysql_connect(localhost,root,'') or die ('Error de conexion, el error es : '.mysql_error());
            
//Seleccion de la Base de Datos.
            
mysql_select_db(municipio,$conexion) or die ('Error de selecion de Base de Datos, el error es :'.mysql_error());
            
//Confeccion de la consulta SQL.
            
$consulta 'SELECT comuna_nom FROM comuna';
            
//echo "$consulta";
            //Ejecucion de la consulta SQL.
            
$resultado mysql_query($consulta,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());
            
//Extraccion del dato.
               
$cargo mysql_fetch_row($resultado);
            
//Comprueba existencia de resultado
            
if (mysql_num_rows($resultado))
            {
                
//Muestra los resultados
                
for ($i 0;$i <= mysql_num_rows($resultado)-1$i++)
                {
                    if (!
mysql_data_seek($resultado$i))
                    {
                        echo 
"No se puede mostrar la fila ".$i.", el error es: ".mysql_error();
                        continue;
                    }
                    if (!(
$registro mysql_fetch_row($resultado)))
                    {
                        continue;
                    }
                    
                    echo 
'<option>'.$registro[0].'</option>';
                }
            }
        echo 
'</td>';
          echo 
'</tr>';
            echo 
"</tr> \n";
            }
            echo 
"</table> \n";
        
//echo substr($_POST['rut'],0,2).substr($_POST['rut'],3,3).substr($_POST['rut'],7,3);

    
?>        
    <br>
<table width="827" border="0" align="center">
    <tr>
        <td><input type="submit" name="enviar"  value="Volver"></td><td><input type="reset" name="borrar" value="Borrar Todo"></td><td><input type="submit" name="enviar" value="Guardar"></td>
    </tr>
</table>

<?php
            
//Conexion a la Base de Datos.
            
$conexion mysql_connect(localhost,root,'') or die ('Error de conexion, el error es : '.mysql_error());
            
//Seleccion de la Base de Datos.
            
mysql_select_db(municipio,$conexion) or die ('Error de selecion de Base de Datos, el error es :'.mysql_error());

// AQUI ES DONDE EMPIESA EL PROBLEMA, NECESITO ANALIZAR LOS CONTENIDOS DE LOS DOS COMBOBOX Y TOMAR SU ID PARA LA ACTUALIZACIÓN

            
$consulta 'SELECT comuna_cod FROM comuna WHERE comuna_nom = "'.$_POST['comuna'].'"';  
        
//    $consulta1 = 'SELECT CARGO_USU_MUNI FROM usuario_municipal WHERE CARGO_USU_DES = "'.$_POST['cargo'].'"';  
            //Ejecución de consulta
            
$resultado mysql_query($consulta,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());
            
//$resultado2 = mysql_query($consulta1,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());
            //Extraccion del dato.
            
$comuna mysql_fetch_row($resultado);
            
//$cargo = mysql_fetch_row($resultado2);
            //Confeccion de la consulta SQL.            
            
$consulta 'update usuario_municipal set USU_MUNI_COD="'.$_POST['codigo'].'",CARGO_USU_MUNI="'.$cargo[0].'",USU_MUNI_RUT="'.$_POST['rut'].'",USU_MUNI_DV="'.$_POST['dv'].'",USU_MUNI_NOM="'.$_POST['nombre'].'",USU_MUNI_PAT="'.$_POST['paterno'].'",USU_MUNI_MAT="'.$_POST['materno'].'",USU_MUNI_FONO ="'.$_POST['fono'].'",USU_MUNI_PAS ="'.$_POST['pasaje'].'",USU_MUNI_NUM ="'.$_POST['numero'].'",USU_MUNI_POB ="'.$_POST[''].'",COMUNA_COD ="'.$comuna[0].'",USU_MUNI_CORREO ="'.$_POST['correo'].'",USU_MUNI_CLAVE ="'.$_POST['clave'].'" where USU_MUNI_RUT = "'.$_POST['rut'].'"';
            
//echo"$consulta";
            //Ejecución de consulta 
            
mysql_query($consulta,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());            
                
            echo 
'</form>';
        }
//Cierro formulario
?>

Muchisimas Gracias

Última edición por Coala; 14/12/2008 a las 16:32