本文整理汇总了PHP中rex_sql::hasError方法的典型用法代码示例。如果您正苦于以下问题:PHP rex_sql::hasError方法的具体用法?PHP rex_sql::hasError怎么用?PHP rex_sql::hasError使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rex_sql
的用法示例。
在下文中一共展示了rex_sql::hasError方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: rex_setup_dropREXtables
/**
* drop all rex_* tables
* @return string SQL error message
*/
function rex_setup_dropREXtables()
{
global $REX;
$err_msg = '';
// get rex_* tables
$rt = new rex_sql();
$rt->setQuery('SHOW TABLES LIKE \'' . $REX['TABLE_PREFIX'] . '%\';');
$err_msg .= $rt->hasError() ? rex_formated_sqlerror($rt) : '';
// drop tables
$dt = new rex_sql();
foreach ($rt->getArray() as $t) {
$table = $t['Tables_in_' . $REX['DB']['1']['NAME'] . ' (' . $REX['TABLE_PREFIX'] . '%)'];
$dt->setQuery('DROP TABLE `' . $table . '`');
$err_msg .= $dt->hasError() ? rex_formated_sqlerror($dt) : '';
}
unset($rt, $dt);
return $err_msg;
}
示例2: int
$REX['GG'] = false;
$REX['HTDOCS_PATH'] = './';
include 'redaxo/include/master.inc.php';
// Dateiname der lokalen Bankleitzahlen-Datei
$_blzfilename = $REX['HTDOCS_PATH'] . 'blz.txt';
// Falls allow_url_fopen aktiviert ist kann die Datei auch direkt vom Server verarbeitet werden
// hierzu einfach die folgende Zeile auskommentieren
//$_blzfilename = 'http://www.bundesbank.de/download/zahlungsverkehr/bankleitzahlen/20100906/blz_20100906.txt';
// SQL zum anlegen der Tabelle
$_sql_create = "\n\tCREATE TABLE IF NOT EXISTS `%TABLE_PREFIX%9999_blz` (\n\t `blz` int(8) NOT NULL default '0',\n\t `merkmal` char(1) NOT NULL default '',\n\t `bezeichnung` varchar(58) NOT NULL default '',\n\t `plz` varchar(5) NOT NULL default '',\n\t `ort` varchar(35) NOT NULL default '',\n\t `kurzbezeichnung` varchar(27) NOT NULL default '',\n\t `pan` varchar(5) NOT NULL default '',\n\t `bic` varchar(11) NOT NULL default '',\n\t `prz` char(2) NOT NULL default '',\n\t `satznr` int(6) NOT NULL default '0',\n\t `aendkz` char(1) NOT NULL default '',\n\t `blzloesch` char(1) NOT NULL default '',\n\t `blznachfolge` int(8) NOT NULL default '0',\n\t PRIMARY KEY (`satznr`)\n\t) TYPE=MyISAM;\n\t";
// Tabelle anlegen
$_sql = new rex_sql();
$_sql->debugsql = false;
$_sql_create = str_replace('%TABLE_PREFIX%', $REX['TABLE_PREFIX'], $_sql_create);
$_sql->setQuery($_sql_create);
if ($_sql->hasError()) {
echo "<br />\n" . 'Error Message: ' . htmlspecialchars($_sql->getError());
echo "<br />\n" . 'Error Code: ' . $_sql->getErrno();
echo "<br />\n" . 'Query: ' . $_sql_create;
}
// Tabelle leeren falls schon vorhanden
$_query = 'TRUNCATE TABLE ' . $REX['TABLE_PREFIX'] . '9999_blz';
$_sql->setQuery($_query);
if ($_sql->hasError()) {
echo "<br />\n" . 'Error Message: ' . htmlspecialchars($_sql->getError());
echo "<br />\n" . 'Error Code: ' . $_sql->getErrno();
echo "<br />\n" . 'Query: ' . $_query;
}
// Eingabe-Datei Postleitzahlen öffnen
$_fp = fopen($_blzfilename, 'r');
if (!$_fp) {
示例3: int
<?php
/**
* XO-Form
* @author jan.kristinus[at]redaxo[dot]de Jan Kristinus
* @author <a href="http://www.yakamara.de">www.yakamara.de</a>
*/
// Tabelle anlegen Redaxo 4.0.x
$sql = new rex_sql();
$sql->setQuery("CREATE TABLE IF NOT EXISTS `rex_xform_email_template` (\n `id` int(11) NOT NULL auto_increment,\n `name` varchar(255) NOT NULL default '',\n `mail_from` varchar(255) NOT NULL default '',\n `mail_from_name` varchar(255) NOT NULL default '',\n `subject` varchar(255) NOT NULL default '',\n `body` text NOT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;\n");
// evtl. Fehler beim Anlegen?
if ($sql->hasError()) {
$msg = 'MySQL-Error: ' . $sql->getErrno() . '<br />';
$msg .= $sql->getError();
// Evtl Ausgabe einer Meldung
// $rxa_htmlinsert['meldung'] = 'Das Addon wurde nicht installiert, weil...';
$REX['ADDON']['install']['xform'] = 0;
$REX['ADDON']['installmsg']['xform'] = $msg;
} else {
// Installation erfolgreich
$REX['ADDON']['install']['xform'] = 1;
}
示例4: rex_a1_import_db
/**
* Importiert den SQL Dump $filename in die Datenbank
*
* @param string Pfad + Dateinamen zur SQL-Datei
*
* @return array Gibt ein Assoc. Array zurück.
* 'state' => boolean (Status ob fehler aufgetreten sind)
* 'message' => Evtl. Status/Fehlermeldung
*/
function rex_a1_import_db($filename)
{
global $REX, $I18N_IM_EXPORT;
$return = array();
$return['state'] = false;
$return['message'] = '';
$msg = '';
$error = '';
if ($filename == '' || substr($filename, -4, 4) != ".sql") {
$return['message'] = $I18N_IM_EXPORT->msg('no_import_file_chosen_or_wrong_version') . '<br>';
return $return;
}
$conts = rex_get_file_contents($filename);
// Versionsstempel prüfen
// ## Redaxo Database Dump Version x.x
$version = strpos($conts, '## Redaxo Database Dump Version ' . $REX['VERSION']);
if ($version === false) {
$return['message'] = $I18N_IM_EXPORT->msg('no_valid_import_file') . '. [## Redaxo Database Dump Version ' . $REX['VERSION'] . '] is missing';
return $return;
}
// Versionsstempel entfernen
$conts = trim(str_replace('## Redaxo Database Dump Version ' . $REX['VERSION'], '', $conts));
// Prefix prüfen
// ## Prefix xxx_
if (preg_match('/^## Prefix ([a-zA-Z0-9\\_]*)/', $conts, $matches) && isset($matches[1])) {
// prefix entfernen
$prefix = $matches[1];
$conts = trim(str_replace('## Prefix ' . $prefix, '', $conts));
} else {
// Prefix wurde nicht gefunden
$return['message'] = $I18N_IM_EXPORT->msg('no_valid_import_file') . '. [## Prefix ' . $REX['TABLE_PREFIX'] . '] is missing';
return $return;
}
// Prefix im export mit dem der installation angleichen
if ($REX['TABLE_PREFIX'] != $prefix) {
// Hier case-insensitiv ersetzen, damit alle möglich Schreibweisen (TABLE TablE, tAblE,..) ersetzt werden
// Dies ist wichtig, da auch SQLs innerhalb von Ein/Ausgabe der Module vom rex-admin verwendet werden
$conts = preg_replace('/(TABLE `?)' . preg_quote($prefix, '/') . '/i', '$1' . $REX['TABLE_PREFIX'], $conts);
$conts = preg_replace('/(INTO `?)' . preg_quote($prefix, '/') . '/i', '$1' . $REX['TABLE_PREFIX'], $conts);
$conts = preg_replace('/(EXISTS `?)' . preg_quote($prefix, '/') . '/i', '$1' . $REX['TABLE_PREFIX'], $conts);
}
// Inhalt der /generated Ordner komplett leeren
rex_generateAll();
// ----- EXTENSION POINT
$filesize = filesize($filename);
$msg = rex_register_extension_point('A1_BEFORE_DB_IMPORT', $msg, array('content' => $conts, 'filename' => $filename, 'filesize' => $filesize));
// Datei aufteilen
$lines = explode("\n", $conts);
$add = new rex_sql();
$error = '';
foreach ($lines as $line) {
$line = trim($line, "\r");
// Windows spezifische extras
$line = trim($line, ";");
// mysql 3.x
if ($line == '') {
continue;
}
$add->setQuery($line);
if ($add->hasError()) {
$error .= "\n" . $add->getError();
}
}
if ($error != '') {
$return['message'] = trim($error);
return $return;
}
$msg .= $I18N_IM_EXPORT->msg('database_imported') . '. ' . $I18N_IM_EXPORT->msg('entry_count', count($lines)) . '<br />';
// CLANG Array aktualisieren
unset($REX['CLANG']);
$db = new rex_sql();
$db->setQuery('select * from ' . $REX['TABLE_PREFIX'] . 'clang');
for ($i = 0; $i < $db->getRows(); $i++) {
$id = $db->getValue('id');
$name = $db->getValue('name');
$REX['CLANG'][$id] = $name;
$db->next();
}
// prüfen, ob eine user tabelle angelegt wurde
$result = $db->getArray('SHOW TABLES');
$user_table_found = false;
foreach ($result as $row) {
if (in_array($REX['TABLE_PREFIX'] . 'user', $row)) {
$user_table_found = true;
break;
}
}
if (!$user_table_found) {
$create_user_table = '
CREATE TABLE ' . $REX['TABLE_PREFIX'] . 'user
(
//.........这里部分代码省略.........
示例5: checkLogin
function checkLogin()
{
global $REX;
$fvs = new rex_sql();
// $fvs->debugsql = true;
$userId = $this->getSessionVar('UID');
$check = parent::checkLogin();
if ($check) {
// gelungenen versuch speichern | login_tries = 0
if ($this->usr_login != '') {
$this->sessionFixation();
$fvs->setQuery('UPDATE ' . $this->tableName . ' SET login_tries=0, lasttrydate=' . time() . ', session_id="' . session_id() . '" WHERE login="' . $this->usr_login . '" LIMIT 1');
}
} else {
// fehlversuch speichern | login_tries++
if ($this->usr_login != '') {
$fvs->setQuery('UPDATE ' . $this->tableName . ' SET login_tries=login_tries+1,session_id="",lasttrydate=' . time() . ' WHERE login="' . $this->usr_login . '" LIMIT 1');
}
}
if ($this->isLoggedOut() && $userId != '') {
$fvs->setQuery('UPDATE ' . $this->tableName . ' SET session_id="" WHERE user_id="' . $userId . '" LIMIT 1');
}
if ($fvs->hasError()) {
return $fvs->getError();
}
return $check;
}
示例6: delete
/**
* @access public
* @return Returns <code>true</code> on success or <code>false</code> on error
*/
function delete($recurse = false)
{
// Rekursiv löschen?
if (!$recurse && $this->hasChildren()) {
return false;
}
if ($recurse) {
$childs = $this->getChildren();
foreach ($childs as $child) {
if (!$child->delete($recurse)) {
return false;
}
}
}
// Alle Dateien löschen
if ($this->hasMedia()) {
$files = $this->getMedia();
foreach ($files as $file) {
if (!$file->delete()) {
return false;
}
}
}
$qry = 'DELETE FROM ' . $this->_getTableName() . ' WHERE id = ' . $this->getId() . ' LIMIT 1';
$sql = new rex_sql();
// $sql->debugsql = true;
$sql->setQuery($qry);
return !$sql->hasError() || $sql->getRows() != 1;
}
示例7: addSqlValues
/**
* Fügt dem Feld neue Werte via SQL-Query hinzu.
* Dieser Query muss ein 2 Spaltiges Resultset beschreiben.
*
* @param $query SQL-Query
* @access protected
*/
function addSqlValues($query)
{
$sql = new rex_sql();
// $sql->debugsql = true;
$result = $sql->getArray($query, MYSQL_NUM);
if ($sql->hasError()) {
echo $sql->getError();
}
if (is_array($result) && count($result) >= 1) {
$value = array_shift($result);
$count = count($value);
if ($count >= 4) {
// Add first Option
$this->addValue($value[0], $value[1], $value[2], $value[3]);
foreach ($result as $value) {
// Add remaing Options
$this->addValue($value[0], $value[1], $value[2], $value[3]);
}
} elseif ($count == 2) {
// Add first Option
$this->addValue($value[0], $value[1]);
foreach ($result as $value) {
// Add remaing Options
$this->addValue($value[0], $value[1]);
}
} elseif ($count == 1) {
// Add first Option
$this->addValue($value[0], $value[0]);
foreach ($result as $value) {
// Add remaing Options
$this->addValue($value[0], $value[0]);
}
}
}
}
示例8: save
/**
* Speichert den Kurs in die Datenbank.
* @return String Statusmeldung.
*/
public function save()
{
$query = "INSERT INTO ";
if ($this->kurs_id > 0) {
$query = "UPDATE ";
}
$query .= $this->table_prefix . 'd2u_kurse_kurse SET ' . 'titel = "' . addslashes($this->titel) . '", ' . 'teaser = "' . addslashes($this->teaser) . '", ' . 'beschreibung = "' . addslashes($this->beschreibung) . '", ' . '`alter` = "' . $this->alter . '", ' . 'bild = "' . $this->bild . '", ' . 'kosten = ' . number_format($this->kosten, 2) . ', ' . 'kosten_erm = ' . number_format($this->kosten_erm, 2) . ', ' . 'datum_von = "' . $this->datum_von . '", ' . 'datum_bis = "' . $this->datum_bis . '", ' . 'uhrzeit = "' . $this->uhrzeit . '", ' . 'zielgruppen_ids = "|' . implode("|", $this->zielgruppen_ids) . '|", ' . 'kurskategorie_id = "' . $this->kurskategorie->kurskategorie_id . '", ' . 'sekundaere_kurskategorie_ids = "|' . implode("|", $this->sekundaere_kurskategorie_ids) . '|", ' . 'ort_id = "' . $this->ort->ort_id . '", ' . 'raum = "' . $this->raum . '", ' . 'terminkategorie_ids = "|' . implode("|", $this->terminkategorie_ids) . '|", ' . 'teilnehmer_max = "' . $this->teilnehmer_max . '", ' . 'teilnehmer_min = "' . $this->teilnehmer_min . '", ' . 'teilnehmer_angemeldet = "' . $this->teilnehmer_angemeldet . '", ' . 'teilnehmer_warteliste = "' . $this->teilnehmer_warteliste . '", ' . 'anmeldung_moeglich = "' . $this->anmeldung_moeglich . '", ' . 'status = "' . $this->status . '", ' . 'url_extern = "' . $this->url_extern . '", ' . 'redaxo_artikel = "' . $this->redaxo_artikel . '", ' . 'kursleiter = "' . $this->kursleiter . '", ' . 'kursnummer = "' . $this->kursnummer . '", ' . 'dokumente = "' . implode(",", $this->dokumente) . '", ' . 'import = "' . $this->import . '", ' . 'updatedate = "' . time() . '"';
if ($this->kurs_id > 0) {
$query .= " WHERE kurs_id = " . $this->kurs_id;
}
$result = new rex_sql();
$result->setQuery($query);
if ($this->kurs_id == 0) {
$this->kurs_id = $result->getLastId();
}
if ($result->hasError()) {
return "Fehler beim Speichern: " . $result->getError() . PHP_EOL . "Query war: " . $query;
} else {
return "Gespeichert: " . $query;
}
}