Beste,
Ik ben zojuist bezig met het opbouwen van een xml script maar heb echt een vage
fout waar totaal niet uitkom alles wordt succesvol in de db gezet behalve de thumbs.
Kunnen jullie zien wat ik verkeerd heb gedaan want ik ben echt helemaal vast gelopen.
De persoon die met de foutmelding komt en een uitlegt krijgt 5 euro van mij.
Het script.
Voor dit script heb ik een simple xml script gebruikt om de namen te kunnen bekijkenPHP Code:
# XML ophalen
$xml = simplexml_load_file("http://contentfeed.vpscash.nl/xml/episodes/be8abfacbfd9022173730c7ee15d9ff3/?p=11492&pi=");
# Controleren op een lege file
if(empty($xml))
{
echo "er gaat iets verkeerd";
die();
}
else
{
# XML 1e laag: website
foreach($xml->website as $xml2)
{
# XML 2e laag: episode
foreach($xml2->episode AS $row)
{
# SQL aanmaken
$sql = "INSERT INTO video
(website, episode, publish_date, taal, thumbs, titel_google, verhaal_google, url_trailer_flv, url_voice,
speelduur, hoofdrollen) VALUES
('".mysql_real_escape_string($xml2['id'])."',
'".mysql_real_escape_string($row['id'])."',
'".mysql_real_escape_string($row->publish_date)."',
'".mysql_real_escape_string($row->taal)."',
'".mysql_real_escape_string($row->thumbs)."',
'".mysql_real_escape_string($row->titel_google)."',
'".mysql_real_escape_string($row->verhaal_google)."',
'".mysql_real_escape_string($row->url_trailer_flv)."',
'".mysql_real_escape_string($row->url_voice)."',
'".mysql_real_escape_string($row->speelduur)."',
'".mysql_real_escape_string($row->hoofdrollen)."')";
# Query uitvoeren
if(!$res = mysql_query($sql))
{
trigger_error(mysql_error().'<br />In query: '.$sql);
}
}
}
}
echo "succesvol";
die kan je bewonderen op http://tinyurl.com/35uoycv
mvg,
Wesley
- Deadline vandaag nog (xmlscript)
-
420 × bekeken sinds 02-08-2010, 14:45 #1
Deadline vandaag nog (xmlscript)
-
-
02-08-2010, 14:49 #2
- Berichten
- 990
- Lid sinds
- 17 Jaar
ik denk een typo...
er staat dit..
[name] => thumbs
[thumb] => Array
?? s'je vergeten ?
-
02-08-2010, 14:53 #3
- Berichten
- 145
- Lid sinds
- 18 Jaar
Ray, die fout had al eerder bewust gemaakt beide werken niet.
-
02-08-2010, 14:58 #4
- Berichten
- 990
- Lid sinds
- 17 Jaar
en hij staat ook goed in de sql bij video, gezien hij alles wel goed erin zet, behalve die tumbs.
Wat ik soms die is de boel echo'en om te zien of er echt wel een waarde is die in de sql gezet moet worden, misschien een idee...
-
02-08-2010, 14:59 #5
- Berichten
- 3.430
- Lid sinds
- 16 Jaar
Thumbs is een array en geen string zoals de andere variabelen die gebruikt worden voor je query. Je kan thumbs serializen of ze imploden (implode(<glue>, <pieces>)). Gebruik dus niet $row->thumb, want dat geeft natuurlijk niet alle thumbs. Je kan bijvoorbeeld dus implode('|', $row->thumbs) gebruiken.
Laatst aangepast door Jesper van E. : 02-08-2010 om 16:21
-
02-08-2010, 15:03 #6
- Berichten
- 145
- Lid sinds
- 18 Jaar
Ray hij staat goed bij de sql video hij geeft hem niet weer als ik hem echo maar de rest geeft die wel weer ik gebruik nu de code voor de thumb
PHP Code:'".mysql_real_escape_string($row->thumb)."'
Wesley
-
02-08-2010, 15:07 #7
- Berichten
- 990
- Lid sinds
- 17 Jaar
in de xml script roept die eerst thumbs aan en daarna thumb kan het misschien daaraan liggen ?
-
02-08-2010, 15:11 #8
- Berichten
- 145
- Lid sinds
- 18 Jaar
Het script wat ik nu heb
PHP Code:# Foutmeldingen ON
error_reporting(E_ALL);
# XML ophalen
$xml = simplexml_load_file("http://contentfeed.vpscash.nl/xml/episodes/be8abfacbfd9022173730c7ee15d9ff3/?p=11492&pi=");
# Controleren op een lege file
if(empty($xml))
{
echo "er gaat iets verkeerd";
die();
}
else
{
# XML 1e laag: website
foreach($xml->website as $xml2)
{
# XML 2e laag: episode
foreach($xml2->episode AS $row)
{
# SQL aanmaken
$sql = "INSERT INTO video
(website, episode, publish_date, taal, thumb, titel_google, verhaal_google, url_trailer_flv, url_voice,
speelduur, hoofdrollen) VALUES
('".mysql_real_escape_string($xml2['id'])."',
'".mysql_real_escape_string($row['id'])."',
'".mysql_real_escape_string($row->publish_date)."',
'".mysql_real_escape_string($row->taal)."',
'".mysql_real_escape_string($row->thumb)."',
'".mysql_real_escape_string($row->titel_google)."',
'".mysql_real_escape_string($row->verhaal_google)."',
'".mysql_real_escape_string($row->url_trailer_flv)."',
'".mysql_real_escape_string($row->url_voice)."',
'".mysql_real_escape_string($row->speelduur)."',
'".mysql_real_escape_string($row->hoofdrollen)."')";
# Query uitvoeren
if(!$res = mysql_query($sql))
{
trigger_error(mysql_error().'<br />In query: '.$sql);
}
}
}
}
echo "succesvol";
-
02-08-2010, 16:22 #9
- Berichten
- 3.430
- Lid sinds
- 16 Jaar
Ik had even niet goed gekeken naar de XML en ik heb mijn bericht aangepast. Thumbs is een array met daarin dus alle thumbs.
Bericht aangepast naar:
Thumbs is een array en geen string zoals de andere variabelen die gebruikt worden voor je query. Je kan thumbs serializen of ze imploden (implode(<glue>, <pieces>)). Gebruik dus niet $row->thumb, want dat geeft natuurlijk niet alle thumbs. Je kan bijvoorbeeld dus implode('|', $row->thumbs) gebruiken.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic