Foros del Web » Programando para Internet » PHP »

Seleccionar solamente si la fila tiene una palabra especifica

Estas en el tema de Seleccionar solamente si la fila tiene una palabra especifica en el foro de PHP en Foros del Web. Hola! Tengo un blog y quiero que se organize por categorias. Cree dentro de mi tabla blog una fila llamada categorias y ahi pueden ir ...
  #1 (permalink)  
Antiguo 30/03/2003, 14:13
Avatar de Threepwood  
Fecha de Ingreso: febrero-2002
Ubicación: Argentina
Mensajes: 906
Antigüedad: 22 años, 2 meses
Puntos: 4
Seleccionar solamente si la fila tiene una palabra especifica

Hola!

Tengo un blog y quiero que se organize por categorias.

Cree dentro de mi tabla blog una fila llamada categorias y ahi pueden ir la que yo elija en el momento de escribir mi texto. Ahora.. en la página principal van todos los textos de la bd es ecir todas las categorias pero como puedo hacer para que si seleccionan la categoria Informatica solamente desplieguen los que tienen esa categoria?

Obviamente en la fila categoria se dice si va en Informatica o en Musica o en Cine.. y asi..

Es con la condicion Where?
__________________
Equívocos sin importancia
  #2 (permalink)  
Antiguo 30/03/2003, 18:06
 
Fecha de Ingreso: junio-2002
Mensajes: 76
Antigüedad: 21 años, 10 meses
Puntos: 0
no te entendi muy bien con lo de blog (igual es blob) pero si va en la condicion where pero utlizando like

select * from $tabla where $campo like $texto
siendo:
$tabla, el nombre de la tabla;
$campo, el nombre del campo donde tenemos la categoria;
$texto, la cadena a buscar

Espero que te sirva, si no me avisas

Saludos
  #3 (permalink)  
Antiguo 30/03/2003, 18:51
Avatar de Threepwood  
Fecha de Ingreso: febrero-2002
Ubicación: Argentina
Mensajes: 906
Antigüedad: 22 años, 2 meses
Puntos: 4
Hola!

Mira no lo puedo probar ahorita pero estoy seguro que con eso funcionara, muchas gracias!

Por cierto.. si es blog... un blog es como un diario en linea.. donde solamente escribe el encargado del sitio... sus vivencias diarias... si quieres entra a mi pagina y checa mas o menos de que va la cosa...

Salu2!
__________________
Equívocos sin importancia
  #4 (permalink)  
Antiguo 30/03/2003, 22:17
Avatar de Threepwood  
Fecha de Ingreso: febrero-2002
Ubicación: Argentina
Mensajes: 906
Antigüedad: 22 años, 2 meses
Puntos: 4
Hola!

No funciono

Espero que sea cosa mia..

Ok.. cree la fila y este es el codigo que uso para sacar los datos:

Código PHP:
<?
$connection 
mysql_connect($host$user$pass) or die ("Adios!");

mysql_select_db($db) or die ("Adios!");

//$num es una variable con el número de página que nos pasa esta misma página cuando pulsamos sobre los links de los nº de página.

IF ($num>0) { $n=$num;} ELSE { $n=0; }

//Contar cuantos registros hay
$conta="SELECT id FROM diario ";
$result2=mysql_query($conta,$connection); 
$quants=mysql_num_rows($result2);

//Buscar 15 registros
$sql="SELECT * FROM diario WHERE seccion LIKE Cine ORDER BY id DESC LIMIT ".$n.", 10 ";
$result=mysql_query($sql,$connection);

while(
$row mysql_fetch_array($result)) 
{
  DO
  {
        echo 
"<TABLE width=\"350\" BORDER='0' cellpadding=\"0\" cellspacing=\"0\" align='center'>";
        echo 
"<TR><TD width=\"25\" background=\"img/curv_ar_izq.gif\"></td><TD width=\"300\" background=\"img/lin_top.gif\"><font face=\"Verdana\" size=\"2\" color=\"#000000\"><b><center>".$row["slug"]."</font></center></b></TD><TD width=\"25\"><img src=\"img/curv_ar_der.gif\" width=\"25\" height=\"25\"></td></TR>";
        echo 
"<TR><TD width=\"25\" background=\"img/bg_izq.gif\"></td><TD width=\"300\"><font face=\"Verdana\" size=\"2\" color=\"#003399\"><center>".$row["fecha"]." - <b>En:</b> ".$row["seccion"]." </font></center></TD><TD width=\"25\"><img src=\"img/bg_der.gif\" width=\"25\" height=\"25\"></td></tr>"
        echo 
"<TR><TD width=\"25\" background=\"img/bg_izq.gif\"></td><TD width=\"300\"><font face=\"Verdana\" size=\"1\">".$row["content"]."</font><hr color=\"#000000\" size=\"1\"></TD><TD width=\"25\" background=\"img/bg_der.gif\"></td></TR>";
        echo 
"<TR><TD width=\"25\" background=\"img/curv_ab_izq.gif\"></td><TD background=\"img/lin_abj.gif\" width=\"300\"><font face=\"Verdana\" size=\"1\"><b><p align=\"right\"><a class=\"otro\" href=\"javascript:popUp('diario/ver_comentario.php?id=".$row["id"]."')\">Tu dices...</a></b></p></font></TD><TD width=\"25\"><img src=\"img/curv_ab_der.gif\" width=\"25\" height=\"25\"></td></TR>";
        echo 
"</TABLE>";
        echo 
"<br>";
  }
  WHILE (
$row=mysql_fetch_array($result));

}
+
Codigo...
En fin.. el error lomarca en la linea 160.. y la linea es:

while($row = mysql_fetch_array($result))

El codigo lo puse de la siguiente manera:

$sql="SELECT * FROM diario WHERE seccion LIKE Cine ORDER BY id DESC LIMIT ".$n.", 10 ";

Sile quito el Where y Like todo funciona perfectamente...

El error es:

Warning: Supplied argument is not a valid MySQL result resource in c:\scripts\sam2\cine.php on line 160

Gracias por la ayuda
__________________
Equívocos sin importancia

Última edición por Threepwood; 30/03/2003 a las 22:21
  #5 (permalink)  
Antiguo 30/03/2003, 23:16
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Código PHP:
$sql="SELECT * FROM diario WHERE seccion LIKE '%Cine%' ORDER BY id DESC LIMIT ".$n.", 10 "
Pero te tengo un problema con LIKE que orita solucionamos

La opción LIKE se usa solamente para los buscadores, si tienes una búsqueda generica y no exacta.

Si tienes secciones como Cine Ingles, Cine Frances, etc (Ejemplo). Si le das en cine, sacarpa todas las categorias que tienes con la palabra cine.

Pero si quieres una búsqueda exacta:

Código PHP:
$sql="SELECT * FROM diario WHERE seccion='cine'"
Salu2
  #6 (permalink)  
Antiguo 31/03/2003, 16:09
Avatar de Threepwood  
Fecha de Ingreso: febrero-2002
Ubicación: Argentina
Mensajes: 906
Antigüedad: 22 años, 2 meses
Puntos: 4
Funciona perfecto!

Gracias Lado2 y koudelin
__________________
Equívocos sin importancia
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 14:02.