Foros del Web » Programando para Internet » PHP »

cómo se suele hacer esto??

Estas en el tema de cómo se suele hacer esto?? en el foro de PHP en Foros del Web. Hola amig@s, Ahora mismo tengo una sección en el portal en la que se muestran varias imágenes intercaladas con el texto, para mostrarlo en la ...
  #1 (permalink)  
Antiguo 27/04/2004, 03:03
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
cómo se suele hacer esto??

Hola amig@s,

Ahora mismo tengo una sección en el portal en la que se muestran varias imágenes intercaladas con el texto, para mostrarlo en la web tengo cada párrago con imagen y alineación en un registro distinto y determino si correcponde a un mismo artículo con otra campo (nombre del articulo)

Supongo que con éste sistema puede vale, por funcionar funciona pero estoy seguro que no es el mejor sistema me podéis indicar cómo se suele estructurar los contenidos con diversas fotos??

muchas gracias!!!!!

por cierto, no hace falta que me digáis el código, sino la forma mejor de hacerlo ;) así me pego yo con el tema :D
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #2 (permalink)  
Antiguo 27/04/2004, 08:13
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si dices que puedes tener imagenes que van a ser iguales en X contenidos ..podrías usar una normalización tipo "N<->N"

tabla contendido
id_contenido
campos

tabla imagenes
id_imagen
imagen_url
etc campos

tabla matriz_contenido_imagen
id_matriz
id_contenido
id_imagen

En la tabla "matriz_contenido_imagen" guardaría los identificadores del contenido y de las imagenes de ese contenido .. Bajo ese sistema .. puedes tener imagenes que se repiten sin problemas y con un nivel "alto" de normalización .. lo cual complica las consultas SQL a realizar vs optimización de la BD (tamaño).

Puedes ver un artículo sobre normalización de BD (enfocado a Mysql) en:

http://www.mysql-hispano.org/page.php?id=16

Cualquier duda sobre el tema .. si lo deseas transladamos el mensaje al foro de "Base de datos" que es donde se deben tratar estos temas...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 27/04/2004, 08:30
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
no me he explicado bien ....

imagínate que tienes que hacer un artículo en el que puedas incluir diversas imágenes... cómo lo harias??

yo como no tenía mucha idea de PHP (éste es mi primer proyecto) lo primero que se me ocurrió fue meter un una misma base de datos todos los artículos con la siguiente estructura:

id
Apartado
Parrafo
Imagen
Alineacion
Pie_foto

entonces selecciono todos los registros que tengan el mismo `Apartado` en orden `id`ASC por párrafos y si tienen imagen, pues se la coloco en el código generado... me he explicad mejor?? las fotos no se repiten

gracias!!!!

P.D.: muévelo si crees que esté no es el foro apropiado, sorry
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #4 (permalink)  
Antiguo 27/04/2004, 08:53
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
imagínate que tienes que hacer un artículo en el que puedas incluir diversas imágenes... cómo lo harias??
Con el sistema que te plantee (el modelo de datos) da igual si se repiten o no tus imagenes .. Por supuesto si sabes ya que las imagenes no se van a repetir (o no te importaría llegar al extremo de normalización que propuse ..) puedes usar cualquier otro tipo de normalización .. ejemplo una 1->N

tabla contenido
id_contenido
campos

tabla imagenes
id_imagen
id_contenido
campos

Las imagenes están en la tabla imagenes .. hago una consulta tipo:
SELECT * FROM imagenes WHERE id_contenido=$id_contenido

así obtengo las imagenes de ese artículo .. $id_contenido lo obtengo bien de la consulta que hago para llegar a ese contenido (artículo) o si me llega por el URL (si uso el ID directo .. ) pues esa misma...

-------

Lee el tutorial que te dejé sobre normalización .. Una cosa es conocer "PHP" como lenguaje de programación . .pero ahora estás tratando otros temas sobre "Base de datos" que disponen de sus própias reglas-teoría y su própio lenguaje: el "SQL" (lenguaje estructurado de consultas).

