Foros del Web » Programando para Internet » PHP »

Recuperar el valor elegido

Estas en el tema de Recuperar el valor elegido en el foro de PHP en Foros del Web. Buenas tardes. El problema que llevo teniendo todo este tiempo se basa en lo mismo. Resulta que mi intención es elegir de un desplegable de ...
  #1 (permalink)  
Antiguo 22/10/2007, 10:14
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Recuperar el valor elegido

Buenas tardes. El problema que llevo teniendo todo este tiempo se basa en lo mismo. Resulta que mi intención es elegir de un desplegable de la pagina de inicio una EMPRESA. Una vez que la haya seleccionado pulso un boton aceptar y se me abre otra pagina con un menú con 3 opciones (consultar datos,modificar datos, dar de baja). Pues bien... yo quiero recuperar en esas 3 opciones de menú la EMPRESA que yo he seleccionado en el desplegable, para así poder mostrar los datos de esa empresa en cuestión. Llevo 2 semanas con este tema y se ve que no lo he logrado,os pongo el codigo que aunque parece muy extenso es muy facil de leer y de comprender, espero me puedan ayudar.

Pagina index.php
Código PHP:
<?php

// Conexión a la base de datos

$bd_host "localhost";
$bd_usuario "root";
$bd_password "";
$bd_base "asesoria";

$con mysql_connect($bd_host$bd_usuario$bd_password);

if(!
$con){
    echo 
"Error al conectar a la Base de Datos.";
}

mysql_select_db($bd_base$con) or die("No pudo seleccionarse la Base de Datos.");
?>

<?php

$sql 
"SELECT * FROM sociedades ORDER BY 'nombre'"// Obtiene todas las sociedades almacenadas en la base de datos
$rs mysql_query($sql$con) or die("Error al consultar datos sociedades: ".mysql_error());

if(
mysql_num_rows($rs)>0)
{
$tam=mysql_num_rows($rs);
    while(
$row mysql_fetch_assoc($rs))
    {
        
$id_soci[]=$row["id_soci"];
        
$sociedades[]=$row["nombre"];
    }
}

mysql_close($con);

?>

<html>

<table align="center" cellspacing="2" cellpadding="2" border="0">
  <tr>
    <td rowspan="14" width="1" height="100%">
    <img border="0" src="transparente.gif" id="imagenAltaRuta" name="imagenAltaRuta" width="1" height="100%">
    </td>
    
  </tr>  
  <tr> 
    <td align="right">
    <b>Seleecione la sociedad que desee:</b>
    </td>
    <td>
<select name="pob1">
        <option value="">____________________________
