Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/01/2010, 06:30
Avatar de CHuLoSoY
CHuLoSoY
 
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: Contar letras de una cadena hasta cierto punto

Hla amigo gracias por tu ayuda. El buscador está muy verde pero lo voy a reemplazar con sentencias MATCH ... AGAINST de sql.
Por ahora tengo esto:
Código PHP:
Ver original
  1. include("datos_usuario_db.php");
  2.  
  3.  
  4. $cadenaBusqueda=$_POST['cadenaBusqueda'];
  5. $dondeBuscar=$_POST['dondeBuscar'];
  6.  
  7. if($dondeBuscar=="todos") {
  8.  
  9.         $conexion=mysql_connect($dbserver,$dbuser,$dbpass);
  10.         mysql_select_db($db,$conexion);
  11.  
  12.         $sql="SELECT * FROM gap_foro_mensajes WHERE asunto LIKE '%".$cadenaBusqueda."%' OR mensaje LIKE '%".$cadenaBusqueda."%' ORDER BY id DESC;";
  13.         $result=mysql_query($sql,$conexion);
  14. $cuantosMsgForo=mysql_num_rows($result);
  15. $contenidoAMeter="<tr><td width=100% colspan=3 style='font-weight:bold;background-color:#565656;color:white;-moz-border-radius:8px 8px 0px 0px;'>".$cuantosMsgForo." resultados en el foro</td></tr>";
  16.         while($row=@mysql_fetch_array($result)) {
  17.            
  18.             if($bandera==0) { $colorFondo="#FFE7D7"; $bandera=1; } else { $colorFondo="#FFE0CE"; $bandera=0; }
  19.             $contenidoAMeter.="<tr style=background-color:".$colorFondo.";><td width=50% style='border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#C8C8C8;'><a href='javascript:;' onclick=\\\"javascript:leerMsgForoDesdeIndex(".$row['id'].",'1&marcar=".$cadenaBusqueda."');\\\">".$row['asunto']."</a></td><td width=25% align=center style=border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#C8C8C8;>".$row['user']."</td><td width=25% style='border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#C8C8C8;border-right-width:1px;border-right-style:solid;border-right-color:#C8C8C8;' align=center>".$row['fecha']."</td></tr>";
  20.    
  21.         }
  22.         @mysql_free_result($result);
  23.         mysql_close($conexion);
  24.  
  25. }

Bueno, el tema es que funciona. Ahora voy a mejorarlo exprimiendo dentro del while otra consulta a las respuestas del foro que coincidan y no repetir los asuntos. Eso es cosa mía. Lo que ahora quiero es que después de la <tr> del resultado (asunto, usuario y fecha), venga otra <tr> donde pongo un trozo del texto del mensaje, a partir de la palabra encontrada. Lo explicaba esto bien en el post inicial. Imagínate que hay este texto en el foro:

Cita:
Hola amigos.
Recientemente, mediante el Juego de C, x propuso utilizar x como editor de texto conjuntamente en tiempo real, donde se ven claramente las modificaciones de otros y en el instante.
Ahora imagina que la cadena de búsqueda será tiempo real. Pues bien, el resultado sería :

Cita:
...tiempo real, donde se ven claramente las modificaciones de otros y en el instante...
Que busque tiempo real en la cadena lo haré con substr, pero luego necesito sacar todo lo que sobra de la cadena, es decir, mostrar sólo a partir de la cadena encontrada.

Me expliqué mejor ahora no?

Saludos y gracias.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.