Foros del Web » Programando para Internet » PHP »

PHP OO seleccion de divs con php ¿como lo puedo hacer?

Estas en el tema de seleccion de divs con php ¿como lo puedo hacer? en el foro de PHP en Foros del Web. Tengo un problema y mis conocimientos son bajos para solucionarlo, tengo una pagina donde se muestran videos y fotos, y para cargarlos poseen un tag ...
  #1 (permalink)  
Antiguo 14/04/2014, 10:29
 
Fecha de Ingreso: abril-2014
Mensajes: 19
Antigüedad: 10 años
Puntos: 0
Pregunta seleccion de divs con php ¿como lo puedo hacer?

Tengo un problema y mis conocimientos son bajos para solucionarlo,
tengo una pagina donde se muestran videos y fotos, y para cargarlos poseen un tag que identifica que elemento es.

<li data-tags="Images">
<a href="images/banner1.jpg" class="thumb fsand"><img src="images/gal-four-col-1.jpg" /></a></li>

<li data-tags="Videos">
<a href="http://www.youtube.com/watch?v=uvBVUit3kjY" class="thumb play"><img src="images/gal-four-col-2.jpg" /></a></li>

voy a crear una area de repeticion para poder colocar solo una <li> y poder administrarlo desde un panel de control que realize.

el problema que tengo es que no se como hacer para que depende el tag que sea se muestre el resto del div, por ejmeplo

si
<li data-tags="Images">
que se muestre
<a href="images/banner1.jpg" class="thumb fsand"><img src="images/gal-four-col-1.jpg" /></a></li>

pero si
<li data-tags="Videos">
que se muestre
<a href="http://www.youtube.com/watch?v=uvBVUit3kjY" class="thumb play"><img src="images/gal-four-col-2.jpg" /></a></li>

saludos
  #2 (permalink)  
Antiguo 14/04/2014, 13:28
 
Fecha de Ingreso: enero-2007
Mensajes: 285
Antigüedad: 17 años, 3 meses
Puntos: 21
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

PARA MI......si lo tenes en base de datos.. seria mejor ponerle un flag al registro.. si es video mostras el li del video y si es foto mostrar el de foto
  #3 (permalink)  
Antiguo 14/04/2014, 13:29
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

PHP trabaja del lado del servidor, por lo tanto, no es posible controlar el DOM. Para eso existe JavaScript.

DEMO

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #4 (permalink)  
Antiguo 14/04/2014, 13:39
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Si quieres analizar el contenido de una string antes de imprimir el html desde el servidor, con algo como esto estaria solucionado.
Código PHP:
preg_match('/<li data-tags="(.*)">/','<li data-tags="Images">'$matches);
echo 
$matches[1]; 
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #5 (permalink)  
Antiguo 14/04/2014, 13:57
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Cita:
Iniciado por h2swider Ver Mensaje
Si quieres analizar el contenido de una string antes de imprimir el html desde el servidor, con algo como esto estaria solucionado.
Código PHP:
preg_match('/<li data-tags="(.*)">/','<li data-tags="Images">'$matches);
echo 
$matches[1]; 
Es buena la solución, aunque particularmente, no lo haría así por un tema de orden y eficiencia. Habría que ver cómo es que nuestro amigo funnico está armando la estructura para ver si esta solución es aplicable.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #6 (permalink)  
Antiguo 14/04/2014, 15:17
 
Fecha de Ingreso: abril-2014
Mensajes: 19
Antigüedad: 10 años
Puntos: 0
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

la verdad no se mucho, estoy empezando a meterme con php, pense que con un if, else se podia haecer
  #7 (permalink)  
Antiguo 14/04/2014, 15:19
 
Fecha de Ingreso: abril-2014
Mensajes: 19
Antigüedad: 10 años
Puntos: 0
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Cita:
Iniciado por Alexis88 Ver Mensaje
PHP trabaja del lado del servidor, por lo tanto, no es posible controlar el DOM. Para eso existe JavaScript.

[URL="http://jsfiddle.net/kS9Gz/"][B]DEMO[/B][/URL]

Saludos
Alexis, gracias por la respuesta, me es mas facil para mi entenderlo asi, pero no lo puedo hacer funcionar aun, hay algo que tengo mal q no me vincula.
saludos
  #8 (permalink)  
Antiguo 14/04/2014, 15:23
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Coloca aquí eso que 'no te vincula' para poder ayudarte.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #9 (permalink)  
Antiguo 14/04/2014, 15:28
 
Fecha de Ingreso: abril-2014
Mensajes: 19
Antigüedad: 10 años
Puntos: 0
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Cita:
Iniciado por Alexis88 Ver Mensaje
Coloca aquí eso que 'no te vincula' para poder ayudarte.
lo tengo de esta forma, en el script coloque las vinculaciones correspondietes del juego de registro. aunque me parece que ahi esta mi error

<script>var li = document.getElementsByTagName("li")[0],
dataTags = li.getAttribute("data-tags"),
a = document.createElement("a"),
img = document.createElement("img");

if (dataTags == "Images"){
a.href = "images/gallery/<?php echo $row_Recordset1['Foto']; ?>";
a.className = "thumb fsand";
img.src = "images/gallery/<?php echo $row_Recordset1['Foto']; ?>";
li.appendChild(a);
li.appendChild(img);
}
else{
a.href = "<?php echo $row_Recordset1['Video']; ?>";
a.className = "thumb play";
img.src = "images/gallery/video.jpg";
li.appendChild(a);
li.appendChild(img);
}
</script>
--------------------------------

y en el hmlt

