数据库信息进入Facebook页面标签? XML和cURL

时间:2012-11-16 01:54:41

标签: php mysql xml facebook curl

我正在尝试创建一个简单的Facebook页面标签,用于从我的数据库中检索当前信息。我很快就了解到跨站脚本无法正常工作,因为实际网站上的工作演示效果很好,但在heroku上没有产生任何结果。

这是我现在在heroku中所拥有的。如何在页面返回结果之前对页面进行卷曲处理?

<?php
$curl = curl_init();
curl_setopt ($curl, CURLOPT_URL, 'http://www.url.com/output.html');

$result = curl_exec ($curl);
curl_close ($curl);

print $result;
?>

以下是创建位于我的网络服务器上的格式化XML的页面:

<?php
require_once('connectDB.php');
$xslt_file = "xmlstyle.xsl";

mysql_select_db($database_DB, $db);

$query = sprintf("SELECT * from db");
$result = mysql_query($query, $db) or die(mysql_error());

header("Content-type: text/xml");
$XML = "<?xml version=\"1.0\"?>\n";
if ($xslt_file) $XML .= "<?xml-stylesheet href=\"$xslt_file\" type=\"text/xsl\" ?>";

// root node
$XML .= "<result>\n";
// rows
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {    
  $XML .= "\t<row>\n"; 
  $i = 0;
  // cells
  foreach ($row as $cell) {
    // Escaping illegal characters - not tested actually ;)
    $cell = str_replace("&", "&amp;", $cell);
    $cell = str_replace("<", "&lt;", $cell);
    $cell = str_replace(">", "&gt;", $cell);
    $cell = str_replace("\"", "&quot;", $cell);
    $col_name = mysql_field_name($result,$i);
    // creates the "<tag>contents</tag>" representing the column
    $XML .= "\t\t<" . $col_name . ">" . $cell . "</" . $col_name . ">\n";
    $i++;
  }
  $XML .= "\t</row>\n"; 
 }
$XML .= "</result>\n";
// output the whole XML string
echo $XML;
?>

我确信我已经使整个事情变得复杂,但尝试使其发挥作用有点令人愉快。如果有一个更简单的方法来获得相同的结果,我会全力以赴。提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用RETURNTRANSFER选项:

//Set curl to return the page instead of sending it to the browser
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

<强>参考