Cuanto más conozcas sobre esos temas .. mejor podrás diseñar la estrutura de tu Base de datos con los datos que almacenas y las relaciones entre estos ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 27/04/2004, 09:08
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
okas cluster :) me leeré el artículo y ya te conteré :)

otra cosa... he pensado que si he hace en una misma tabla todo?? y en el contenido de txt se pone una palabra como [foto] y los nombrs de las imágenes en su campo se convierten en una matriz y se sustituye en todo el contenido la palabra [foto] por el código HTML + la posición 1 del array, luego la 2, ect??

te parece??? gracias again!!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #6 (permalink)  
Antiguo 27/04/2004, 09:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. yo soy pro-normalización xD .. así que eso de tener una misma tabla con X camos de fotos me limitaría a que en un momento dado tenga un artículo con más fotografías que las que definí en mi única tabla .. Por eso uso "dos" tablas y las relaciono .. A la tabla "imagenes" le puedes crear (relacionado con la del contenido) tantos registros como gustes ..

Lo de referenciar a tus imagenes por un tag própio tipo [foto] .. es buena idea .. Es más .. podrías ajustarlo más si usases una sintax para tu tag tipo: [foto=1] .. [foto=2] .. .etc.

Ese nº yo lo relacionaría con la imagen que guardo en mi tabla de "imagenes". Podría ser ese nº (a la rápida) el identificador de ese registro de imagen (el id_imagen de la tabla imagenes) .. o el nombre de la foto (tedrías que ser único . .cosa que ya será tu id_imagen .. si usas campos autoincrementales y únicos como debes hacerlo).

con una pequeña expresión regular podrías reconocer tu "tag" (BBcode que llaman en otros sitios) y tomar ese nº para usalo en una consulta tipo:

ver_imagen.php?id_imagen=nº
Código PHP:
<?
//conectas a tu BD .. etc ..
$sql="SELECT ruta_imagen FROM imagenes WHERE id_imagen='".$_GET['id_imagen']."'";
$consulta=mysql_query($sql);
echo 
mysql_result($consulta,0,"ruta_imagen");
?>
y con tu expresion regular (u otros métodos) .. pones tu código HTML de llamada a tu imagen que llama a tu script que obtiene la imagen en concreto (bajo esa consulta SQL) por ese identificador de tu imagen ..

<img src="ver_imagen.php?id_imagen=23">

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 27/04/2004, 10:16
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 649
Antigüedad: 20 años, 6 meses
Puntos: 2
uppssss, voy a tener que digerir esto... pero muchas gracias cluster!!! creo que me vale para ir empezando ;)

resulta que mi programación es bastante... autodidacta... aprendí Lingo para Director en la academia..., flash haciendo mi web www.x3mdesign.con ;) y di un curso de PHP on-line y nació www.nippon-.tour.tk...

en el curso de PHP de estrucuración de BBDD no vimos nada y mucho menos de normalización.... y te puedes imaginar el temario del curso suerte que tengo base y ganas de aprender.. pero mis métodos son un poco salvajes :P

muchas gracias!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #8 (permalink)  
Antiguo 27/04/2004, 10:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pues adelante .. Yo tambien soy autodidacta .. por eso de: autodidacta-a-autodidacta te comento que si llegas a comprender como es todo ese tema de la "normalización" de Base de datos .. veras como tus aplicaciones y gestión de datos mejoran. Luego lees uno sobre SQL (de Msyql o del motor de BD que uses) y veras la de infinidad de cosas que puedes hacer y sobre todo la de cosas que ahora solventas con "mucho" PHP por médio y podrías hacer a "golpe" de sentencia SQL bien estructurada. Lo cual optimizará tus aplicaciones.

Recuerda que PHP es un lenguaje de programación (¿ok?) .. pero las "base de datos" tienen el suyo própio (SQL) y .. como tal hay que conocerlo ..si eso a su vez implica algo de teoría (es el caso del tema "normalización" ) debes conocerlo sino no saldras de hacer tablas "gigantescas" y modelos de datos "poco flexibles".

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 08:05.