<?php do { ?>
<li data-tags = "<?php echo $row_Recordset1['Titulo']; ?>"></li>
<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
  #10 (permalink)  
Antiguo 14/04/2014, 15:37
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Solo por casualidad, ¿el código JavaScript lo colocaste en la cabecera del documento o antes de la etiqueta </body>? Si es lo primero, o bien coloca el código justo antes de </body> o colócalo en esta función:

Código Javascript:
Ver original
  1. window.addEventListener("load", function(){
  2.     var li = document.getElementsByTagName("li")[0],
  3.         dataTags = li.getAttribute("data-tags"),
  4.         a = document.createElement("a"),
  5.         img = document.createElement("img");
  6.  
  7.     if (dataTags == "Images"){
  8.         a.href = "images/gallery/<?php echo $row_Recordset1['Foto']; ?>";
  9.         a.className = "thumb fsand";
  10.         img.src = "images/gallery/<?php echo $row_Recordset1['Foto']; ?>";
  11.         li.appendChild(a);
  12.         li.appendChild(img);
  13.     }
  14.     else{
  15.         a.href = "<?php echo $row_Recordset1['Video']; ?>";
  16.         a.className = "thumb play";
  17.         img.src = "images/gallery/video.jpg";
  18.         li.appendChild(a);
  19.         li.appendChild(img);
  20.     }
  21. }, false);

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #11 (permalink)  
Antiguo 14/04/2014, 15:48
 
Fecha de Ingreso: abril-2014
Mensajes: 19
Antigüedad: 10 años
Puntos: 0
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Cita:
Iniciado por Alexis88 Ver Mensaje
Solo por casualidad, ¿el código JavaScript lo colocaste en la cabecera del documento o antes de la etiqueta </body>? Si es lo primero, o bien coloca el código justo antes de </body> o colócalo en esta función:

Código Javascript:
Ver original
  1. window.addEventListener("load", function(){
  2.     var li = document.getElementsByTagName("li")[0],
  3.         dataTags = li.getAttribute("data-tags"),
  4.         a = document.createElement("a"),
  5.         img = document.createElement("img");
  6.  
  7.     if (dataTags == "Images"){
  8.         a.href = "images/gallery/<?php echo $row_Recordset1['Foto']; ?>";
  9.         a.className = "thumb fsand";
  10.         img.src = "images/gallery/<?php echo $row_Recordset1['Foto']; ?>";
  11.         li.appendChild(a);
  12.         li.appendChild(img);
  13.     }
  14.     else{
  15.         a.href = "<?php echo $row_Recordset1['Video']; ?>";
  16.         a.className = "thumb play";
  17.         img.src = "images/gallery/video.jpg";
  18.         li.appendChild(a);
  19.         li.appendChild(img);
  20.     }
  21. }, false);

Saludos
ahi lo coloque llamando al script y la funcion la coloque en un nuevo js. el problema que tengo ahora me parece que es que se me aplica en el li de la barra de navegacion, como puedo hacer para que solo sea para esta seccion? muchas gracias por la ayuda, estoy incrusionando en le php y me esta costando bastante, je
  #12 (permalink)  
Antiguo 14/04/2014, 15:53
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Bueno, este ya no es un tema de PHP sino de JavaScript. Para que un determinado elemento se vea afectado, en este caso, el elemento <li> al que haces referencia, lo mejor sería que le des un Id y así lo puedas seleccionar a través de ese atributo.

El <li> tomaría esta forma:
Código HTML:
Ver original
  1. <li id = "ejemplo" data-tags = "Images"></li>

Mientras que en la línea del código JavaScript en donde selecciona a dicho elemento, deberías hacerlo de esta manera:
Código Javascript:
Ver original
  1. //En lugar de esto
  2. var li = document.getElementsByTagName("li")[0]
  3.  
  4. //Hazlo así
  5. var li = document.getElementById("ejemplo")

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #13 (permalink)  
Antiguo 14/04/2014, 16:13
 
Fecha de Ingreso: abril-2014
Mensajes: 19
Antigüedad: 10 años
Puntos: 0
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Cita:
Iniciado por Alexis88 Ver Mensaje
Bueno, este ya no es un tema de PHP sino de JavaScript. Para que un determinado elemento se vea afectado, en este caso, el elemento <li> al que haces referencia, lo mejor sería que le des un Id y así lo puedas seleccionar a través de ese atributo.

El <li> tomaría esta forma:
Código HTML:
Ver original
  1. <li id = "ejemplo" data-tags = "Images"></li>

Mientras que en la línea del código JavaScript en donde selecciona a dicho elemento, deberías hacerlo de esta manera:
Código Javascript:
Ver original
  1. //En lugar de esto
  2. var li = document.getElementsByTagName("li")[0]
  3.  
  4. //Hazlo así
  5. var li = document.getElementById("ejemplo")

Saludos
lo probe, pero me parece que el error es que no se pueden colocar vinculaciones de la base de datos en un js. te paso la estructura completa por las dudas
http://jsfiddle.net/funnico/4AYW6/
muchisimas gracias por la ayuda alexis!
  #14 (permalink)  
Antiguo 14/04/2014, 16:43
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: seleccion de divs con php ¿como lo puedo hacer?

Creo que lo más conveniente sería que en la tabla de la BD, tengas los datos que asignarás a cada elemento <li>, de modo que cuando hagas la consulta, automáticamente añades los valores que correspondan.

Código PHP:
Ver original
  1. <?php
  2. $query = mysql_query("SELECT * FROM tabla");
  3. if (mysql_num_rows($query)){
  4.     while ($row = mysql_fetch_array($query)){
  5. ?>
  6.         <li data-tags = "<?=$row["data-tags"]?>">
  7.             <a href = "<?=$row["href"]?>">
  8.                 <img src = "<?=$row["img"]?>" />
  9.             </a>
  10.         </li>
  11. <?php        
  12.     }
  13. }
  14. ?>

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: divs, programacion
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 03:29.