Foros del Web » Programando para Internet » PHP »

Buscador PHP + MySQL +Ajax

Estas en el tema de Buscador PHP + MySQL +Ajax en el foro de PHP en Foros del Web. Hola, buenos días a todos. Soy un novato en PHP y me incursioné en unos tutoriales que enseñaban unas bases de PHP para luego hacer ...
  #1 (permalink)  
Antiguo 08/02/2016, 13:04
 
Fecha de Ingreso: noviembre-2015
Mensajes: 12
Antigüedad: 8 años, 5 meses
Puntos: 0
Pregunta Buscador PHP + MySQL +Ajax

Hola, buenos días a todos. Soy un novato en PHP y me incursioné en unos tutoriales que enseñaban unas bases de PHP para luego hacer lo que buscaba: un buscador PHP con base de datos (MySQL) y que dicho buscador tenga la función de autocompletar (mediante Ajax). Estoy aquí porque básicamente no me salió y me gustaría saber qué es lo que tengo mal en el código.

Empecemos desde el principio: tengo hosting de "byethost.com", que soporta PHP y MySQL.

la base de datos que hice de prueba tiene de nombre "taxones", aunque byethost.com me la pone como "b32_17298343_taxones". Es una base de datos sencilla, solo tiene dos columnas ("genero" y "especie") y unas 4 filas con los datos que introduje.

Ahora bien, aquí os paso los códigos:

1) El index.php con el form y el código php:

<?php
include('class.Conexion.php')

if(isset($_POST['buscar'])) {
$db = new Conexion();
$filtro = $db->real_escape_string($_POST['buscar']);
$sql = $db->query("SELECT * FROM taxones WHERE genero LIKE'%$filtro%';");

if($db->rows($sql) > 0 ) {
while ($auto = $db->recorrer($sql)) {
echo $auto['genero'], $auto['especie'];
}
} else {
echo 'No se han encontrado resultados.';
}

} else {
echo '';
}
?>

<!DOCTYPE html>
<html>
<head>
<link href="imagenes/favicon.ico" rel="shortcut icon"/>
<title>Flora montibérica | Herbario Virtual</title>
<link rel="stylesheet" href="css/jquery-ui.min.css"/>
<script src="js/jquery-2.2.0.min.js"></script>
<script src="js/jquery-ui.min.js"></script>
<script>
$('document').ready(function() {
$('#buscar').autocomplete({
source : 'ajax.php'
});
});
</script>
</head>
<body>
<form action="index.php" method="POST"></form>
<label>Buscar:</label><input type="text" name="buscar" id="buscar"></input>
<input type="submit" value="Buscar"></input>
</body>
</html>

2) Lo que tengo dentro de class.Conexion.php

<?php

class Conexion extends mysqli {

public function __construct() {
parent::__construct('localhost','root','b32_172983 43_taxones');
$this->query("SET NAMES 'utf8';");
$this->connect_errno ? die('Error con la conexion') : $x = 'Conectado';
unset($x);
}

public function recorrer($y) {
return mysqli_fetch_array($y);
}

public function rows($y) {
return mysqli_num_rows($y);
}
}
?>

3) lo que tengo de Ajax (que en realidad no lo probé aún, porque no va el buscador):

<?php

include('class.Conexion.php');

class Ajax {

public $buscador;
public function Buscar($a){

$db = new Conexion();
$this->buscador = $db->real_escape_string($a);
$sql = $db->query("SELECT * FROM taxones WHERE genero LIKE'%$this->buscador%';");

while($array = $db->recorrer($sql)){
$resultado[] = $array['genero'];
}

return $resultado;
}
}
$busqueda = new Ajax();
echo json_encode($busqueda->Buscar($_GET['term']));
?>

El problema que me ocurre:

cuando debería verse el buscador:


http://picresize.com/popup.html?images/rsz_112.jpg

se ve solo código (y es cuando introduzco el código php, por eso deduzco qeu debo tener algo mal ahí):

http://picresize.com/popup.html?images/rsz_1.jpg

¡Un saludo gente! ¡Necesito vuestra ayuda!
  #2 (permalink)  
Antiguo 08/02/2016, 17:00
Avatar de stone_neo  
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años
Puntos: 15
Respuesta: Buscador PHP + MySQL +Ajax

