Home
|
PHP
|
ASP.NET
|
ASP
|
JSP
Share The Love
Web Apps
& Components
Tutorials
Books
Community
Directories
---------------
All of PHP
Within Category
You are 1 of 30 Active PHP Visitors
PHP Home
|
Resources
|
Write a Review
|
My Favor-Its
|
Login
Web Applications
(8838)
Libraries & Component
(2369)
PHP Web Hosting
(418)
Software & Server
(479)
Code Snips & Functions
(208)
Tutorials & Reference
(2923)
PHP Community
(93)
Wikipedia Reflection
Code Snippet
Read Reviews
|
Report Errors
[+]
[+]
0
Reviews
1
Favor-It
This script will allow you to display wikipedia content on your site, just place it wherever you want the content to be displayed.
Code:
PHP 4.0
Code Snippet
Code Written By:
Tomáš J. Fülöpp
from
www.vacilando.org
<? # Wiki Reflection Version: 2.3 ( see http://www.vacilando.org/index.php?x=7065 ) # Open source license: GPL # Make sure to force Unicode for Wikipedia content -- otherwise all foreign scripts will display utter nonsense. This should of course be in your header, though my experimenting shows it may as well stay right here. echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'; # Make sure images do not display with a border. echo '<style TYPE="text/css"> <!-- img{border: 0 none;} --> </STYLE>'; $default_title = 'Vacilando'; # If you do not specify a title, this will be your default page. $sourceurl = 'http://en.wikipedia.org/wiki/'; # This URL needs adjusting sometimes. $pathfromroot = substr( $_SERVER['REQUEST_URI'], 0, strpos( $_SERVER['REQUEST_URI'], "?" ) ); $title_wiki = $_GET['title']; if ($title_wiki == "") { $title_wiki = $default_title; } $nicetitle = str_replace( "_", " ", stripslashes( $title_wiki ) ); function callback( $buffer ) { global $nicetitle; global $title_wiki; global $sourceurl; # Separate the article content $buffer = substr( $buffer, strpos( $buffer, '<!-- start content -->' ) ); $buffer = substr( $buffer, 0, strpos( $buffer, '<div class="printfooter">' ) ); # Replace relative links (use another wiki server) $buffer = str_replace( '"/w/skin', '"http://en.wikipedia.org/w/skin', $buffer ); $buffer = str_replace( '"/skins', '"http://en.wikipedia.org/skins', $buffer ); # Replace relative links (use this server) $buffer = str_replace( '"/wiki/', '"' . $pathfromroot . '?title=', $buffer ); # Remove edit links $buffer = str_replace( ">edit<", "><", $buffer ); $buffer = str_replace( "[<", "<", $buffer ); $buffer = str_replace( ">]", ">", $buffer ); $buffer = str_replace( 'href="/w/index.php?', 'target="_blank" href="http://en.wikipedia.org/w/index.php?', $buffer ); # These are typically links to non-existent pages, so the Wikipedia edit page has to open. if ( $buffer <> '' ) { $buffer = '<table width=100% cellspacing=0 cellpadding=1 bgcolor="#EEEEEE" border=0><tr><td> <p><font size="+2"><b>' . $nicetitle . '</b> <sup><a href="http://en.wikipedia.org/w/index.php?title=' . $title_wiki . '&action=edit" title="Edit this article at Wikipedia" target="_blank"><font color="red" size="-1">edit</font></a></sup></font> <br><i><small>extracted from </small><a href="http://www.wikipedia.org" target="_blank"><small>Wikipedia, the Free Encyclopedia</small></a><small> (using <a href="http://www.vacilando.org/index.php?x=7065"><small>Wikipedia Reflection Script</small></a>)</small></i></td> <td><form method="get"><br><input type="text" name="title" size="30"> <input type="submit" value="search"></form></td> <td><div align="right"><a href="http://www.gnu.org/copyleft/fdl.html" target="_blank"><img src="_misc/gnu-fdl.png" border="0"></a></div></td></tr></table><p>' . $buffer; } else { $buffer = '<p>Unfortunately, no content could be extracted! <p><a href="javascript:history.go(-1)">Return to the previous page</a> or consult the <a target="_blank" href="' . $sourceurl . $title_wiki . '">Wikipedia article on "' . $nicetitle . '"</a>.'; } return $buffer; } # Your page header comes here...' ob_start("callback"); #include $sourceurl . $title_wiki; $cuu = new CURL; echo $cuu -> get( $sourceurl . $title_wiki ); ob_end_flush(); # Your page footer comes here...' # Define the cURL class: class CURL { var $callback = false; function setCallback($func_name) { $this->callback = $func_name; } function doRequest($method, $url, $vars) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); #curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); #curl_setopt($ch, CURLOPT_USERAGENT, 'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); if ($method == 'POST') { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $vars); } $data = curl_exec($ch); curl_close($ch); if ($data) { if ($this->callback) { $callback = $this->callback; $this->callback = false; return call_user_func($callback, $data); } else { return $data; } } else { return curl_error($ch); } } function get($url) { return $this->doRequest('GET', $url, 'NULL'); } function post($url, $vars) { return $this->doRequest('POST', $url, $vars); } } ?>
To use the code above,
click and drag your mouse over the code to highlight it. Then right click on the highlighted code and click "Copy." Now you may paste it into your code editor.
Submit Your Own Code to Codango
Link to Us
|
About Us
Advertise
|
Contact Us
|
Website Help
Write
a User Review Today!
Its Fun, Fast, and Easy!
Codango Home
|
PHP
|
ASP.NET
|
ASP
|
JSP
Advertise With Us
|
About Us
|
Terms of Use
|
Privacy Policy
© 2013
ezd.com
, All rights reserved