add searchpattern
This commit is contained in:
@@ -61,6 +61,12 @@ class PisSqlManager extends SQLManager {
|
||||
* @var string
|
||||
*/
|
||||
private static $orderByTerm = " ORDER BY pid, iName";
|
||||
|
||||
/**
|
||||
* String for like-Statement fo iValue field
|
||||
* @var string
|
||||
*/
|
||||
private static $iValueLikeTerm = "iValue LIKE ";
|
||||
|
||||
/**
|
||||
* String for the pid part of the query
|
||||
@@ -74,6 +80,12 @@ class PisSqlManager extends SQLManager {
|
||||
*/
|
||||
private static $iNameTerm = "iName = ";
|
||||
|
||||
/**
|
||||
* Variable for the max lenght of an valid pattern string
|
||||
* @var int
|
||||
*/
|
||||
private static $patterMaxLenght = 30;
|
||||
|
||||
/**
|
||||
* Default-Constructor
|
||||
*/
|
||||
@@ -93,7 +105,7 @@ class PisSqlManager extends SQLManager {
|
||||
* @param array $queryArgs
|
||||
* @return array [num][assoc]
|
||||
*/
|
||||
public function sendPisQuery($pidList, $iNameList) {
|
||||
public function sendPisQuery($pidList, $iNameList, $iPatter = "*") {
|
||||
|
||||
// build query string
|
||||
$query = self::$selectTerm;
|
||||
@@ -114,15 +126,35 @@ class PisSqlManager extends SQLManager {
|
||||
$query .= self::$closeBracket;
|
||||
}
|
||||
|
||||
if ($iPatter != "*" && $this->validIPatter($iPatter)) {
|
||||
if ($query != self::$selectTerm) {
|
||||
$query .= self::$andTerm;
|
||||
}
|
||||
$query .= self::$iValueLikeTerm ."'%$iPatter%'";
|
||||
}
|
||||
|
||||
if ($query == self::$selectTerm) {
|
||||
$query = self::$selectAllTerm;
|
||||
}
|
||||
|
||||
$query .= self::$orderByTerm;
|
||||
|
||||
// send query
|
||||
return $this->query($query);
|
||||
}
|
||||
|
||||
/**
|
||||
* Method check if the input value for pattern string is valid
|
||||
* @param string $domain
|
||||
* @return boolean
|
||||
*/
|
||||
private function validIPatter($iPatter) {
|
||||
if (\utiliy\StringManager::validSQLString($iPatter) && ctype_alnum($iPatter) && strlen($iPatter) <= self::$patterMaxLenght) {
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user