elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Meter en un array la salida de una consulta de varios documentos con Foreach.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Meter en un array la salida de una consulta de varios documentos con Foreach.  (Leído 872 veces)
frauzamb

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Meter en un array la salida de una consulta de varios documentos con Foreach.
« en: 13 Mayo 2014, 15:50 pm »

Hola, tengo una duda con PHP, muchas gracias con antelación.

Tengo varios documentos XML con datos de CDs de música, en los cuales necesito sacar el mismo dato de cada uno (Nombres de las canciones). El código me funciona para hacer esto, pero ahora necesito que cada 10 canciónes me lo meta en un <div>(para css) diferente. Lo que me pasa es que el foreach me hace un array por cada fichero que lee(un array por cd) y no uno de todos(uno con todas las canciones de todos los cds) y así poder contar el número de canciones y separarlas cada 10. ¿Alguna sugerencía?
Espero haberme explicado bien :S

Código
  1. //Listado de ficheros
  2. foreach(glob($url .'*.xml') as $archives) {
  3.  
  4. //Abrimos fichero xml
  5. $cdarchive=simplexml_load_file($archives);
  6.  
  7.        //Mostramos nombre de las canciones
  8. foreach ($cdarchive->songs->song as $cdsong){
  9. echo $count;
  10. echo "<div class='slide><div class'left>";
  11. echo $cdsong->title." ";
  12. if (isset($cdsong->length))
  13. echo "(".$cdsong->length.")";
  14. if (isset($cdsong->feat))
  15. echo "[feat.".$cdsong->feat."]";
  16. echo "</br>";
  17. echo "</div></div>";
  18. }

Mod: Temas PHP en subforo de PHP. Obligatorio utilziar etiquetas GeSHi.


« Última modificación: 13 Mayo 2014, 22:32 pm por #!drvy » En línea

DanB

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: Meter en un array la salida de una consulta de varios documentos con Foreach.
« Respuesta #1 en: 13 Mayo 2014, 20:02 pm »

Amigo intenta para la proxima poner el codigo entre las etiquetas adecuadas para que se vea correctamente. Te dejo un codigo que hice a modo de ejemplo.
Código
  1. /*desde una url*/
  2. $context  = stream_context_create(array('http' => array('header' => 'Accept: application/xml')));
  3. $xml = file_get_contents($url, false, $context);
  4. $xml = simplexml_load_string($xml);
  5. $sql="INSERT INTO Noticias (Titulo, link, Contenido) VALUES (:titulo , :link , :contenido)";
  6. $consulta = $conexion->prepare($sql);
  7. /* Establezco los parametros */
  8. $consulta->bindParam(':titulo',$titulo);
  9. $consulta->bindParam(':link',$link);
  10. $consulta->bindParam(':contenido',$contenido);
  11. foreach($xml->item as $noticia){
  12. /* Para cada elemento item del XML extraigo los elementos hijos, luego saco la informacion a traves de los nodos del documento XML y aplico addslashes para sanizar el texto para evitar \' y \" ya que la consulta SQL fallaria */
  13. $titulo = addslashes($noticia->title);
  14. $link = addslashes($noticia->link);
  15. $contenido = addslashes($noticia->description);
  16. /* Ejecuto la consulta */
  17. $consulta->execute();
  18. echo "Insertada NOTICIA a la BD <br/>";
  19. }
  20.  
  21.  
Si me publicas la estructura DOM del archivo XML puedo intentar modificarlo a tu ejemplo


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
como meter, varios vcd´s en un dvd
Multimedia
uce 7 2,596 Último mensaje 26 Marzo 2004, 21:31 pm
por Songoku
Como meter varios or en un if
Scripting
edunardo 2 3,657 Último mensaje 28 Enero 2009, 05:12 am
por leogtz
Buscar links y meter en un array!
PHP
A2Corp 3 2,943 Último mensaje 11 Mayo 2010, 06:03 am
por A2Corp
Detectar Links y meter en un array « 1 2 »
PHP
Auton 11 4,628 Último mensaje 25 Junio 2011, 17:16 pm
por ~ Yoya ~
ayuda con consulta a base de datos y foreach
.NET (C#, VB.NET, ASP)
slipeer 3 2,567 Último mensaje 1 Agosto 2011, 12:00 pm
por slipeer
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines