Hi David,
I ran the demo for this XML url: {link saved} and using the results I've created the following SQL PHP page but when I run it, it doesn't insert any data?
Could this be due to & characters in fields?
<?php
require("MagicParser.php");
mysql_connect("xxxx","xxx","xxxx") or die(mysql_error());
mysql_select_db("xxxx") or die(mysql_error());
$counter = 0;
function myRecordHandler($whill)
{
global $counter;
global $sql;
$counter++;
$sql = "INSERT INTO xxxxx SET
leagueid='".mysql_real_escape_string($whill["LEAGUE-IDLEAGUE"])."',
sportid='".mysql_real_escape_string($whill["LEAGUE-IDSPORT"])."',
description='".mysql_real_escape_string($whill["LEAGUE-DESCRIPTION"])."',
vtm='".mysql_real_escape_string($whill["BANNER-VTM"])."',
gamedesc='".mysql_real_escape_string($whill["GAME-GMDT"])."',
gamedate='".mysql_real_escape_string($whill["GAME-GMTM"])."',
gametime='".mysql_real_escape_string($whill["GAME-VTM"])."',
gamevisitor='".mysql_real_escape_string($whill["GAME-HTM"])."',
gamehome='".mysql_real_escape_string($whill["GAME/LINE-VSPRDH"])."',
visitorodds='".mysql_real_escape_string($whill["GAME/LINE-HSPRDH"])."',
homeodds='".mysql_real_escape_string($whill["GAME@1-GMDT"])."',
game1date='".mysql_real_escape_string($whill["GAME@1-GMTM"])."',
game1time='".mysql_real_escape_string($whill["GAME@1-VTM"])."',
game1visitor='".mysql_real_escape_string($whill["GAME@1-HTM"])."',
game1home='".mysql_real_escape_string($whill["GAME/LINE@1-VSPRDH"])."',
game1visitorodds='".mysql_real_escape_string($whill["GAME/LINE@1-HSPRDH"])."',
game1homeodds='".mysql_real_escape_string($whill["GAME/LINE@1-HSPRDH"])."')";
mysql_query($sql);
}
mysql_query("TRUNCATE TABLE xxxxx");
MagicParser_parse("{link saved}","myRecordHandler","xml|DATA/LEAGUES/LEAGUE/");
print "<p>Processed ".$counter." records.</p>";
print "<p>Last SQL statement was: ".$sql."</p>";
print mysql_error();
echo "Data Inserted!";
exit()
?>
Hi,
That could imply that the database connection is being lost for some reason - what I would suggest is passing the $link value for each of the calls to the MySQL functions - have a go with the following;
<?php
require("MagicParser.php");
$link = mysql_connect("xxxxx","xxxxx","xxxxx") or die(mysql_error());
mysql_select_db("xxxxx",$link) or die(mysql_error($link));
$counter = 0;
function myRecordHandler($whill)
{
global $counter;
global $link;
$counter++;
$sql = "INSERT INTO xxxxx SET
leagueid='".mysql_real_escape_string($whill["LEAGUE-IDLEAGUE"],$link)."',
sportid='".mysql_real_escape_string($whill["LEAGUE-IDSPORT"],$link)."',
description='".mysql_real_escape_string($whill["LEAGUE-DESCRIPTION"],$link)."',
vtm='".mysql_real_escape_string($whill["BANNER-VTM"],$link)."',
gamedesc='".mysql_real_escape_string($whill["GAME-GMDT"],$link)."',
gamedate='".mysql_real_escape_string($whill["GAME-GMTM"],$link)."',
gametime='".mysql_real_escape_string($whill["GAME-VTM"],$link)."',
gamevisitor='".mysql_real_escape_string($whill["GAME-HTM"],$link)."',
gamehome='".mysql_real_escape_string($whill["GAME/LINE-VSPRDH"],$link)."',
visitorodds='".mysql_real_escape_string($whill["GAME/LINE-HSPRDH"],$link)."',
homeodds='".mysql_real_escape_string($whill["GAME@1-GMDT"],$link)."',
game1date='".mysql_real_escape_string($whill["GAME@1-GMTM"],$link)."',
game1time='".mysql_real_escape_string($whill["GAME@1-VTM"],$link)."',
game1visitor='".mysql_real_escape_string($whill["GAME@1-HTM"],$link)."',
game1home='".mysql_real_escape_string($whill["GAME/LINE@1-VSPRDH"],$link)."',
game1visitorodds='".mysql_real_escape_string($whill["GAME/LINE@1-HSPRDH"],$link)."',
game1homeodds='".mysql_real_escape_string($whill["GAME/LINE@1-HSPRDH"],$link)."')";
mysql_query($sql,$link) or die(mysql_error($link));
}
mysql_query("TRUNCATE TABLE xxxxx");
MagicParser_parse("xxxxx","myRecordHandler","xml|DATA/LEAGUES/LEAGUE/");
print "<p>Processed ".$counter." records.</p>";
print "<p>Last SQL statement was: ".$sql."</p>";
print mysql_error();
echo "Data Inserted!";
exit()
?>
If still no joy, if you could submit the feed as a Get It Coded request for Insert into a MySQL database i'll forward my standard MySQL example customised for this feed to you...
Cheers,
David
--
MagicParser.com
Thanks Dave,
That didn't work so I have lodged it as a "Get it Coded" for SQL
Thanks
Jason
Hi,
Structure looks OK - how many records does your script indicated were processed at the end?
I presume there is no output from mysql_error()?
Cheers,
David
--
MagicParser.com