当前位置: 首页>>代码示例>>PHP>>正文


PHP ewiki_db::DELETE方法代码示例

本文整理汇总了PHP中ewiki_db::DELETE方法的典型用法代码示例。如果您正苦于以下问题:PHP ewiki_db::DELETE方法的具体用法?PHP ewiki_db::DELETE怎么用?PHP ewiki_db::DELETE使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ewiki_db的用法示例。


在下文中一共展示了ewiki_db::DELETE方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: ewiki_xpi_plugin_control_centre

function ewiki_xpi_plugin_control_centre()
{
    ewiki_xpi_load_registry($registry, $registry_hash);
    #-- title
    $o = '<div class="xpi-settings"><h4>plugin control</h4>';
    #-- delete plugins
    if ($access && ($uu = $_REQUEST["xpi_rm"])) {
        foreach ($uu as $id => $del) {
            if ($del) {
                $id = rawurldecode($id);
                $dat = ewiki_db::GET($id);
                $vZ = $dat["version"];
                for ($v = 1; $v <= $vZ; $v++) {
                    ewiki_db::DELETE($id, $v);
                }
                unset($registry[$id]);
                $vZ += 0;
                $o .= "<b>i</b>: Purged {$vZ} versions of '{$id}' and removed xpi registry entry.<br /><br />";
                ewiki_log("uninstalled .xpi/.jpi plugin '{$id}'", 0);
            }
        }
        $_REQUEST["setup_xpi"] = 1;
    }
    #-- update config settings
    if ($_REQUEST["setup_xpi"]) {
        if ($access) {
            foreach ($registry as $id => $uu) {
                $registry[$id]["state"] = $_REQUEST["xpi_set"][rawurlencode($id)] ? 1 : 0;
            }
            $registry_hash["content"] = serialize($registry);
            ewiki_data_update($registry_hash);
            $registry_hash["version"]++;
            ewiki_db::WRITE($registry_hash);
        } else {
            $o .= "You have no privileges to change the status of installed .xpi plugins.<br />\n";
        }
    }
    #-- enable/disable checkboxes
    $o .= '<table border="0" cellspacing="1" cellpadding="2">';
    foreach ($registry as $dat) {
        $enabled = $dat["state"] == 1;
        $hard = $dat["type"] == "page";
        $title = $hard ? ewiki_link($dat["id"]) : $dat["id"];
        $o .= '<tr>' . '<td><tt>' . $dat["type"] . '</tt></td>' . '<td class="xs-check"><input type="checkbox" name="xpi_set[' . rawurlencode($dat["id"]) . ']" value="1"' . ($enabled ? " checked" : "") . ($hard ? " disabled" : "") . '></td>' . '<td class="xs-id">' . $title . '</td>' . '<td><small>' . htmlentities($dat["description"]) . '</small></td>' . '<td>' . $dat["author"] . ", " . $dat["license"] . '</td>' . '<td class="xs-check"><input type="submit" name="xpi_rm[' . rawurlencode($dat["id"]) . ']" value="rm" title="uninstall plugin"' . ($access ? "" : " disabled") . '></td>' . '</tr>';
    }
    $o .= '</table>';
    $o .= '<br /><input type="submit" name="setup_xpi" value="configure"' . ($access ? "" : " disabled") . '>';
    $o .= '</form></div>';
    return $o;
}
开发者ID:gpuenteallott,项目名称:rox,代码行数:50,代码来源:xpi.php

示例2: cmd_ren

function cmd_ren($ls, $overwrite = 0)
{
    if (count($ls) != 2) {
        echo "mv: needs exactly two arguments\n";
    } else {
        $old = $ls[0];
        $new = $ls[1];
        echo htmlentities("{$old} -> {$new} ");
        if (bad_old_new($old, $new)) {
            return;
        }
        while ($data = get_almost_latest($data, $old)) {
            $data["id"] = $new;
            if (ewiki_db::WRITE($data, $overwrite)) {
                if (ewiki_db::DELETE($old, $data["version"])) {
                    echo ".";
                } else {
                    echo "<sup>(DE#{$data['version']})</sup>";
                    $de += 1;
                }
            } else {
                echo "<sup>(WE#{$data['version']})</sup>";
                $we += 1;
            }
        }
        echo "\n<br><br>\n";
        if ($we) {
            echo "- {$we} write errors (target page existed)<br>\n";
        }
        if ($de) {
            echo "- {$de} errors deleting source page versions (uh, bad!)<br>\n";
        }
    }
}
开发者ID:gpuenteallott,项目名称:rox,代码行数:34,代码来源:action.php

