// lump.php - Lightweight Unicode Map/Picker by CJB
$copy=2006; $auth="Christian van den Bosch"; $lic="GPLv2";
$title="Lump (Lightweight Unicode Map/Picker)";
// generate char tables on client, getting char names from server via XML if possible.
// fail over to server-side generated table if js is absent.
header('Cache-Control: max-age:86400');
if(isset($_GET['P'])) // are we generating XML character name list?
{ preg_match('/[0-9]+/',$p=$_GET['P']) or die;
$maxch=$minch=$p*512;
header('Content-Type: text/xml');
require 'project/db.php';
$result=mysql_query("SELECT * FROM unichars WHERE num>=$minch AND num<=$minch+511 ORDER BY num ASC;") or die;
while( $row=mysql_fetch_assoc( $result ) )
$descrs[$maxch=$row['num']] = $row['desc'];
echo "\n\n";
// output up to 512 descs in sequence. stop at last non-empty one.
for($i=$minch;$i<=$maxch;++$i)
echo isset($descrs[$i]) ? (''.htmlentities($descrs[$i])."\n") : "\n";
die("\n");// XML all done
}
// fall through to generate HTML
header(($ct='Content-Type').': '.($cs='text/html; charset=utf-8')); // absolutely vital for this page!
$ssn=$_SERVER['SCRIPT_NAME'];
?>