Foros del Web » Programando para Internet » PHP »

duda con AJAX y PHP

Estas en el tema de duda con AJAX y PHP en el foro de PHP en Foros del Web. buenas... tengo una duda... tengo el siguiente codigo: Código PHP: <?php function  generaPaises () {     include  'conexion2.php' ;      conectar ();      $consulta = mysql_query ...
  #1 (permalink)  
Antiguo 06/09/2011, 17:26
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 8 meses
Puntos: 1
duda con AJAX y PHP

buenas... tengo una duda... tengo el siguiente codigo:

Código PHP:
<?php
function generaPaises()
{
    include 
'conexion2.php';
    
conectar();
    
$consulta=mysql_query("SELECT id, opcion FROM lista_paises");
    
desconectar();

    
// Voy imprimiendo el primer select compuesto por los paises
    
echo "<select name='paises' id='paises' onChange='cargaContenido(this.id)' style='font-size:10pt; font-family:Verdana;text-align:left;background-color:gainsboro;color:black;'>";
    echo 
"<option value='0'>Elige</option>";
    while(
$registro=mysql_fetch_row($consulta))
    {
        echo 
"<option value='".$registro[0]."'>".$registro[1]."</option>";
    }
    echo 
"</select>";
}
?>






Código PHP:
<?php
// Array que vincula los IDs de los selects declarados en el HTML con el nombre de la tabla donde se encuentra su contenido
$listadoSelects=array(
"paises"=>"lista_paises",
"estados"=>"lista_estados",
"instructor"=>"lista_instructores",
"finicio"=>"finicio",
"ffin"=>"ffin",
"turno"=>"turno",
"dias"=>"dias",
);

function 
validaSelect($selectDestino)
{
    
// Se valida que el select enviado via GET exista
    
global $listadoSelects;
    if(isset(
$listadoSelects[$selectDestino])) return true;
    else return 
false;
}

function 
validaOpcion($opcionSeleccionada)
{
    
// Se valida que la opcion seleccionada por el usuario en el select tenga un valor numerico
    
if(is_numeric($opcionSeleccionada)) return true;
    else return 
false;
}

$selectDestino=$_GET["select"]; $opcionSeleccionada=$_GET["opcion"];

if(
validaSelect($selectDestino) && validaOpcion($opcionSeleccionada))
{
    
$tabla=$listadoSelects[$selectDestino];
    include 
'conexion2.php';
    
conectar();
    
$consulta=mysql_query("SELECT id, opcion FROM $tabla WHERE relacion='$opcionSeleccionada'") or die(mysql_error());
    
desconectar();
    
    
// Comienzo a imprimir el select
    
echo "<select name='".$selectDestino."' id='".$selectDestino."' onChange='cargaContenido(this.id)'>";
    echo 
"<option value='0'>Elige</option>";
    while(
$registro=mysql_fetch_row($consulta))
    {
        
// Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion
        
$registro[1]=htmlentities($registro[1]);
        
// Imprimo las opciones del select
        
echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
    }            
    echo 
"</select>";
}
?>


bueno el codigo funciona perfectamente pero el detalle viene en que este codigo ajax lo estoy usando para sacar unos datos de la base de datos y ponerlo en diferentes select cuando hago el envio de datos para almacenarlos en otra tabla con otros campos resulta que me rellena todos los campos bien excepto los que usan el codigo en ajax, ya que estos mismos los rellena en vez de con el nombre los llena con el identificativo y necesito obligatoriamente que en el campo ese me llene los nombres ya que luego tengo que imprimir una pantalla en la cual deben mostrarse los nombres y los usuarios deben imprimirla.. me pueden ayudar a solucionar esto por favor!?
  #2 (permalink)  
Antiguo 07/09/2011, 01:45
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: duda con AJAX y PHP

Si lo que quieres es que en se envíe lo mismo que se ve, lo único que tienes que hacer es enviar en el value el mismo valor que muestras, ya que:
Código HTML:
Ver original
  1. <option value="esto es lo que se envía">Esto es lo que se ve</option>

Luego, en ambos select tendrás que cambiar el $registro[0] que utilizas para el value, por $registro[1]:
Código PHP:
Ver original
  1. echo "<option value='".$registro[1]."'>".$registro[1]."</option>";

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?

Etiquetas: dinamico, formulario
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 04:16.