aboutsummaryrefslogtreecommitdiff
path: root/engine/classes/JoinQueryComponent.php
diff options
context:
space:
mode:
Diffstat (limited to 'engine/classes/JoinQueryComponent.php')
-rw-r--r--engine/classes/JoinQueryComponent.php33
1 files changed, 33 insertions, 0 deletions
diff --git a/engine/classes/JoinQueryComponent.php b/engine/classes/JoinQueryComponent.php
new file mode 100644
index 000000000..8300cf710
--- /dev/null
+++ b/engine/classes/JoinQueryComponent.php
@@ -0,0 +1,33 @@
+<?php
+/**
+ * @class JoinQueryComponent Join query.
+ * Represents a join query.
+ * @author Curverider Ltd
+ * @see Query
+ */
+class JoinQueryComponent extends QueryComponent
+{
+ /**
+ * Construct a join query.
+ * @param string $table Table one to join...
+ * @param string $field Field 1 with...
+ * @param string $table2 Table 2 ...
+ * @param string $field2 Field...
+ * @param string $operator Using this operator
+ */
+ function __construct($table1, $field1, $table2, $field2, $operator = "=")
+ {
+ global $CONFIG;
+
+ $this->table1 = $CONFIG->dbprefix . sanitise_string($table1);
+ $this->field1 = sanitise_string($field1);
+ $this->table2 = $CONFIG->dbprefix . sanitise_string($table2);
+ $this->field2 = sanitise_string($field2);
+ $this->operator = sanitise_string($operator);
+ }
+
+ function __toString()
+ {
+ return "join {$this->table2} on {$this->$table}.{$this->$field} {$this->$operator} {$this->$table2}.{$this->$field2}";
+ }
+}