Template talk:Fnord
From S23Wiki
Contents |
[edit] How this works
[edit] Created mysql table
CREATE TABLE `fnord` ( `id` int(11) NOT NULL auto_increment, `text` varchar(255) default NULL, PRIMARY KEY (`id`) ) TYPE=MyISAM;
[edit] Made fnord.sql import file
Using UltraEdit Macros i added insert into fnord.fnord (text) values (" to the start and "); to the end of every line from this file.
[edit] Imported into wikidb.fnord
mysql -u root -p wikidb < fnord.sql
[edit] Made Fnord Mediawiki extension
<?php
# Fnord Mediawiki extension
# display random fnord definitions in wiki pages using a <fnord> tag
# inside a {{Template:Fnord}}
# input can be used for LIMITing the mysql random select (later)
# by mutante 17.04.2005
$wgExtensionFunctions[] = "wfFnordExtension";
function wfFnordExtension() {
global $wgParser;
$wgParser->setHook( "fnord", "renderFnord" );
}
function renderFnord( $input ) {
$input = mysql_escape_string($input);
# check if input is integer else set to 1
if (is_int($input)){
$limit = $input;
} else {
$limit = 1;
}
$hd = mysql_connect("localhost", "wikiuser", "PASSWORD") or die ("Unable to connect");
mysql_select_db ("wikidb", $hd) or die ("Unable to select database");
$res = mysql_query("SELECT * from fnord ORDER BY rand() LIMIT 0,$limit", $hd) or die ("Unable to run query");
while ($row = mysql_fetch_assoc($res))
{
$id = $row["id"];
$fnord = $row["text"];
}
$output = " $fnord ((K)fnord_id #$id))";
return $output;
}
?>
put this into /var/www/wiki/extensions/ as FnordExtension.php
[edit] Included extension in LocalSettings
Added include("extensions/FnordExtension.php"); to the end of /var/www/wiki/LocalSettings.php
[edit] Result - Random Fnords
<fnord> =
Fnord is the redundant coin slot on arcade games. ((K)fnord_id #57))