Podrias poner algunas imagenes del error que te sale, para poder tener una mejor idea de como ayudarte.
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)
  #3 (permalink)  
Antiguo 08/02/2016, 17:03
 
Fecha de Ingreso: noviembre-2015
Mensajes: 12
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Buscador PHP + MySQL +Ajax

Cita:
Iniciado por stone_neo Ver Mensaje
Podrias poner algunas imagenes del error que te sale, para poder tener una mejor idea de como ayudarte.
Hola! lo puse al final del post! ¡Un saludo!
  #4 (permalink)  
Antiguo 08/02/2016, 17:05
 
Fecha de Ingreso: noviembre-2015
Mensajes: 12
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Buscador PHP + MySQL +Ajax

esto es lo que me sale:

http://floramontiberica.byethost32.com/1.jpg
  #5 (permalink)  
Antiguo 08/02/2016, 17:06
 
Fecha de Ingreso: noviembre-2015
Mensajes: 12
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Buscador PHP + MySQL +Ajax

cuando debería poder en teoría escribir sobre un buscador y que me tire un resultado:

http://floramontiberica.byethost32.com/2.jpg
  #6 (permalink)  
Antiguo 09/02/2016, 03:57
 
Fecha de Ingreso: abril-2015
Mensajes: 189
Antigüedad: 9 años
Puntos: 14
Respuesta: Buscador PHP + MySQL +Ajax

La conexion que has puesto es la que tienes de verdad ? Si tienes contratado un hosting , estas seguro de que en la conexion debes poner localhost ?

Eso suele ser cuando estas trabajando el local con el Xampp o similares , ahi normalmente pones el servidor que te pasa el hosting.
  #7 (permalink)  
Antiguo 09/02/2016, 07:11
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Buscador PHP + MySQL +Ajax

Cita:
Iniciado por javy7v Ver Mensaje
La conexion que has puesto es la que tienes de verdad ? Si tienes contratado un hosting , estas seguro de que en la conexion debes poner localhost ?

Eso suele ser cuando estas trabajando el local con el Xampp o similares , ahi normalmente pones el servidor que te pasa el hosting.
en los hosting también se utiliza localhost, recuerda que localhost es huésped local que equivale al sistema en el que tienes montada la pagina, si coloca localhost le va a funcionar igual tanto en local como en hosting, lo que debe ser exacto son los datos de acceso y nombre de la base que deben ser los que te indica el sistema al momento de crearlos en tu panel. Te coloco un ejemplo de uno que empleo en una de mis aplicaciones:

Código PHP:
Ver original
  1. $usuario = "BASE_USER";
  2. $pass = "BASE_PASS";
  3. $host = "localhost";
  4. $base = "BASE_NOMBRE";
  5.  
  6. $db = new MySQLi($host, $usuario, $pass, $base);
  7. if($db->connect_error) {
  8.     die('Error de conexion ('.$db->connect_errno.')'
  9.         .$db->connect_errno);
  10. }
__________________
[email protected]
HITCEL
  #8 (permalink)  
Antiguo 09/02/2016, 17:38
 
Fecha de Ingreso: noviembre-2015
Mensajes: 12
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Buscador PHP + MySQL +Ajax

Cita:
Iniciado por xfxstudios Ver Mensaje
en los hosting también se utiliza localhost, recuerda que localhost es huésped local que equivale al sistema en el que tienes montada la pagina, si coloca localhost le va a funcionar igual tanto en local como en hosting, lo que debe ser exacto son los datos de acceso y nombre de la base que deben ser los que te indica el sistema al momento de crearlos en tu panel. Te coloco un ejemplo de uno que empleo en una de mis aplicaciones:

Código PHP:
Ver original
  1. $usuario = "BASE_USER";
  2. $pass = "BASE_PASS";
  3. $host = "localhost";
  4. $base = "BASE_NOMBRE";
  5.  
  6. $db = new MySQLi($host, $usuario, $pass, $base);
  7. if($db->connect_error) {
  8.     die('Error de conexion ('.$db->connect_errno.')'
  9.         .$db->connect_errno);
  10. }
Vale, ahora me fijaré bien si tengo los nombres correctos y te digo algo, perop a priori en los códigos que pasé entonces no has visto nada raro? ¡Un saludo!

Etiquetas: ajax, buscador, html, mysql, select, sql
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 13:06.