Foros del Web » Programando para Internet » PHP »

ayuda... una simple busqueda no me sale...

Estas en el tema de ayuda... una simple busqueda no me sale... en el foro de PHP en Foros del Web. saludos... Estoy tratando de hacer la tipica de un buscador. Tengo 2 archivos, consulta.htm y busca.php acontinuacion lo que tengo en cada uno CONSULTA.HTM Código: ...
  #1 (permalink)  
Antiguo 06/02/2005, 16:38
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
ayuda... una simple busqueda no me sale...

saludos...
Estoy tratando de hacer la tipica de un buscador. Tengo 2 archivos, consulta.htm y busca.php

acontinuacion lo que tengo en cada uno

CONSULTA.HTM
Código:
<html>
<head>
<title>Ingrese el titulo</title>
</head>
<body>
<H1>Ingrese el Titulo</H1>
<FORM ACTION="busca.php">
<INPUT TYPE="TEXT" NAME="palabra">
<INPUT TYPE="SUBMIT" NAME="Buscar">
</FORM>
</body>
</html>
-----------------------------------------------------------------------
BUSCA.PHP
Código:
<?
include("conec.php");
$link=Conectarse();

$result=mysql_query($sql,$conexio);

// Si hay resultados crea una tabla y los muestra
if ($row= mysql_fetch_array($result))
{
echo "<TABLE BORDER='0'>";
DO
{
echo "$row["titulo"]";                 //  <----Linea 16
}
WHILE ($row=mysql_fetch_array($result));
echo "</TABLE>";
}
// mysql_close ($conexio);
mysql_close($link);
?>
-------------------------------------------------------------

dentro del conection tengo el scrip a la cual se conecta a la base de datos, y eso lo tengo bien hecho, aca una prueba
http://www.ctk.cl/byzard/php/

el problema surge en el busca.php al cargar esa parte me sale un error, de este tipo>
Código:
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' 
in /var/www/html/virtual/ctk.cl/www/byzard/php/busca.php on line 16
saben cual es el problema?
aca mas info, tengo una base de datos llamado byzbank, y una tabla llamada anime (id, titulo, categoria, subtitulo)

bueno espero que me puedan ayudar, que no cacho q onda puede ser.

nos vemos

Última edición por byzard; 06/02/2005 a las 16:42
  #2 (permalink)  
Antiguo 06/02/2005, 16:58
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 14 años, 10 meses
Puntos: 10
es:

echo $row["titulo"]; <- sin las comillas...
__________________
oohh... quisiera ser godines!!!
  #3 (permalink)  
Antiguo 06/02/2005, 18:16
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por safe
es:

echo $row["titulo"]; <- sin las comillas...
lo pongo sin comilla, pero me aparece error, cual es el problem?

Código:
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /var/www/html/virtual/ctk.cl/www/byzard/php/busca.php on line 8

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/html/virtual/ctk.cl/www/byzard/php/busca.php on line 11
  #4 (permalink)  
Antiguo 06/02/2005, 18:39
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
ahora puse a cargar la linea de arriba para conectarse y no ocupe el conectarse.php q tenia...

Código:
<?
 $conexio = mysql_connect("xxxxxx", "xxxxx", "xxxxx");
 mysql_select_db ("xxxxx", $conexio) OR die ("No se puede conectar");
// include("conec.php");
// $link=Conectarse();

$result=mysql_query($sql,$conexio);

// Si hay resultados crea una tabla y los muestra
if ($row= mysql_fetch_array($result))
{
echo "<TABLE BORDER='0'>";
DO
{
echo $row["titulo"];
}
WHILE ($row=mysql_fetch_array($result));
echo "</TABLE>";
}
mysql_close ($conexio);
// mysql_close($link);
?>
pero me sale este error>
Código:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL
 result resource in /var/www/html/virtual/ctk.cl/www/byzard/php/busca.php on line 11
la linea 11 es > if ($row= mysql_fetch_array($result))

ayuda.....

Última edición por byzard; 06/02/2005 a las 18:41
  #5 (permalink)  
Antiguo 06/02/2005, 19:06
 
Fecha de Ingreso: febrero-2005
Mensajes: 143
Antigüedad: 12 años, 10 meses
Puntos: 0
prueba a ponerlo junto

while($row=mysql_fetch_array($result))
  #6 (permalink)  
Antiguo 06/02/2005, 19:25
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por Chete
prueba a ponerlo junto

while($row=mysql_fetch_array($result))
nop igual me sale el error
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/html/virtual/ctk.cl/www/byzard/php/busca.php on line 11
  #7 (permalink)  
