Mrbagino Posted December 1, 2012 Share Posted December 1, 2012 Dear all, I have some problem with my php code i try to make some XML and PHP Content managmant system, but i have now some problem with the root? He give the next error: Fatal error: Call to a member function root() on a non-object in /home/......./public_html/searchArticles.php on line 29 See here my code please: <?php session_start(); $results = array(); //this is a very simple, potentially very slow search function extractText($array){ if(count($array) <= 1){ //we only have one tag to process! for ($i = 0; $i<count($array); $i++){ $node = $array[$i]; $value = $node->get_content(); } return $value; } } $dh = opendir('./xml/'); while ($file = readdir($dh)){ if (eregi("^\\.\\.?$", $file)) { continue; } $open = "./xml/".$file; $xml = "domxml_open_file" .$open; //we need to pull out all the things from this file that we will need to //build our links $root = $xml->root("id"); $id = $root->get_attribute("id"); $stat_array = $root->get_elements_by_tagname("status"); $status = extractText($stat_array); $k_array = $root->get_elements_by_tagname("keywords"); $keywords = extractText($k_array); $h_array = $root->get_elements_by_tagname("headline"); $headline = extractText($h_array); $ab_array = $root->get_elements_by_tagname("abstract"); $abstract = extractText($ab_array); if ($status != "live"){ continue; } if (eregi($searchTerm, $keywords) or eregi($searchTerm,$headline)){ $list['abstract'] = $abstract; $list['headline'] = $headline; $list['file'] = $file; $results[] = $list; } } $results = array_unique($results); ?> <h1>Search Results</h1> <a href="index.php">back to main</a> <p>You searched for: <i><?php echo $searchTerm ?></i></p> <hr> <?php if (count($results)>0){ echo "<p>Your search results:</p>"; foreach ($results as $key => $listing){ echo "<br><a href=\"showArticle.php?file=".$listing["file"]."\">" . $listing["headline"]."</a>\n"; echo "<br>". $listing["abstract"]; echo "<br>"; } } else { echo "<p>Sorry, no articles matched your search term.</p>"; } ?> I hope for some sugestions, Thanks a lot! Link to comment https://forums.phpfreaks.com/topic/271446-my-php-code-give-some-strange-problem/ Share on other sites More sharing options...
Barand Posted December 1, 2012 Share Posted December 1, 2012 You should have this instead - call a function instead of just creating a string $xml = domxml_open_file($open); Link to comment https://forums.phpfreaks.com/topic/271446-my-php-code-give-some-strange-problem/#findComment-1396724 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.