示例3: ewiki_action_control_page

function ewiki_action_control_page($id, &$data, $action)
{
    global $ewiki_ring, $ewiki_config, $ewiki_plugins;
    $a_flagnames = array("_TEXT", "_BINARY", "_DISABLED", "_HTML", "_READONLY", "_WRITEABLE", "_APPENDONLY", "_SYSTEM", "_PART", "_MINOR", "_HIDDEN", "_ARCHIVE", "_UU12", "_UU13", "_UU14", "_UU15", "_UU16", "_EXEC", "_UU18", "_UU19");
    $o = ewiki_make_title($id, "control {$id}", 2);
    #-- admin requ. ---------------------------------------------------------
    if (!ewiki_auth($id, $data, $action, $ring = 0, "_FORCE_LOGIN=1") || !isset($ewiki_ring) || $ewiki_ring > 1) {
        if (is_array($data)) {
            $data = "You'll need to be admin. See ewiki_auth() and _PROTECTED_MODE in the README.";
        }
        $o .= $data;
    } elseif (@$_REQUEST["pgc_setflags"]) {
        #-- setted new flags
        $new_f = 0;
        foreach ($_REQUEST["sflag"] as $n => $b) {
            if ($b) {
                $new_f |= 1 << $n;
            }
        }
        #-- administrator may change all flags
        if ($ewiki_ring == 0) {
            $data["flags"] = $new_f;
        } else {
            $data["flags"] = $data["flags"] & ~EWIKI_DB_F_MODERATORFLAGS | $new_f & EWIKI_DB_F_MODERATORFLAGS;
        }
        $data["lastmodified"] = time();
        $data["version"]++;
        if (ewiki_db::WRITE($data)) {
            $o .= "Page flags were updated correctly.";
            ewiki_log("page flags of '{$id}' were set to {$data['flags']}");
        } else {
            $o .= "A database error occoured.";
        }
    } elseif (@$_REQUEST["pgc_rename"] && strlen($new_id = $_REQUEST["mv_to"])) {
        $old_id = $id;
        $report = "";
        $preg_id = "/" . addcslashes($old_id, ".+*?|/\\()\$[]^#") . "/" . ($_REQUEST["mv_cr1"] ? "i" : "");
        #-- check if new name does not already exist in database
        $exists = ewiki_db::GET($new_id);
        if ($exists || !empty($exists)) {
            return $o .= "Cannot overwrite an existing database entry.";
        }
        #-- copy from old name to new name
        $max_ver = $data["version"];
        $data = array();
        for ($v = 1; $v <= $max_ver; $v++) {
            $row = ewiki_db::GET($old_id, $v);
            $row["id"] = $new_id;
            $row["lastmodified"] = time();
            $row["content"] = preg_replace($preg_id, $new_id, $row["content"]);
            ewiki_scan_wikiwords($row["content"], $links, "_STRIP_EMAIL=1");
            $row["refs"] = "\n\n" . implode("\n", array_keys($links)) . "\n\n";
            $row["author"] = ewiki_author("control/");
            if (!ewiki_db::WRITE($row)) {
                $report .= "error while copying version {$v},<br />\n";
            }
        }
        #-- proceed if previous actions error_free
        if (empty($report)) {
            #-- deleting old versions
            for ($v = 1; $v <= $max_ver; $v++) {
                ewiki_db::DELETE($old_id, $v);
            }
            #-- adjust links/references to old page name
            if ($_REQUEST["mv_cr0"]) {
                $result = ewiki_db::SEARCH("refs", $old_id);
                while ($result && ($row = $result->get())) {
                    $row = ewiki_db::GET($row["id"]);
                    if (preg_match($preg_id, $row["content"], $uu)) {
                        $row["content"] = preg_replace($preg_id, $new_id, $row["content"]);
                        $row["lastmodified"] = time();
                        $row["version"]++;
                        ewiki_scan_wikiwords($row["content"], $links, "_STRIP_EMAIL=1");
                        $row["refs"] = "\n\n" . implode("\n", array_keys($links)) . "\n\n";
                        $row["author"] = ewiki_author("control/");
                        if (!ewiki_db::WRITE($row)) {
                            $report .= "could not update references in " . $row['id'] . ",<br />\n";
                        } else {
                            $report .= "updated references in " . $row['id'] . ",<br />\n";
                        }
                    }
                }
            }
            $o .= "This page was correctly renamed from '{$old_id}' to '{$new_id}'.<br /><br />\n{$report}";
            ewiki_log("page renamed from '{$old_id}' to '{$new_id}'", 2);
        } else {
            $o .= "Some problems occoured while processing your request, therefor the old page still exists:<br />\n" . $report;
        }
    } elseif (@$_REQUEST["pgc_setmeta"] && $ewiki_ring == 0 && ($set = explode("\n", $_REQUEST["pgc_meta"]))) {
        $new_meta = array();
        foreach ($set as $line) {
            if (($line = trim($line)) && ($key = trim(strtok($line, ":"))) && ($value = trim(strtok("")))) {
                $new_meta[$key] = $value;
            }
        }
        $data["meta"] = $new_meta;
        $data["lastmodified"] = time();
        $data["version"]++;
        if (ewiki_db::WRITE($data)) {
            $o .= "The {meta} field was updated.";
//.........这里部分代码省略.........
开发者ID:gpuenteallott,项目名称:rox,代码行数:101,代码来源:control.php

示例4: versions

        $id = $row["id"];
        if ($row["flags"] & EWIKI_DB_F_ARCHIVE) {
            continue;
        }
        $verZ = $row["version"] - $end;
        $verA = $start;
        #-- walk versions (top..down)
        for ($ver = $verZ; $ver >= $verA; $v--) {
            #-- interleave
            if ($leave && !($ver % $leave)) {
                continue;
            }
            #-- skip if too fresh
            $row = ewiki_db::GET($id, $ver);
            if ($row["lastmodified"] >= $t_skip) {
                continue;
            }
            #-- check flags
            if ($row["flags"] & EWIKI_DB_F_ARCHIVE) {
                continue;
            }
            if ($row["flags"] & EWIKI_DB_F_READONLY) {
                // has no meaning here(?!)
            }
            #-- else really delete it
            ewiki_db::DELETE($id, $ver);
            echo "   {$id[$ver]}\n";
        }
    }
    // GETALL
}
开发者ID:gpuenteallott,项目名称:rox,代码行数:31,代码来源:S67versionholes.php

示例5: while

    #-- look trough all previous revisions until $last timeframe,
    #   and compare {refs} for constant listing of all entries
    while ($data = ewiki_db::GET($id, --$version)) {
        #-- timeframe
        if (time() >= $row["lastmodified"] + $last) {
            break;
            // done with version comparisions
        }
        #-- remove anything that isn't listed in all TrashCan page versions
        $cmplist = explode("\n", trim($data["refs"]));
        $listed = array_intersect($listed, $cmplist);
    }
    #-- delete anything that's still in the purge list
    foreach ($listed as $id) {
        #-- walk through all versions
        if ($row = ewiki_db::GET($id)) {
            echo "   {$id}";
            $version = $row["version"];
            for ($version; $version >= 1; $version--) {
                #-- don't kill revisions that have borought lifetime ($keptpages)
                if ($row["lastmodified"] >= $keepuntil) {
                    continue;
                }
                #-- oh, so sad!
                echo " [{$version}]";
                ewiki_db::DELETE($id, $version);
            }
            echo "\n";
        }
    }
}
开发者ID:gpuenteallott,项目名称:rox,代码行数:31,代码来源:S64trashcan.php

示例6: foreach

    echo '
</table>
<br><input type="submit" value="strip page versions"><br>
</form>
<br>
[<a href="javascript:sel_all();">select all</a>]
<br>
<br>
Eventually you should consider using the <tt>ewikictl</tt> cmdline
utility in favour of this www script.
<br><br>
     ';
} else {
    echo "purging page versions:<br>";
    $range = $_REQUEST["range"];
    foreach ($_REQUEST["id"] as $id_ue => $go) {
        $id = rawurldecode($id_ue);
        if ($go) {
            if (preg_match('/^(\\d+)[-\\s._:]+(\\d+)$/', trim($range[$id_ue]), $uu)) {
                $versA = $uu[1];
                $versZ = $uu[2];
                echo "'" . htmlentities($id) . "' versions {$versA}..{$versZ}<br>\n";
                for ($v = $versA; $v <= $versZ; $v++) {
                    ewiki_db::DELETE($id, $v);
                }
            } else {
                echo "wrong range param for '{$id}'!<br>\n";
            }
        }
    }
}
开发者ID:gpuenteallott,项目名称:rox,代码行数:31,代码来源:t_holes.php


注:本文中的ewiki_db::DELETE方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。