PHP Link Parsing
Hey I'm fairly new to PHP and I'm having trouble getting links to parse on this page. For some reason 1 won't display, then other tags will. This feels like it should be a simple fix, or a shove in the right direction would be very useful.
Here is the script running live
Main File :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title><!-- Insert your title here --></title>
<?php include("php/scripttest.php"); ?>
</head>
<body>
<?php
for($x=0;$x<count($story_array);$x++){
echo "\t<ul>";
echo "\t<li>" . $story_array[$x]->headline . "</li>\n";
echo "\t<li>" . $story_array[$x]->test . "</li>\n";
echo "\t<li>" . $story_array[$x]->description . "</li>\n";
echo "</ul>\n";
}
?>
</body>
</html>
PHP Script :
<?php
$xml_file = "xml/portfolio.xml";
$xml_headline_key = "*PORTFOLIO*PROJECT*TITLE";
$xml_test_key = "*PORTFOLIO*PROJECT*LINK";
$xml_description_key = "*PORTFOLIO*PROJECT*DESCRIPTION";
$story_array = array();
$counter = 0;
function startTag($parser, $data){
global $current_tag;
$current_tag .= "*$data";
}
function endTag($parser, $data){
global $current_tag;
$tag_key = strrpos($current_tag, '*');
$current_tag = substr($current_tag, 0, $tag_key);
}
function contents($parser, $data){
global $current_tag, $xml_headline_key, $xml_test_key, $xml_description_key, $counter, $story_array;
switch($current_tag){
case $xml_headline_key:
$story_array[$counter]->headline = $data;
break;
case $xml_test_key:
$story_array[$counter]->test = $data;
break;
case $xml_description_key:
$story_array[$counter]->description = $data;
$counter++;
break;
}
}
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startTag", "endTag");
xml_set_character_data_handler($xml_parser, "contents");
$fp = fopen($xml_file, "r") or die("Could not open file");
$data = fread($fp, filesize($xml_file)) or die("Could not read file");
if(!(xml_parse($xml_parser, $data, feof($fp)))){
die("Error on line " . xml_get_current_line_number($xml_parser));
}
xml_parser_free($xml_parser);
fclose($fp);
?>
Found the answer as soon as I spoke up. The best answer is to follow the simple tutorial at W3CSchools. No parsing problems and a much simpler script. Hopefully this can be of use to someone.
Thread Information
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)
Tags for this Thread
Posting Permissions
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
Forum Rules
Bookmarks