Antiguo 06/02/2005, 19:32
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
El problema está en el $result. Prueba así para forzar a que se te muestren los errores.
$result = mysql_query($sql,$conexio) or die ("Error en $sql :"mysql_error());

Saludos
  #8 (permalink)  
Antiguo 06/02/2005, 19:53
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por jpinedo
El problema está en el $result. Prueba así para forzar a que se te muestren los errores.
$result = mysql_query($sql,$conexio) or die ("Error en $sql :"mysql_error());

Saludos
saludos.. remplaze la linea del $result por la que tu escribiste
y me arroja el error
Código:
Parse error: parse error in /var/www/html/virtual/ctk.cl/www/byzard/php/busca.php on line 8
la linea 8 > es
$result = mysql_query($sql,$conexio) or die ("Error en $sql :"mysql_error());

ayuda....
  #9 (permalink)  
Antiguo 06/02/2005, 20:07
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 14 años, 10 meses
Puntos: 10
te falta el punto para concatenar el texto al mensaje de error...

$result = mysql_query($sql,$conexio) or die ("Error en $sql :".mysql_error());
__________________
oohh... quisiera ser godines!!!
  #10 (permalink)  
Antiguo 06/02/2005, 20:17
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Ok... tenía error... ya lo corrigió safe... faltaba el punto para concatenar.
Saludos
  #11 (permalink)  
Antiguo 06/02/2005, 20:22
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por safe
te falta el punto para concatenar el texto al mensaje de error...

$result = mysql_query($sql,$conexio) or die ("Error en $sql :".mysql_error());
saludos, y gracias por tu ayuda...
le puse el . y mejoro.. al darle la busqueda ahora me sale esto

Error en :Query was empty

para que lo ves aca esta>
http://www.ctk.cl/byzard/php/
  #12 (permalink)  
Antiguo 06/02/2005, 20:30
 
Fecha de Ingreso: enero-2005
Ubicación: Valparaiso - Chile
Mensajes: 116
Antigüedad: 12 años, 10 meses
Puntos: 0
Cita:
Iniciado por byzard
BUSCA.PHP
Código:
DO
{
echo "$row["titulo"]";                 //  <----Linea 16
}
El problema en la linea 16 es que usas dos veces las ", entonces el argumento del echo lo toma como que termina despues del [. Para eso debes usar en alguno de los dos casos la comilla simple, o bien usar el operador . para concatenar.


Ahora viendo eso del query is empty, si nos estas copiando todo el codigo a nosotros... donde defines $sql???

Última edición por Yoko_cl; 06/02/2005 a las 20:33
  #13 (permalink)  
Antiguo 06/02/2005, 20:31
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
vale ahora si funciono..
si sorry ese error Error en :Query was empty
fue culpa mia, me falto colocar el codigo del sql, ahora esta ok...
aca esta todo el codigo
Código:
<?php
 $conexio = mysql_connect("zzzz", "byzard", "zzzzz");
 mysql_select_db ("zzzz", $conexio) OR die ("No se puede conectar");
// include("conec.php");
// $link=Conectarse();
$sql="SELECT * FROM anime WHERE titulo LIKE '%".$palabra."%' "; 

$result = mysql_query($sql,$conexio) or die ("Error en $sql :".mysql_error());

// Si hay resultados crea una tabla y los muestra
if ($row= mysql_fetch_array($result))
{
echo "<TABLE BORDER='0'>";
DO
{
echo $row["titulo"];
}
while ($row=mysql_fetch_array($result));
echo "</TABLE>";
}
mysql_close ($conexio); 
// mysql_close($link);
?>
pero mira hace la busqueda,,., coloca A, los resultados no me los arroja como en tablas, como q me tira todo lineal..
si puedes prueba en el site
http://www.ctk.cl/byzard/php/consulta.htm
y me dices porq la cosa de la tabla no hizo efecto

Última edición por byzard; 06/02/2005 a las 20:38
  #14 (permalink)  
Antiguo 06/02/2005, 20:40
 
Fecha de Ingreso: enero-2005
Ubicación: Valparaiso - Chile
Mensajes: 116
Antigüedad: 12 años, 10 meses
Puntos: 0
Codigo mejorado apra sacar el resultado como una columa.

Código:
<?php
 $conexio = mysql_connect("zzzz", "byzard", "zzzzz");
 mysql_select_db ("zzzz", $conexio) OR die ("No se puede conectar");
