本文整理汇总了PHP中rex_sql::getDBArray方法的典型用法代码示例。如果您正苦于以下问题:PHP rex_sql::getDBArray方法的具体用法?PHP rex_sql::getDBArray怎么用?PHP rex_sql::getDBArray使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rex_sql
的用法示例。
在下文中一共展示了rex_sql::getDBArray方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: addDBSqlOptions
/**
* Fügt Optionen anhand der Übergeben DBSQL-Select-Abfrage hinzu.
*/
function addDBSqlOptions($qry)
{
$sql = new rex_sql();
$this->addOptions($sql->getDBArray($qry, MYSQL_NUM));
}
示例2: rex_a62_metaFields
/**
* Erstellt den nötigen HTML Code um ein Formular zu erweitern
*
* @param $sqlFields rex_sql-objekt, dass die zu verarbeitenden Felder enthält
* @param $activeItem objekt, dass mit getValue() die Werte des akuellen Eintrags zurückgibt
* @param $formatCallback callback, dem die infos als Array übergeben werden und den formatierten HTML Text zurückgibt
*/
function rex_a62_metaFields($sqlFields, $activeItem, $formatCallback, $epParams)
{
global $I18N;
$s = '';
// Startwert für MEDIABUTTON, MEDIALIST, LINKLIST zähler
$media_id = 1;
$mlist_id = 1;
$link_id = 1;
$llist_id = 1;
$sqlFields->reset();
for ($i = 0; $i < $sqlFields->getRows(); $i++) {
// Umschliessendes Tag von Label und Formularelement
$tag = 'p';
$tag_attr = '';
$name = $sqlFields->getValue('name');
$title = $sqlFields->getValue('title');
$params = $sqlFields->getValue('params');
$typeLabel = $sqlFields->getValue('label');
$attr = $sqlFields->getValue('attributes');
$dblength = $sqlFields->getValue('dblength');
$dbvalues = array(htmlspecialchars($sqlFields->getValue('default')));
$dbvalues_esc = $dbvalues;
if ($activeItem) {
$itemValue = $activeItem->getValue($name);
if (strpos($itemValue, '|+|') !== false) {
// Alte notation mit |+| als Trenner
$dbvalues = explode('|+|', $activeItem->getValue($name));
} else {
// Neue Notation mit | als Trenner
$dbvalues = explode('|', $activeItem->getValue($name));
}
$dbvalues_esc = array_map('htmlspecialchars', $dbvalues);
}
if ($title != '') {
$label = htmlspecialchars(rex_translate($title));
} else {
$label = htmlspecialchars($name);
}
$id = preg_replace('/[^a-zA-Z\\-0-9_]/', '_', $label);
$attr .= rex_tabindex();
$labelIt = true;
$field = '';
switch ($typeLabel) {
case 'text':
$field = '<input type="' . $typeLabel . '" name="' . $name . '" value="' . $dbvalues_esc[0] . '" id="' . $id . ' "maxlength="' . $dblength . '" ' . $attr . ' />';
break;
case 'checkbox':
$name .= '[]';
case 'radio':
$values = array();
if (rex_sql::getQueryType($params) == 'SELECT') {
$sql = new rex_sql();
$value_groups = $sql->getDBArray($params, MYSQL_NUM);
foreach ($value_groups as $value_group) {
if (isset($value_group[1])) {
$values[$value_group[1]] = $value_group[0];
} else {
$values[$value_group[0]] = $value_group[0];
}
}
} else {
$value_groups = explode('|', $params);
foreach ($value_groups as $value_group) {
if (strpos($value_group, ':') !== false) {
$temp = explode(':', $value_group);
$values[$temp[0]] = $temp[1];
} else {
$values[$value_group] = $value_group;
}
}
}
$class = $typeLabel == 'radio' ? 'rex-rdo' : 'rex-chckbx';
$oneValue = count($values) == 1;
if (!$oneValue) {
$tag = '';
$labelIt = false;
$tag = 'div';
$tag_attr = ' class="rex-chckbxs rex-ptag"';
$field .= '<p>' . $label . '</p>';
}
foreach ($values as $key => $value) {
$id = preg_replace('/[^a-zA-Z\\-0-9_]/', '_', $id . $key);
$key = htmlspecialchars($key);
// wenn man keine Werte angibt (Boolean Chkbox/Radio)
// Dummy Wert annehmen, damit an/aus unterscheidung funktioniert
if ($oneValue && $key == '') {
$key = 'true';
}
$selected = '';
if (in_array($key, $dbvalues_esc)) {
$selected = ' checked="checked"';
}
if ($oneValue) {
//.........这里部分代码省略.........
示例3: rex_a62_metaFields
/**
* Erstellt den nötigen HTML Code um ein Formular zu erweitern
*
* @param $sqlFields rex_sql-objekt, dass die zu verarbeitenden Felder enthält
* @param $activeItem objekt, dass mit getValue() die Werte des akuellen Eintrags zurückgibt
* @param $formatCallback callback, dem die infos als Array übergeben werden und den formatierten HTML Text zurückgibt
*/
function rex_a62_metaFields($sqlFields, $activeItem, $formatCallback, $epParams)
{
global $I18N;
$s = '';
// Startwert für MEDIABUTTON, MEDIALIST, LINKLIST
$media_id = 1;
$mlist_id = 1;
$link_id = 1;
$sqlFields->reset();
for ($i = 0; $i < $sqlFields->getRows(); $i++) {
// Umschliessendes Tag von Label und Formularelement
$tag = 'p';
$tag_attr = '';
$name = $sqlFields->getValue('name');
$title = $sqlFields->getValue('title');
$params = $sqlFields->getValue('params');
$typeLabel = $sqlFields->getValue('label');
$attr = $sqlFields->getValue('attributes');
$dbvalues = array('');
if ($activeItem) {
$dbvalues = explode('|+|', $activeItem->getValue($name));
}
if ($title != '') {
$label = rex_translate($title);
} else {
$label = htmlspecialchars($name);
}
$id = preg_replace('/[^a-zA-Z\\-0-9_]/', '_', $label);
$attr .= rex_tabindex();
$labelIt = true;
$field = '';
switch ($typeLabel) {
case 'text':
$field = '<input type="' . $sqlFields->getValue('label') . '" name="' . $name . '" value="' . $dbvalues[0] . '" id="' . $id . '" ' . $attr . ' />';
break;
case 'checkbox':
$name .= '[]';
case 'radio':
$values = array();
if (rex_sql::getQueryType($params) == 'SELECT') {
$sql = new rex_sql();
$value_groups = $sql->getDBArray($params, MYSQL_NUM);
foreach ($value_groups as $value_group) {
if (isset($value_group[1])) {
$values[$value_group[1]] = $value_group[0];
} else {
$values[$value_group[0]] = $value_group[0];
}
}
} else {
$value_groups = explode('|', $params);
foreach ($value_groups as $value_group) {
if (strpos($value_group, ':') !== false) {
$temp = explode(':', $value_group);
$values[$temp[0]] = $temp[1];
} else {
$values[$value_group] = $value_group;
}
}
}
// if($epParams['extension_point'] != 'CAT_META_FORM_EDIT')
// $field .= '<span>'. $label .'</span>';
$class = $typeLabel == 'radio' ? 'rex-rdo' : 'rex-chckbx';
$oneValue = count($values) == 1;
if (!$oneValue) {
$tag = '';
$labelIt = false;
$tag = 'div';
$tag_attr = ' class="rex-chckbxs rex-ptag"';
$field .= '<p>' . $label . '</p>';
}
foreach ($values as $key => $value) {
$id = preg_replace('/[^a-zA-Z\\-0-9_]/', '_', $id . $key);
// wenn man keine Werte angibt (Boolean Chkbox/Radio)
// Dummy Wert annehmen, damit an/aus unterscheidung funktioniert
if ($oneValue && $key == '') {
$key = 'true';
}
$selected = '';
if (in_array($key, $dbvalues)) {
$selected = ' checked="checked"';
}
if ($oneValue) {
$tag_attr = ' class="' . $class . '"';
$field .= '<input type="' . $typeLabel . '" name="' . $name . '" value="' . $key . '" id="' . $id . '" ' . $attr . $selected . ' />' . "\n";
} else {
$field .= '<p class="' . $class . '">' . "\n";
$field .= '<label for="' . $id . '"><span>' . htmlspecialchars($value) . '</span></label>';
$field .= '<input type="' . $typeLabel . '" name="' . $name . '" value="' . $key . '" id="' . $id . '" ' . $attr . $selected . ' />' . "\n";
$field .= '</p>' . "\n";
}
}
break;
//.........这里部分代码省略.........