Hola, el asunto es que quiero resaltar los parámetros de una busqueda. A traves de la query llega la id de los registros en los que hay que buscar y que palabras hay que buscar en dichos registros.
Como observación decir que esta id no es autoincrementable, es decir, la id -10- la puede tener 200 registros.
Bueno esto es lo que tengo hecho, y no da ningún error pero tampoco imprime nada, deja la página en blanco
Código PHP:
<%
Dim ExplDoc, registros, i, marca, array_cadena, strOriginal
ExplDoc = 0 ' Este campo es de texto
Call Registro (rs2)
SQL="SELECT ExplDoc, IBol from table where IBol = ...."
rs2.Open SQL, fconn
registros=rs2.getrows
Call LimpiarRS (rs2)
Call LimpiarConexion (fconn)
For i=0 to UBound(registros,2) ' Listo los resultados
marca = Trim(Request.QueryString("clave")) ' Recoge los parámetros de la busqueda
IF marca = "" then
%>
<%=registros(ExplDoc,i))%>
<%
ELSE
array_cadena = Split(marca," ")
%>
<%=ResaltaParam(StrOriginal)%>
<%
END IF
Next ' i
%>
En un include Código PHP:
<%
Dim registros, n, ExplDoc, array_cadena, marca
Dim n, objRegExp
array_cadena = Split(marca," ")
Function ResaltaParam (strMarcado)
For n=0 to UBound(array_cadena)
Set objRegExp = new RegExp
With objRegExp
.Pattern = "\b("&array_cadena(n)&")+\b"
.IgnoreCase = True
.Global = True
End With
strMarcado = objRegExp.replace(registros(ExplDoc,i)), "<span class=""bgC"&n&""">$1</span>")
ResaltaParam = strMarcado
Set objRegExp = nothing
Next n
End Function
%>
He probado muchas cosas y estas son las únicas lineas de código que no dan error.
Gracias