Foros del Web » Programando para Internet » PHP »

No corre en IE, si en firefox ¿por que?

Estas en el tema de No corre en IE, si en firefox ¿por que? en el foro de PHP en Foros del Web. Hola que tal, tengo una lista desplegable desde tomo una valor para mostrar desde una base de datos. El problema es que la etiqueta <option>elija ...
  #1 (permalink)  
Antiguo 03/04/2008, 18:22
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 9 meses
Puntos: 0
Exclamación No corre en IE, si en firefox ¿por que?

Hola que tal, tengo una lista desplegable desde tomo una valor para mostrar desde una base de datos. El problema es que la etiqueta <option>elija una opcion</option> no la toma en IE , pero si en firefox.

Tampoco me muestra una columna en donde tiene que aparecer una foto, y en firefox si lo hace. ¿alguien sabe como solucionar el asunto?

este es el codigo de la lista desplegable

Código HTML:
<?php require_once('Connections/seleccion.php');

mysql_select_db($database_seleccion, $seleccion);
//selecciona categoria arte

$sql=mysql_query("SELECT DISTINCT arte FROM registro",$seleccion);
?>

<select name="lista"  onchange="pedirDatos()" <option>Elija una opcion</option >//esta no la toma IE
<?php
while($row = mysql_fetch_array($sql)){
	
	echo "<option>".$row['arte']."</option>";
}
?>
</select> 
y este es el codigo de la consulta en donde no me muestra lo que sale

Código HTML:
<table border="1" sumary="Listado de patentes y seguros">
<tr>
<th>Nombre</th>
<th>Apellido</th>
<th>Telefono</th>
<th>Foto</th>
</tr>
<?php require_once('Connections/seleccion.php');
mysql_select_db($database_seleccion, $seleccion);
//capturar el campo arte
$nom=$_POST['arte'];
//seleccionar los datos relacionados con arte

$sql=mysql_query("SELECT * FROM registro WHERE arte='".$nom."'",$seleccion);?>
<?php while ($row = mysql_fetch_array($sql)) { ?>
    <tr>
      <td><a href="detalle.php?recordID=<?php echo $row['id']; ?>"><?php echo $row['nombre']; ?></a></td>
      <td><?php echo $row['apellido']; ?>&nbsp; </td>
      <td><?php echo $row['telefono']; ?>&nbsp; </td>
      <td><img src="<?php echo $row['foto']; ?>" width="50px" height="50px"/>&nbsp; </td>
      </tr>
    <?php } ?> 

</table> 
Alguna luz?
  #2 (permalink)  
Antiguo 03/04/2008, 18:42
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: No corre en IE, si en firefox ¿por que?

Es que estás creando mal el <select> en tu formulario. El <option> es tag aparte del <select>:

Código HTML:
<select name="lista"  onchange="pedirDatos()">
<option>Elija una opcion</option>
<?php
while($row = mysql_fetch_array($sql)){
 
    echo "<option>".$row['arte']."</option>";
}
?>
</select> 
Saludos,
  #3 (permalink)  
Antiguo 03/04/2008, 18:51
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: No corre en IE, si en firefox ¿por que?

Si gracias, me di cuenta de eso, el problema es que aun no logro que me muestre los datos de la consulta. Solo me muestra esto
Código HTML:
<th>Nombre</th>
<th>Apellido</th>
<th>Telefono</th>
<th>Foto</th> 
pero NO me meustra la consulta:

Código HTML:
<?php while ($row = mysql_fetch_array($sql)) { ?>
    <tr>
      <td><a href="detalle.php?recordID=<?php echo $row['id']; ?>"><?php echo $row['nombre']; ?></a></td>
      <td><?php echo $row['apellido']; ?>&nbsp; </td>
      <td><?php echo $row['telefono']; ?>&nbsp; </td>
      <td><img src="<?php echo $row['foto']; ?>" width="50px" height="50px"/>&nbsp; </td>
      </tr>
    <?php } ?> 

</table> 
hay que hacerlo de alguna manera especial?
  #4 (permalink)  
Antiguo 03/04/2008, 18:59
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: No corre en IE, si en firefox ¿por que?

Si no te muestra nada (nisiquiera lo tags html que tienes dentro del while()) es que tu consulta no está devolviendo 0 filas. Puedes ver cuantos registros devuelve tu consulta usando la función mysql_num_rows()

Un saludo,
  #5 (permalink)  
Antiguo 03/04/2008, 19:38
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: No corre en IE, si en firefox ¿por que?

no es eso, pòrque en firefox Si funciona, si genera la consulta, el problema es con IExplorer, por eso pregunto si hay que hacerlo de otra manera.

Saludos
  #6 (permalink)  
Antiguo 04/04/2008, 08:23
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: No corre en IE, si en firefox ¿por que?

Es que no es problema de cliente/navegador. El servidor envía el contenido generado al cliente y éste lo interpreta (En la interpretación es dodne los navegadores difieren), pero los códigos fuentes que les llegan a cada navegador son los mimos (A menos que del lado de servidor identifiques el tipo de navegador y le envías un contenido personalizado a cada uno).

