Dreamweaver - Buscador con jquery autocomplete

   
Vista:

Buscador con jquery autocomplete

Publicado por Daniel daniresa@yahoo.es (5 intervenciones) el 23/12/2015 23:25:32
Muy buenas cracks!
Pues lo que debe ser sencillo me esta costando horrores, resulta que he montado el típico buscador para una web
Formulario, cuadro de texto con id y tipo GET... Y en la pagina de resultados funciona perfecto. Me encuentra lo que quiero de una base de datos.

Ahora mi problema. Si ese cuadro de texto es un autocomplete de jquery ui. NO me muestra absolutamente nada. La lista desplegable la hace, pero en cuanto elijo algo y doy a buscar... La pagina de resultados ya no muestra nada.

A alguien más le pasa? Me estoy volviendo loco buscado
Uso Dreamweaver cc 2015. Un saludo y gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Buscador con jquery autocomplete

Publicado por xve (336 intervenciones) el 24/12/2015 11:33:43
Hola Daniel, entiendo que es algun problema o en el formulario HTML o en la consulta SQL...

Nosotros hemos utilizar muchas veces jquery-ui y no hemos tenido ese problema.

Nos puedes mostrar el codigo HTML y el código que recibe la petición?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Buscador con jquery autocomplete

Publicado por Daniel (5 intervenciones) el 27/12/2015 20:56:19
hola xve:

Gracias por escribir tan pronto, en estas fechas no he estado en casa y no podía enviar el código.
Lo que estoy queriendo hacer es una intranet para un instituto. Tengo una pagina principal login.php donde los usuarios conectan a través de una base de datos; si el logueo es correcto acceden a perfil.php donde pueden acceder a otras páginas. Hasta aquí todo correcto y sencillo.

Quiero poder buscar a alumnos por su nombre, así que he creado otra base de datos. Desde perfil.php he creado un formulario con un autocomplete de jQuery. Queda bonito puesto que me va ajustando sugerencias según escribo el nombre del alumno. Selecciono el alumno que quiero y... botón buscar!

Aqui mi problema. No soy capaz de que al darle a buscar ese alumno aparezca en mi nueva página... que he llamado consulta_alumnado.php
no se si es un error al hacer el juego de registros, si me he saltado algún paso... o si hay que preparar la nueva página de algún modo.

Soy capaz de hacerlo sin jQuery, por eso me vuelve loco... aquí mis códigos, con todo :)





//no puedo poner códigos en el mensaje... van en archivo zip

y las imágenes de como va..

Mil gracias de nuevo!!

Captura-de-pantalla-2015-12-27-a-las-18.40.33

Captura-de-pantalla-2015-12-27-a-las-18.41.04
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Buscador con jquery autocomplete

Publicado por xve (336 intervenciones) el 28/12/2015 07:31:07
Hola Daniel, he revisado el código, y veo que en el archivo perfil.php hay un formulario donde haces una búsqueda, y el campo de dicha búsqueda se llama "buscar_alumno", pero en la pagina consulta_alumnado.php, no veo en ningún lugar donde utilizas dicha variable¿?

Donde intentas hacer la búsqueda? o no he entendido muy bien cual es tu problema...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Buscador con jquery autocomplete

Publicado por Daniel (5 intervenciones) el 28/12/2015 09:16:30
cierto... eso es porque entiendo que el error lo tengo por ahí y he hecho ya tantas pruebas que mandé el archivo sin la vinculación. obviamente falta esta parte en el php de "consulta_alumnado.php"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
$colname_Recordset1 = "-1";
if (isset($_GET['buscar_alumno'])) {
  $colname_Recordset1 = $_GET['buscar_alumno'];
}
mysql_select_db($database_mamp, $mamp);
$query_Recordset1 = sprintf("SELECT * FROM `1eso` WHERE Alumno LIKE %s ORDER BY Alumno ASC", GetSQLValueString("%" . $colname_Recordset1 . "%", "text"));
$Recordset1 = mysql_query($query_Recordset1, $mamp) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
 
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }
 
  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
 
  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}

Aun con eso sigue igual
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Buscador con jquery autocomplete

Publicado por Daniel (5 intervenciones) el 28/12/2015 11:31:36
Simplifico el ejemplo;

he aqui un código con un buscador cuyo campo de texto es un autocomplete jQuery:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<link href="../jQueryAssets/jquery.ui.core.min.css" rel="stylesheet" type="text/css">
<link href="../jQueryAssets/jquery.ui.theme.min.css" rel="stylesheet" type="text/css">
<link href="../jQueryAssets/jquery.ui.autocomplete.min.css" rel="stylesheet" type="text/css">
<link href="../jQueryAssets/jquery.ui.menu.min.css" rel="stylesheet" type="text/css">
<script src="../jQueryAssets/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="../jQueryAssets/jquery.ui-1.10.4.autocomplete.min.js" type="text/javascript"></script>
<form name="form1" method="get" action="../prueba.php">
  <label for="buscar">buscar:</label>
  <input type="text" id="Autocomplete1">
  <input type="submit" name="submit" id="submit" value="Enviar">
</form>
<p>&nbsp;</p>
<script type="text/javascript">
$(function() {
	$( "#Autocomplete1" ).autocomplete({
		source:["daniel", "isabel", "manuel", "andres"]
	});
});
</script>

los nombres salen en la lista desplegable. Al darle a buscar debe aparecer en otra página de resultados vinculada a una base de datos que contiene esos nombres. No aparece el nombre que seleccioné. SI LO HAGO SIN JQUERY CON UN CAMPO DE TEXTO NORMAL SI FUNCIONA
:

el código de la pagina de resultados:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php require_once('../Connections/mamp.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }
 
  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
 
  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}
 
$colname_Recordset1 = "-1";
if (isset($_GET['Autocomplete1'])) {
  $colname_Recordset1 = $_GET['Autocomplete1'];
}
mysql_select_db($database_mamp, $mamp);
$query_Recordset1 = sprintf("SELECT * FROM prueba WHERE nombre LIKE %s", GetSQLValueString("%" . $colname_Recordset1 . "%", "text"));
$Recordset1 = mysql_query($query_Recordset1, $mamp) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
hola <?php echo $row_Recordset1['nombre']; ?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Buscador con jquery autocomplete

Publicado por xve (336 intervenciones) el 28/12/2015 16:48:08
Hola Daniel, viendo este ultimo código, en esta linea:
1
<input type="text" id="Autocomplete1">
te falta poner el nombre...
1
<input type="text" id="Autocomplete1" name="Autocomplete1">

Cuando hayas solucionado esto, estaría bien que hicieras un:
1
echo $query_Recordset1;


El resto visto por encima parece correcto...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Buscador con jquery autocomplete

Publicado por Daniel (5 intervenciones) el 28/12/2015 17:31:57
Oleeeeee

Ya sabia yo que era una tontería... Esto me pasa por no saber programar, me hubiese dado cuenta al escribir el código. La culpa es de Dreamweaver jejeje... que al insertar el jQuery de Autocomplete le falta por poner el nombre como bien dices y por tanto el otro archivo no encuentra variable. Ojalá esto sirva a alguno como yo que como un pardillo use ratón para todo y no el teclado.

Otro fallo que he conseguido por mi mismo es que la ruta del formulario a donde debe dirigirse el resultado lo tenia como "../consulta_alumnado.php" por lo tanto la ruta del archivo era incorrecta y estaba haciendo modificaciones en otro archivo... para volverme loco!!

Muchísimas gracias una vez mas xve, has dado en el clavo

Prometo volver :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar