Foros del Web » Programando para Internet » PHP »

Tengo Problemas con este buscador

Estas en el tema de Tengo Problemas con este buscador en el foro de PHP en Foros del Web. Este es un archivo Código PHP: < html >  < body >  < form method = "POST"  action = "buscador.php" >  < strong > Palabra clave :</ ...
  #1 (permalink)  
Antiguo 19/05/2004, 17:24
 
Fecha de Ingreso: mayo-2004
Ubicación: Ocotlan
Mensajes: 27
Antigüedad: 19 años, 10 meses
Puntos: 0
Tengo Problemas con este buscador

Este es un archivo

Código PHP:
<html
<
body
<
form method="POST" action="buscador.php"
<
strong>Palabra clave:</strong> <input type="text" name="T1" size="20"><br><br
<
input type="submit" value="Buscar" name="buscar"
</
form
</
body
</
html
Y este es el otro en PHP

Código PHP:
<html> 
<body> 
  
<?php 
if (!isset($buscar)){ 
      echo 
"Debe especificar una cadena a bucar"
      echo 
"</html></body> \n"
      exit; 

$link mysql_connect("localhost""root"""); 
mysql_select_db("prueba"$link); 
$result mysql_query("SELECT * FROM alumnos WHERE nombre LIKE '%$buscar%' ORDER BY nombre"$link);
if (
$row mysql_fetch_array($result)){
      echo 
"<table border = '1'> \n"
//Mostramos los nombres de las tablas 
echo "<tr> \n"
while (
$field mysql_fetch_field($result)){ 
            echo 
"<td>$field->name</td> \n"

      echo 
"</tr> \n"
do { 
            echo 
"<tr> \n"
            echo 
"<td>".$row["nombre"]."</td> \n"
            echo 
"<td>".$row["especialidad"]."</td> \n"
            echo 
"<td>".$row["turno"]."</td> \n"
            echo 
"</tr> \n"
      } while (
$row mysql_fetch_array($result)); 
            echo 
"</table> \n"
} else { 
echo 
"¡ No se ha encontrado ningún registro !"

?> 
  
</body> 
</html>

El problema es que no me trae la consulta, me dice que no existe, e elemento, siendo que esta dentro de la base de datos
  #2 (permalink)  
Antiguo 19/05/2004, 17:48
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 20 años, 8 meses
Puntos: 2
En evz de usar $buscar en buscador.php

Recogelas asi $_POST['buscar']

Acostumbrate al uso de las variables superglobales $_POST, $_GET, $_SESSION, $_COOKIES, $_SERVER, te evitaras muchos dolores de cabeza.

Y tus scripts funcionaran, sin depender de que la directiva register_globals este on u off .

Saludos
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #3 (permalink)  
Antiguo 19/05/2004, 18:03
 
Fecha de Ingreso: mayo-2004
Ubicación: Ocotlan
Mensajes: 27
Antigüedad: 19 años, 10 meses
Puntos: 0
Lo hice y me surgio otro problema
me dice que el registro no existe, y modifique algunos parametros, y me dice que variable indefenida, buscar, pero si me muestra el registro
  #4 (permalink)  
Antiguo 19/05/2004, 18:07
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 20 años, 8 meses
Puntos: 2
muestranos el error pues
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #5 (permalink)  
Antiguo 19/05/2004, 18:10
 
Fecha de Ingreso: mayo-2004
Ubicación: Ocotlan
Mensajes: 27
Antigüedad: 19 años, 10 meses
Puntos: 0
Ya no sale error, no se que hice, pero ya no salio, ahora no me muestra nada

y asi esta el codigo del buscador.PHP, el otro quedo =


Código PHP:
<html> 
<body> 
  
<?php 
if ($_POST['buscar']==""){ 
      echo 
"Debe especificar una cadena a buscar"
      echo 
"</html></body> \n"
      exit; 

$link mysql_connect("localhost""root"""); 
mysql_select_db("prueba"$link); 
$result mysql_query("SELECT * FROM alumnos WHERE nombre LIKE '%$buscar%' ORDER BY nombre"$link);
if (
$row mysql_fetch_array($result)){
      echo 
"<table border = '1'> \n"
//Mostramos los nombres de las tablas 
echo "<tr> \n"
while (
$field mysql_fetch_field($result)){ 
            echo 
"<td>$field->name</td> \n"

      echo 
"</tr> \n"
do { 
            echo 
"<tr> \n"
            echo 
"<td>".$row["nombre"]."</td> \n"
            echo 
"<td>".$row["especialidad"]."</td> \n"
            echo 
"<td>".$row["turno"]."</td> \n";  
            echo 
"</tr> \n"
      } while (
$row mysql_fetch_array($result)); 
            echo 
"</table> \n"
} else { 
echo 
"¡ No se ha encontrado ningún registro !"

?> 
  
</body> 
</html>
  #6 (permalink)  
Antiguo 19/05/2004, 18:11
 
Fecha de Ingreso: mayo-2004
Ubicación: Ocotlan
Mensajes: 27
Antigüedad: 19 años, 10 meses
Puntos: 0
Muestra solo el ultimo mensaje

"¡ No se ha encontrado ningún registro !"
  #7 (permalink)  
Antiguo 19/05/2004, 18:14
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 20 años, 8 meses
Puntos: 2
Usa las variables superglobales, tal como te lo indico alla arriba, lee mas arriba, y veras que ahi esta la solucion
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #8 (permalink)  
Antiguo 19/05/2004, 18:19
 
Fecha de Ingreso: mayo-2004
Ubicación: Ocotlan
Mensajes: 27
Antigüedad: 19 años, 10 meses
Puntos: 0
Ya esta y quedo asi.....

buscador.html

Código PHP:
<html
<
body
<
form method="POST" action="buscador.php"
<
strong>Palabra clave:</strong> <input type="text" name="buscar" size="20"><br><br
<
input type="submit" value="Buscar" name="buscar"><br
</
form
</
body
</
html
Buscador.php

Código PHP:
<html> 
<body> 
  
<?php 
if ($_POST['buscar'] = ""){ 
      echo 
"Debe especificar una cadena a buscar"
      echo 
"</html></body> \n"
      exit; 

$link mysql_connect("localhost""root"""); 
mysql_select_db("prueba"$link); 
$result mysql_query("SELECT * FROM alumnos WHERE nombre LIKE '%$buscar%' ORDER BY nombre"$link);
if (
$row mysql_fetch_array($result)){
      echo 
"<table border = '1'> \n"
//Mostramos los nombres de las tablas 
echo "<tr> \n"
while (
$field mysql_fetch_field($result)){ 
            echo 
"<td>$field->name</td> \n"

      echo 
"</tr> \n"
do { 
            echo 
"<tr> \n"
            
//echo "<td>".$row["id"]."</td> \n"; 
            
echo "<td>".$row["nombre"]."</td> \n"
            echo 
"<td>".$row["especialidad"]."</td> \n"
            echo 
"<td>".$row["turno"]."</td> \n"
            
//echo "<td><a href='mailto:".$row["email"]."'>".$row["email"]."</a></td> \n"; 
            
echo "</tr> \n"
      } while (
$row mysql_fetch_array($result)); 
            echo 
"</table> \n"
} else { 
echo 
"¡ No se ha encontrado ningún registro !"

?> 
  
</body> 
</html>
  #9 (permalink)  
Antiguo 19/05/2004, 18:29
 
Fecha de Ingreso: mayo-2004
Ubicación: Ocotlan
Mensajes: 27
Antigüedad: 19 años, 10 meses
Puntos: 0
Gracias Nuevamente Gerald, 1000 Gracias
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 00:03.