Por otro lado, falta definir los value="" de tus tag <option>. Hay sí podría haber diferencia en la forma en que los distintos navegadores puedan enviar los datos de ese formulario. Agrega ese parámetro que te falta.

Un saludo,
  #7 (permalink)  
Antiguo 04/04/2008, 11:08
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: No corre en IE, si en firefox ¿por que?

Tmpoco es eso, tengo un procedimiento en el que eliges en la lista desplegable el valor que quierese ver, este es enviado a la pagina que ejecuta la consulta y via ajax es mostrado en un div.

Insisto, en firefox funciona a la perfeccion, pero en IE no funciona.
  #8 (permalink)  
Antiguo 04/04/2008, 12:03
Avatar de farra  
Fecha de Ingreso: marzo-2008
Ubicación: Aqui estoy
Mensajes: 574
Antigüedad: 16 años, 8 meses
Puntos: 20
De acuerdo Re: No corre en IE, si en firefox ¿por que?

<option>elija una opcion</option> // INCORRECTO...!

<option value="valor">elija una opcion</option> // CORRECTO..!
  #9 (permalink)  
Antiguo 04/04/2008, 12:27
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: No corre en IE, si en firefox ¿por que?

Nones, el problema no es con el select, eso lo corregi. Insisto corre en todos los navegadores, safari, opera firefox, ¡hasta bluto! pero a la hora de hacerlo en IE no.

ahora si es el select., sorry porque no entiendo lo que me dicen (soy nuevo en esto, jeje)

miren, con esto tomo el valor de la base de datos:

Código HTML:
<?php require_once('Connections/seleccion.php');

mysql_select_db($database_seleccion, $seleccion);
//seleccionamos solo el nombre de los clientes

$sql=mysql_query("SELECT DISTINCT arte FROM registro",$seleccion);
?>

<select name="lista"  onchange="pedirDatos()" ><option value="">Elija una opcion</option >
<?php
while($row = mysql_fetch_array($sql)){
	 
	echo "<option>".$row['arte']."</option>";
}
?>
</select> 
este valor lo envio a la pagina que ejecuta la consultay que tiene este codigo:

Código HTML:
<table border="0" >
<tr>
<th>Nombre</th>
<th>Apellido</th>
<th>Telefono</th>
<th>Especifico</th>
<th>Foto</th>
</tr>
<?php require_once('Connections/seleccion.php');
mysql_select_db($database_seleccion, $seleccion);
//capturar el campo arte
$nom=$_POST['arte'];
//seleccionar los datos relacionados con arte
$sql=mysql_query("SELECT * FROM registro WHERE arte='".$nom."'",$seleccion);?>
<?php  while ($row = mysql_fetch_assoc($sql))  { ?>
    <tr>
      <td><a href="detalle.php?recordID=<?php echo $row['id']; ?>"><?php echo $row['nombre']; ?></a></td>
      <td><?php echo $row['apellido']; ?>&nbsp; </td>
      <td><?php echo $row['telefono']; ?>&nbsp; </td>
      <td><?php echo $row['especifico']; ?>&nbsp; </td>
      <td><img src="<?php echo $row['foto']; ?>" width="50" height="50"/>&nbsp; </td>
      </tr>
   
    <?php } ?> 
</table> 
y este resultado se muestra en la siguiente pagina:

Código HTML:
<html>
<head>
<title>Consulta de datos</title>
<script language="JavaScript" type="text/javascript" src="ajax.js"></script>
</head>
<body>
<p>Este ejemplo muestra como realizar una consulta de los registros de una tabla usando un control de lista.</p>
<form name="formulario" action="">
<?php
	include('lista.php');
?>
</form>
<div id="resultado" style="border:1px solid #FFFFFF; color:#000099;width:400px;">
</div>
</body>
</html> 
el resultado dentro del div es procesado por este codigo:

Código HTML:
function objetoAjax(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
		   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (E) {
			xmlhttp = false;
  		}
	}

if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

function pedirDatos(){
	//donde se mostrará el resultado
	divResultado = document.getElementById('resultado');
	//tomamos el valor de la lista desplegable
	nom=document.formulario.lista.value;

//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usamos el medoto POST
	//archivo que realizará la operacion
 //datoscliente.php
	ajax.open("POST", "datosclientes.php",true);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar resultados en esta capa
			divResultado.innerHTML = ajax.responseText
		}
	}
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
 ajax.send("arte="+nom)
}
si alguien puede ayudarme plis!!
  #10 (permalink)  
Antiguo 04/04/2008, 20:31
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: No corre en IE, si en firefox ¿por que?

Prueba poniendo

Código PHP:
echo "<option value=\"$row[arte]\">$row[arte]</option>"
Vamos, que nada pierdes con intentarlo.

Saludos,
  #11 (permalink)  
Antiguo 07/04/2008, 15:06
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: No corre en IE, si en firefox ¿por que?

SIIIIIII!!!!!

no entendia bien lo de value="" jejeje.

funciona a la perfeccion, gracias okram
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 21:25.