Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] problemas con nodo para insertar RSS en mysql

Estas en el tema de problemas con nodo para insertar RSS en mysql en el foro de PHP en Foros del Web. Hola a todos, me estoy volviedo loco con un nodo RSS, el problema es el siguiente: Si el nodo se llama <title> por ejemplo me ...
  #1 (permalink)  
Antiguo 18/02/2011, 09:00
 
Fecha de Ingreso: febrero-2011
Mensajes: 6
Antigüedad: 13 años, 9 meses
Puntos: 0
problemas con nodo para insertar RSS en mysql

Hola a todos, me estoy volviedo loco con un nodo RSS, el problema es el siguiente:
Si el nodo se llama <title> por ejemplo me va perfecto y me mete todos los datos de ese nodo en la base de datos el problema es cuando pongo un nodo con DOS PUNTOS por ejemplo: <dc:creator> entonces siempre que pongo un nodo que use dos puntos pues no me ingresa nada, os pongo parte del código:

foreach ($documento->getElementsByTagName('item') as $nodo) {

$itemRSS = array (
'title' => $nodo->getElementsByTagName('title')->item(0)->nodeValue,
'link' => $nodo->getElementsByTagName('link')->item(0)->nodeValue,
'foto' => $nodo->getElementsByTagName('dc:creator')->item()->nodeValue,
'trailer' => $nodo->getElementsByTagName('trailer')->item(0)->nodeValue

);
array_push($arrayRss, $itemRSS);

Pos bien si lo pongo así me inserta todos menos ese...
Alguna idea...
me esta volviendo loco...
gracias de inicio chicos!
  #2 (permalink)  
Antiguo 18/02/2011, 09:06
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: problemas con nodo para insertar RSS en mysql

Saludos

Podrías indicarnos la estructura de los nodos como estan
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 18/02/2011, 09:11
 
Fecha de Ingreso: febrero-2011
Mensajes: 6
Antigüedad: 13 años, 9 meses
Puntos: 0
<item>
<title>gdfgdfg</title>
<link>http://www.dgdfg.com</link>
<dc:creator>dfgdfg.com</dc:creator>
<description>fdgdfgdfgdfgdfg</description>
<category><![CDATA[sdfsdf.com]]></category>
<guid isPermaLink="false">383</guid>
<pubDate>2011-02-17 00:00:00</pubDate>
<content:encoded><![CDATAfggfgfgdfgg>>]]></content:encoded>
<trailer>http://dfdfdfgsas.flv</trailer>
</item>


algo asi,

Alguna idea nano_ ?
es algo extraño no?
necesitas mas informacion?

Última edición por GatorV; 18/02/2011 a las 09:48
  #4 (permalink)  
Antiguo 18/02/2011, 09:31
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: problemas con nodo para insertar RSS en mysql

Saludos

Prueba de la siguiente manera:

Código PHP:
Ver original
  1. 'foto' => $nodo->getElementsByTagName('dc:creator')->item(0)->nodeValue,
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #5 (permalink)  
Antiguo 18/02/2011, 09:34
 
Fecha de Ingreso: febrero-2011
Mensajes: 6
Antigüedad: 13 años, 9 meses
Puntos: 0
'foto' => $nodo->getElementsByTagName('dc:creator')->item(0)->nodeValue,

Si perdona... asi es como lo tengo se me olvido escribirlo arriba...
Pero de esta forma no me funciona.

:(

Lo raro es eso... que no me reconoce los :

te pongo el codigo entero?

alguien a tenido este problema con los : ? talvez puedan decirme otra forma de insertar RSS en MySql... pq ya me toy volviendo loco...

Última edición por GatorV; 18/02/2011 a las 10:33
  #6 (permalink)  
Antiguo 18/02/2011, 10:11
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: problemas con nodo para insertar RSS en mysql

Saludos

Si pruebas de la siguiente manera:

Código PHP:
Ver original
  1. $records = $dom->documentElement->getElementsByTagName('item');
  2. foreach($records as $record) {
  3.    $children = $record->childNodes;
  4.    foreach($children as $child) {
  5.       echo $child->nodeName;
  6.    }
  7. }
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #7 (permalink)  
Antiguo 18/02/2011, 10:22
 
Fecha de Ingreso: febrero-2011
Mensajes: 6
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: problemas con nodo para insertar RSS en mysql

pero no entiendo a que te refieres, como lo aplicaria?
mira te dejo el codigo completo mejor...

<?php
include('config.php');
$rssUrl = 'http://www.aquimixml.com/XML/';
$documento = new DOMDocument();
$documento->load($rssUrl);

$arrayRss = array();

foreach ($documento->getElementsByTagName('item') as $nodo) {

$itemRSS = array (
'title' => $nodo->getElementsByTagName('title')->item(0)->nodeValue,
'link' => $nodo->getElementsByTagName('link')->item(0)->nodeValue,
'foto' => $nodo->getElementsByTagName('dc:creator')->item(0)->nodeValue,
'trailer' => $nodo->getElementsByTagName('trailer')->item(0)->nodeValue

);
array_push($arrayRss, $itemRSS);


$records = $dom->documentElement->getElementsByTagName('item');
foreach($records as $record)
{
$children = $record->childNodes;
foreach($children as $child)
{
echo $child->nodeName;
}
}


$e = "'";
foreach($arrayRss as $arrayItem)
{
$title = strip_tags($arrayItem['title']);
$title2 = str_replace(array(',', '"', $e), '', $title);

$link = strip_tags($arrayItem['link']);
$link2 = str_replace(array(',', '"', $e), '', $link);

$foto = $arrayItem['foto'];
$foto2 = str_replace(array(',', '"', $e), '', $foto);

$trailer = $arrayItem['trailer'];
$trailer2 = str_replace(array(',', '"', $e), '', $trailer);

}
// Inserta el libro en la tabla
$sql = "INSERT INTO videos ".
"(primero, segundo, tercero, cuarto)".
" VALUES ('$title2','$link2','$foto2','$trailer2')";

// Ahora ejecutamos el INSERT en la BD
$result = mysql_query($sql) or die(mysql_error());
}


?>

Etiquetas: mysql, nodo, rss
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 11:07.