Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/03/2010, 09:05
harvestmoon
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 9 meses
Puntos: 15
Pregunta Enter no funciona IE solo al presionar boton enviar

hola que tal buen dia pues he estado basandome en el buscador de pannino para resaltar palabras pero me he topado que en IE no funciona lo probe el firefox y en opera
y todo bien pero en IE nada mas no busca es como si no hiciera nada en submit les pongo el codigo
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link rel="shortcut icon" href="CyAicon.ico" type="image/x-icon"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>CyA Net.- Intranet de Cámara y Asociados. Bienvenidos.</title>
</head>
<body>
<?php 
    $hostname_connBlog 
"localhost";             // host de la base de datos
$database_connBlog "prueba";         // nombre de la base de datos
$username_connBlog "root";                 // nombre de usuario
$password_connBlog "camila";                     // contraseña
$connBlog mysql_pconnect($hostname_connBlog$username_connBlog$password_connBlog) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_connBlog$connBlog); 
     
    
// Creamos una función que resaltará todas las palabras que coincidan con la búsqueda realizada. Gracias a panino5001 de forosdelweb.com por ayudarme a optimizarla 
    
if(!function_exists('str_ireplace')) { 
    function 
str_ireplace($search,$replace,$subject) { 
    
$search preg_quote($search"/"); 
    return 
preg_replace("/".$search."/i"$replace$subject); } } 
     
    function 
resaltar($palabra$texto) { 
        
$aux=$reemp=str_ireplace($palabra,'%s',$texto); 
        
$veces=substr_count($reemp,'%s'); 
        if(
$veces==0)return $texto
        
$palabras_originales=array(); 
        for(
$i=0;$i<$veces;$i++){ 
              
$palabras_originales[]='<strong>'.substr($texto,strpos($aux,'%s'),strlen($palabra)).'</strong>'
              
$aux=substr($aux,0,strpos($aux,'%s')).$palabra.substr($aux,strlen(substr($aux,0,strpos($aux,'%s')))+2); 
        } 
        return 
vsprintf($reemp,$palabras_originales); 
  }  
     
    
// iniciamos el proceso de búsqueda 
    
if (isset($_POST["buscar"])) { 
        if(
$_POST['palabra'] == '') { 
            echo 
"No has ingresado ninguna palabra a buscar <a href='javascript:history.back()'>Regresar</a>"
        }else { 
            
$tabla "buscador"// aquí pones el nombre de la tabla a la que deseas consultar 
            
$campo "texto"// aquí pones el nombre del campo de la tabla a la que deseas consultar 
             
            // quitamos cualquier código malicioso de $_POST['palabra'] 
            
$palabra stripslashes($_POST['palabra']); 
            
$palabra strip_tags($palabra); 
             
            
// hacemos la consulta a la base de datos según la palabra enviada 
            
$query mysql_query("SELECT * FROM $tabla WHERE $campo LIKE '%".$palabra."%'"); 
            
$mostrar mysql_num_rows($query); // obtenemos la cantidad de coincidencias encontradas 
            
if(mysql_num_rows($query) == "0") { 
                echo 
"No hay coincidencias encontradas para <strong>".$palabra."</strong> <a href='javascript:history.back()'>Regresar</a>"
            }else { 
?> 
                Se han encontrado <strong><?=$mostrar?></strong> coincidencias para <strong><?=$palabra?></strong> 
<?php             
                
while($datos mysql_fetch_array($query)) {         
                    
$str $datos["link"]; 
?>             
                <ul> 
                    <li><a href="<?=resaltar($palabra$str)?>"><?php echo $datos["titulo"];?></a></li> 
                </ul> 
<?php 
                

            } 
        } 
    }else { 
?> 
    <form action="buscar.php" method="post"> 
        <input name="palabra" type="text" /> 
        <input name="buscar" type="submit" value="Enviar" /> 
    </form> 
<?php 

    

?>
la verdad no se que pueda ser he cambiado nombre de variables lo he hecho paso a paso
he desblkeado todo tipo de seguridad del IE 8
uso windows 7 espero me echen una luz saludos!!

me parece que no entra al if siguiente
Cita:
if (isset($_POST["buscar"])) {
if($_POST["palabra"] == '') {
echo "No has ingresado ninguna palabra a buscar <a href='javascript:history.back()'>Regresar</a>";
}else {
echo $_POST["palabra"];
cuando no le pongo nada si me manda el mensaje de no has ingresado ninguna...
pero si no es vacia no me imprime lo que tiene
}else {
echo $_POST["palabra"];

le he aumentado esto al form
Cita:
enctype="multipart/form-data">
pero tampoco me hace el resalto
aclaro esto solo es con IE 8 con opera y firefox funciona muy bien
espero sus comentarios gracias

pues sucede que si le doy click al boton buscar si funciona en IE
pero no cuando le doy enter ??
alguna idea?
es decir si necesito que se ejecute el script al darle enter pues los usuario estan mas acostumbrados a eso que a darle click al boton buscar
por favor alguna ayuda?

pues he puesto un campo oculto con el valor de submit y nada :(
solo me funciona cuando presiono el boton
y me gustaria q se enviara cuando presiono enter
alguna idea? gracias!!
:D

hola alguien tiene idea? de porque no funciona la tecla enter para hacer submit del formulario?
por favor ayuda gracias
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D

Última edición por GatorV; 30/03/2010 a las 08:53