<?php
for($i=0$i<$tam$i++){
?>
        <option value="<?php echo $id_soci[$i?>"><?php echo $sociedades[$i?>

<?php
    
}
?>
    </select>
   
 </td>
  </tr> 
    <tr align="center">
    <td> 
    
    &nbsp;<BR>
    <input type="submit" value="ACEPTAR" onFocus="this.blur()">
    </td>
  </tr>

</table>
Página donde quiero recuperar la empresa que seleccioné en el desplegable:
Código PHP:
<?php
$ruta
=$_SESSION['pob1'];

// Conexión a la base de datos

$bd_host "localhost";
$bd_usuario "root";
$bd_password "";
$bd_base "asesoria";

$con mysql_connect($bd_host$bd_usuario$bd_password);

if(!
$con){
    echo 
"Error al conectar a la Base de Datos.";
}

mysql_select_db($bd_base$con) or die("No pudo seleccionarse la Base de Datos.");
?>    

<?php

  $sql 
"SELECT * FROM sociedades WHERE id_soci=".$ruta;
   
  
$rs mysql_query($sql$con) or die("Error al consultar datos personales: ".mysql_error());
   
        while(
$row mysql_fetch_assoc($rs))
        {
            

            
$id_soci=$row["id_soci"];
            
$nombre=$row["nombre"];
            
$cif=$row["cif"];
            
$domicilio=$row["domicilio"];
            
$cp=$row["cp"];
            
$ciudad=$row["ciudad"];
            
$telefono=$row["telefono"];

        }
    
mysql_close($con);

?>

<html>

<head>
<title>Consultar datos personales</title>
<link rel="stylesheet" href="../../bodega.css" type="text/css">
<script language="JavaScript" src="../../bodega.js"></script>
</head>

<body bgcolor="#dddddd" leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" >

<div class="centrada" id="capaDatPer" name="capaDatPer" align="center">

<table align="center" cellspacing="2" cellpadding="2" border="6">
  <tr>
    <td rowspan="16" width="4" height="200%">
    <img border="15" src="../../imagenes/copita.jpg" id="imagenDatPer" name="imagenDatPer" width="150" height="70%">
    </td>
    <td colspan="2">

    <b>En esta sección podrá consultar sus datos personales</b><br>&nbsp;
    </td>
  </tr> 
  <tr>
    <td>
    Id_soci:
    </td>
    <td>
    <?php echo $id_soci ?>
    </td>
  </tr> 
  <tr>
    <td>
    Nombre:
    </td>
    <td>
    <?php echo $nombre ?>
    </td>
  </tr>

  <tr>
    <td>
    Cif:
    </td>
    <td>
    <?php echo $cif ?>
    </td>
  </tr>
 

  <tr>
    <td>
    Domicilio:
    </td>
    <td>
    <?php echo $domicilio ?>
    </td>
  </tr>


   <tr>
    <td>
    CP:
    </td>
    <td>
    <?php echo $cp ?>
    </td>
  </tr>


   <tr>
    <td>
    Ciudad:
    </td>
    <td>
    <?php echo $ciudad ?>
    </td>
  </tr>


  <tr>
    <td>
    Telefono:
    </td>
    <td>
    <?php echo $telefono ?>
    </td>
  </tr>
  
</table>

</div>
<br>
<center><a href="javascript:close()">Cerrar ventana</a>
</body>
</html>
  #2 (permalink)  
Antiguo 22/10/2007, 10:26
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Recuperar el valor elegido

Para enviar datos desde una pagina a otra debes tener definida un area de form.
Algo como:

<body>
<form name="formulario" action="paginaQueprocesa.php" method="post">
<table>
<!-- aca van tus campos o en este caso tu listado
mas el boton de submit -->
</table>
</form>
</body>

y en la otra pagina debes recibir los datos de esta manera:
$_POST['nombreDeCampoInput'];


Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 23/10/2007, 03:14
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Recuperar el valor elegido

Hola fenómeno. El caso es que tenía lo del form que me comentas pero lo borre sin querer jeje. Te pongo el código completo de mi index.php y el código de la página que realiza el chequeo.php. Estoy desesperado con este tema porque no logro resolverlo. GRACIAS !!!!

index.php
Código PHP:
<?php

// Conexión a la base de datos

$bd_host "localhost";
$bd_usuario "root";
$bd_password "";
$bd_base "asesoria";

$con mysql_connect($bd_host$bd_usuario$bd_password);

if(!
$con){
    echo 
"Error al conectar a la Base de Datos.";
}

mysql_select_db($bd_base$con) or die("No pudo seleccionarse la Base de Datos.");
?>

<?php

$sql 
"SELECT * FROM sociedades ORDER BY 'nombre'"// Obtiene todas las sociedades almacenadas en la base de datos
$rs mysql_query($sql$con) or die("Error al consultar datos sociedades: ".mysql_error());

if(
mysql_num_rows($rs)>0)
{
$tam=mysql_num_rows($rs);
    while(
$row mysql_fetch_assoc($rs))
    {
        
$id_soci[]=$row["id_soci"];
        
$sociedades[]=$row["nombre"];
    }
}

mysql_close($con);

?>

<html>

<form action="../chequeo/chequeo.php" method="post" name="formLogin" id="formLogin">

<table align="center" cellspacing="2" cellpadding="2" border="0">
  <tr>
    <td rowspan="14" width="1" height="100%">
    <img border="0" src="transparente.gif" id="imagenAltaRuta" name="imagenAltaRuta" width="1" height="100%">
    </td>
    
  </tr>  
  <tr> 
    <td align="right">
    <b>Seleecione la sociedad que desee:</b>
    </td>
    <td>
<select name="pob1">
        <option value="">____________________________
<?php
for($i=0$i<$tam$i++){
?>
        <option value="<?php echo $id_soci[$i?>"><?php echo $sociedades[$i?>

<?php
    
}
?>
    </select>
   
 </td>
  </tr> 
    <tr align="center">
    <td> 
    
    &nbsp;<BR>
    <input type="submit" value="ACEPTAR" onFocus="this.blur()">
    </td>
  </tr>

</table>
chequeo.php
Código PHP:
<?php
session_start
();

$login $_POST["pob1"];


if (
$login != "") {  // Si se rellenó el campo del desplegable

require('../funciones/conexion.php');  // Conexión con la base de datos

$sql "SELECT id_soci FROM sociedades WHERE id_soci='$login'";
$rs mysql_query($sql$con) or die("Error al consultar login: ".mysql_error());

if(
mysql_num_rows($rs)==1$row mysql_fetch_assoc($rs);

if( 
$row["id_soci"]==$login ){          
    
    
$_SESSION['pob1']=$login;
?>

<script language="Javascript">
    location.href="../formularios/fase.php"; // Entonces se da paso a la primera pantalla con menú
</script>

<?php
    
}

mysql_close($con);    

}
?>


<html>

<body bgcolor="black">

<script language="Javascript">
    alert("Alguno de los datos introducidos es INCORRECTO.");  // Si no, se vuelve a la pantalla de inicio
    top.location.href="../editarcliente.php";
</script>
</body>
</html>
  #4 (permalink)  
Antiguo 23/10/2007, 10:41
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Recuperar el valor elegido

Ahora veo lo que sucede....

Fijate que el select lo tienes asi:
Código PHP:
<select name="pob1"> 
        <option value="">____________________________ 
<?php 
for($i=0$i<$tam$i++){ 
?> 
        <option value="<?php echo $id_soci[$i?>"><?php echo $sociedades[$i?> 

<?php 
    

?> 
    </select>
Si te fijas bien... la etiqueta <option> nunca es cerrada... por lo tanto debes hacer esto:
Código PHP:
<select name="pob1"> 
        <option value="">____________________________ </option>
<?php 
for($i=0$i<$tam$i++){ 
?> 
        <option value="<?php echo $id_soci[$i?>"><?php echo $sociedades[$i?> </option>

<?php 
    

?> 
    </select>
Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #5 (permalink)  
Antiguo 24/10/2007, 02:31
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Recuperar el valor elegido

Muy buenas fenómeno. Gracias por la observación de los <option>, los he puesto ya... pero sigue sin tomarme el valor que yo eligo en el desplegable de la página principal. Es decir, cuando yo quiero recuperar ese valor que seleccioné pues no me lo toma en el siguiente script. Cada vez veo mas cerca la solución jeje.
Código PHP:
<?php 
$ruta
=$_POST['pob1']; 

// Conexión a la base de datos 

$bd_host "localhost"
$bd_usuario "root"
$bd_password ""
$bd_base "asesoria"

$con mysql_connect($bd_host$bd_usuario$bd_password); 

if(!
$con){ 
    echo 
"Error al conectar a la Base de Datos."


mysql_select_db($bd_base$con) or die("No pudo seleccionarse la Base de Datos."); 
?>     

<?php 

  $sql 
"SELECT * FROM sociedades WHERE id_soci=".$ruta
    
  
$rs mysql_query($sql$con) or die("Error al consultar datos personales: ".mysql_error()); 
    
        while(
$row mysql_fetch_assoc($rs)) 
        { 
             

            
$id_soci=$row["id_soci"]; 
            
$nombre=$row["nombre"]; 
            
$cif=$row["cif"]; 
            
$domicilio=$row["domicilio"]; 
            
$cp=$row["cp"]; 
            
$ciudad=$row["ciudad"]; 
            
$telefono=$row["telefono"]; 

        } 
    
mysql_close($con); 

?> 

<html> 

<head> 
<title>Consultar datos personales</title> 
<link rel="stylesheet" href="../../bodega.css" type="text/css"> 
<script language="JavaScript" src="../../bodega.js"></script> 
</head> 

<body bgcolor="#dddddd" leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" > 

<div class="centrada" id="capaDatPer" name="capaDatPer" align="center"> 

<table align="center" cellspacing="2" cellpadding="2" border="6"> 
  <tr> 
    <td rowspan="16" width="4" height="200%"> 
    <img border="15" src="../../imagenes/copita.jpg" id="imagenDatPer" name="imagenDatPer" width="150" height="70%"> 
    </td> 
    <td colspan="2"> 

    <b>En esta sección podrá consultar sus datos personales</b><br>&nbsp; 
    </td> 
  </tr>  
  <tr> 
    <td> 
    Id_soci: 
    </td> 
    <td> 
    <?php echo $id_soci ?> 
    </td> 
  </tr>  
  <tr> 
    <td> 
    Nombre: 
    </td> 
    <td> 
    <?php echo $nombre ?> 
    </td> 
  </tr> 

  <tr> 
    <td> 
    Cif: 
    </td> 
    <td> 
    <?php echo $cif ?> 
    </td> 
  </tr> 
  

  <tr> 
    <td> 
    Domicilio: 
    </td> 
    <td> 
    <?php echo $domicilio ?> 
    </td> 
  </tr> 


   <tr> 
    <td> 
    CP: 
    </td> 
    <td> 
    <?php echo $cp ?> 
    </td> 
  </tr> 


   <tr> 
    <td> 
    Ciudad: 
    </td> 
    <td> 
    <?php echo $ciudad ?> 
    </td> 
  </tr> 


  <tr> 
    <td> 
    Telefono: 
    </td> 
    <td> 
    <?php echo $telefono ?> 
    </td> 
  </tr> 
   
</table> 

</div> 
<br> 
<center><a href="javascript:close()">Cerrar ventana</a> 
</body> 
</html>
  #6 (permalink)  
Antiguo 25/10/2007, 10:55
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Recuperar el valor elegido

Yap... otra cosa es que cuando el form se va a chequear.php pones la variable de sesion pob1 con el valor que quieres rescatar.

Para verlo en tu nueva pagina pon esto:

Código PHP:
//En la primera linea cambia esto:
$ruta=$_POST['pob1'];  
//Por
session_start(); 
$ruta=$_SESSION['pob1']; 
Testea y nos cuentas!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
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 13:51.