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