summaryrefslogtreecommitdiffstats
path: root/paste/include/storage/MysqlStorage.php
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--paste/include/storage/MysqlStorage.php30
1 files changed, 17 insertions, 13 deletions
diff --git a/paste/include/storage/MysqlStorage.php b/paste/include/storage/MysqlStorage.php
index d15de55..f33db64 100644
--- a/paste/include/storage/MysqlStorage.php
+++ b/paste/include/storage/MysqlStorage.php
@@ -51,8 +51,16 @@ class MysqlStorage extends StorageEngine
$this->table = $table;
if (! $this->mysql->query("CREATE TABLE IF NOT EXISTS $table (
pid VARCHAR(40) PRIMARY KEY,
+nick VARCHAR(255),
+language VARCHAR(40),
content MEDIUMTEXT,
-FULLTEXT INDEX (content)
+description TEXT,
+remote VARCHAR(15),
+time TIMESTAMP,
+FULLTEXT INDEX (content),
+FULLTEXT INDEX (description),
+INDEX (language),
+INDEX (nick)
);"))
{
header('HTTP/1.0 503 Service Unavailable');
@@ -67,25 +75,21 @@ FULLTEXT INDEX (content)
$this->mysql->close();
}
- public function setContent($content)
+ public function setContent($content, $language, $nick, $description)
{
$name = sha1(date('r') . rand(1000, getrandmax()));
-
- if ($config['short_results_path']) {
- $urlbase = $config['short_results_path'];
- } else {
- $urlbase = $config['site_domain'] . $config['site_path'] . '/' . $config['results_dir'];
- }
- $content = $this->prepareContent($name, $urlbase . 'get.php?id=' . $name, $content);
-
if ($stmt = $this->mysql->prepare(
- 'INSERT INTO ? (pid, content) VALUES (?, ?)')) {
+ 'INSERT INTO ' . $this->table . ' (pid, nick, language, content, description, remote) VALUES (?, ?, ?, ?, ?, ?)')) {
/* bind parameters for markers */
- $stmt->bind_param("sb", $name, $content);
+ $stmt->bind_param('ssssss', $name, $nick, $language, $content, $description, $_SERVER["REMOTE_ADDR"]);
/* execute query */
- $stmt->execute();
+ if (!$stmt->execute()) {
+ header('HTTP/1.0 503 Service Unavailable');
+ die('MySQL Error (' . $this->mysql->errno . ') ' .
+ $this->mysql->error);
+ }
$stmt->close();
}