require 'pgdb.php'; function param($id) { return isset($_GET[$id]) ? pg_escape_string(urldecode($_GET[$id])) : false; } function quit($msg) { header("Content-Type: text/plain"); echo "{$msg}\n"; exit; } $db = new PGDB(); if (!$db->ok()) { quit("DB"); } $save = "SELECT urler_save('%s', '%s', '%s')"; $url = param("url"); $nick = param("nick"); $chan = param("chan"); if ($url) { $qrystr = sprintf($save, $url, $nick, $chan); if ($db->query($qrystr)) { $line = $db->getline(); quit($line["urler_save"]); } else { quit("Q"); } } else { header("Content-Type: application/xhtml+xml; charset=utf-8"); readfile("urler.xhtml"); }
<?php require 'pgdb.php'; function quit($data) { header("Content-Type: application/json"); echo json_encode($data); exit; } $db = new PGDB(); if (!$db->ok()) { quit(array(0 => "DB")); } $update = "SELECT urler_prune('%s')"; $load = "SELECT * FROM urler_log WHERE seen = 'false' ORDER BY at DESC"; $datetime = isset($_GET["seen"]) ? $_GET["seen"] : false; if ($datetime) { $qrystr = sprintf($update, pg_escape_string($datetime)); if ($db->query($qrystr)) { header("Location: /urler/"); } } elseif ($db->query($load)) { quit($db->getall()); } else { quit(array(0 => "Q")); }