Comunidad de diseño web y desarrollo en internet online

mostrar resultados con listas en vez de nl2br con php

Citar            
MensajeEscrito el 22 Abr 2006 09:31 pm
Holas, tengo una duda sobre la forma de mostrar informacion desde una base de datos, me dieron un archivo en word de los productos que venden, algo como esto:

galvanized steel messenger, overall black PVC jacket.
Inner Conductor, mm (inch) 0.81 (0.032)
Dielectric Diameter, mm (inch) 3.66 (0.144)
Outer Conductor Diameter, mm (inch) 3.86 (0.152)
Overall Cable Diameter, mm (inch) 6.10 (0.240)

aparte de nombres y codigos para cada producto, cada cual en su respectivo campo
tengo esto en un campo descripcion, y lo muestro asi:

Código :

echo  nl2br($filas["descripcion"]);

para que se escapen los saltos de linea, ya que como dije lo que hice fue pegar toda la informacion a mi campo.......esto funciona bien :roll: .

Pero quisiera saber si hay una forma en que se pueda convertir los <br /> en listas, o mostrar los resultados solo con listas, para darles formato con css, ya que muestro cada producto en filas, y este campo es una celda , y pues se veria mejor si los muestro como listas ^^

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox
Citar            
MensajeEscrito el 22 Abr 2006 09:38 pm
Claro que puedes. Pero necesitas analizar el string completo y "pedacearlo" con alguna de las funciones de PHP (explode, por ejemplo), en el caso que quieras seguir en la güevoneada de sólo copiar y pegar...

Yo, tomaría el contenido y lo introduciría en una base de datos normalizada y diseñada según la estructura del sitio.
Una vez introducido apropiadamente el contenido en la DB, pues será tan simple como hacer una llamada según el ID de un producto específico y que muestra las caracterísiticas generado por loop.

Por otro lado, si son productos con especificaciones... yo lo presentaría en una tabla, de hecho las tablas SÍ son para ese tipo de cosas (y a las tablas se les puede dar estilo con CSS)...

Éxito!

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox
Citar            
MensajeEscrito el 22 Abr 2006 10:18 pm
Bueno tengo que profundizar con la funcion explode, a ver si le encuentro solucion

pedro escribió:


seguir en la güevoneada de sólo copiar y pegar...

juassss!!11!
:oops: , sin embargo tengo que seguir haciendolo ya que como dije la informacion esta en un word

<Max medita> maldicion puedes pasar todo a un txt o un cvs e importarlo </Max medita>
<Max2 repica> claro, pero todavia no dominas archivos planos, uhmmm, se tendria que hacer un insert para cada campo o algo asi </Max2 repica>

Pedro, espero no te molestes, pero tal vez me puedas dar luces de como pasar la informacion sin tener que copipastear(*), mi base de datos es de solo una tabla productos con id_productos, nombre, descripcion, cod_imagen(jalo el codigo de la imagen respectiva guardada en una carpeta)

(*)frikismo tomado de post en charla :lol:

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox
Citar            
MensajeEscrito el 22 Abr 2006 10:24 pm
solo es una idea...

Código :

function set_list ($cadena){
     return "<li>".str_replace("</li><li>","<br />",nl2br($cadena))."</li>";
}


aseguro que hay que mejorarla...

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 22 Abr 2006 11:10 pm

Maikel escribió:

solo es una idea...

Código :

function set_list ($cadena){
     return "<li>".str_replace("</li><li>","<br />",nl2br($cadena))."</li>";
}


aseguro que hay que mejorarla...

saludos
La mejor idea que te pudieron dar ;)

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox
Citar            
MensajeEscrito el 23 Abr 2006 01:45 am
Esa idea te puede servir
Pero me parece que lo logico seria guardar cada producto como un registro, no todos en un mismo registro, si no cual es la idea de usar una base de datos?

Por Ramm

BOFH

3152 de clabLevel

6 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell REC Héroes

London, UK

firefox
Citar            
MensajeEscrito el 23 Abr 2006 06:28 pm
si efectivamente ^^ ^^ ^^ desde que leí el tema venia pensando en eso :)
Maikel eres un Genio :wink:

Por jhony192

791 de clabLevel

1 tutorial

Genero:Masculino  

Just Another Programmer

firefox
Citar            
MensajeEscrito el 26 Abr 2006 12:29 am
Buenas, disculpen por no haber contestado , gracias amigo Maikel por el codigo, era justo lo que necesitaba, solo un pequeño detalle en la sintaxis:

Maikel escribió:

function set_list ($cadena){

return "<li>".str_replace("</li><li>","<br />",nl2br($cadena))."</li>";

}


str_replace ( mixed cadena_buscada, mixed cadena_sustituta, mixed cadena_original [, int &veces])


debe ser al contrario:

Código :

str_replace("<br />","</li><li>",nl2br($cadena))."</li>";
:D

Se que el estimado BOFH lo hizo adrede, para que sea yo el que me diera cuenta del error :roll:

Pues lo que hace este script es buscar la aparicion de la cadena <br /> y sustiturla por las listas, claro que la inspiracion esta en colocar primero "<li>" para que luego a la primera aparicion de un <br /> lo sustituya por un termino de lista </li> y al mismo instante inicie la siguiente lista. excelente (y)

ramm escribió:

Pero me parece que lo logico seria guardar cada producto como un registro, no todos en un mismo registro, si no cual es la idea de usar una base de datos?


Es exactamente lo que hago, tengo los productos en una tabla, luego hago la consulta para mostrar todos los registros, y en el campo en el que deseo aplicar el script (descripcion) y hago una llamada a la funcion de Maikel para que haga los reemplazos respectivos

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.