// include("conec.php");
// $link=Conectarse();
$sql="SELECT * FROM anime WHERE titulo LIKE '%".$palabra."%' "; 

$result = mysql_query($sql,$conexio) or die ("Error en $sql :".mysql_error());

if (mysql_fetch_array($result))  // me habia comido este if.
{
// Si hay resultados crea una tabla y los muestra
?>
<table border="0">
<?
while ($row=mysql_fetch_array($result))
{
?>
<tr><td><?= $row["titulo"] ?></td></tr>
<?
} // aqui se cierra el while
echo "</TABLE>";
}
mysql_close ($conexio); 
// mysql_close($link);
?>
Con <tr> se inicia una fila y con </tr> se finaliza.
y con td se hacen las columnas,

Última edición por Yoko_cl; 06/02/2005 a las 20:45
  #15 (permalink)  
Antiguo 06/02/2005, 20:56
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por Yoko_cl
Codigo mejorado apra sacar el resultado como una columa.

Código:
<?php
 $conexio = mysql_connect("zzzz", "byzard", "zzzzz");
 mysql_select_db ("zzzz", $conexio) OR die ("No se puede conectar");
// include("conec.php");
// $link=Conectarse();
$sql="SELECT * FROM anime WHERE titulo LIKE '%".$palabra."%' "; 

$result = mysql_query($sql,$conexio) or die ("Error en $sql :".mysql_error());

if (mysql_fetch_array($result))  // me habia comido este if.
{
// Si hay resultados crea una tabla y los muestra
?>
<table border="0">
<?
while ($row=mysql_fetch_array($result))
{
?>
<tr><td><?= $row["titulo"] ?></td></tr>
<?
} // aqui se cierra el while
echo "</TABLE>";
}
mysql_close ($conexio); 
// mysql_close($link);
?>
Con <tr> se inicia una fila y con </tr> se finaliza.
y con td se hacen las columnas,
vale..
http://www.ctk.cl/byzard/php/consulta.htm

pero lo raro ahora q como que busca maoma...
antes colocaba "berserk" y me aparecia, ahora no. y otros titulos me pasa lo mismo... que habra pasado?
  #16 (permalink)  
Antiguo 06/02/2005, 21:10
 
Fecha de Ingreso: enero-2005
Ubicación: Valparaiso - Chile
Mensajes: 116
Antigüedad: 12 años, 10 meses
Puntos: 0
Cambia
$sql="SELECT * FROM anime WHERE titulo LIKE '%".$palabra."%' ";

pòr

$sql="SELECT * FROM anime WHERE titulo LIKE ".$palabra.";
  #17 (permalink)  
Antiguo 06/02/2005, 21:24
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por Yoko_cl
Cambia
$sql="SELECT * FROM anime WHERE titulo LIKE '%".$palabra."%' ";

pòr

$sql="SELECT * FROM anime WHERE titulo LIKE ".$palabra.";
olas, si lo cambio me sale error, sobre la linea 9
y la linea 9, es>
$result = mysql_query($sql,$conexio) or die ("Error en $sql :".mysql_error());

algo pasa al cambiar el select, en el sentido con las ", toy editando en el dreamweaver si al poner el otro select q mencionas como q me cambia el color de esa linea hacia abajo como casi todo rojo, algo paso con el segundo select, quizas funciona pero da problemas con la linea 9. q sera?
  #18 (permalink)  
Antiguo 06/02/2005, 21:37
 
Fecha de Ingreso: enero-2005
Ubicación: Valparaiso - Chile
Mensajes: 116
Antigüedad: 12 años, 10 meses
Puntos: 0
hay chico, te estoy ayudando, pero prueba por ti mismo! piensa un poco, si esperas que el resto te solucione todos los problemas nunca vas a aprender.

lo que pasa es que me salio un " de mas, lo correcto seria

$sql="SELECT * FROM anime WHERE titulo LIKE ".$palabra;
  #19 (permalink)  
Antiguo 06/02/2005, 21:39
 
Fecha de Ingreso: agosto-2003
Ubicación: santiago, chile
Mensajes: 297
Antigüedad: 14 años, 4 meses
Puntos: 0
Cita:
Iniciado por Yoko_cl
hay chico, te estoy ayudando, pero prueba por ti mismo! piensa un poco, si esperas que el resto te solucione todos los problemas nunca vas a aprender.

lo que pasa es que me salio un " de mas, lo correcto seria

$sql="SELECT * FROM anime WHERE titulo LIKE ".$palabra;
jajaja.... vale... es q como estas una bala, creo q me puse muy balsa..
vale por todo
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 19:40.