|                                                                                                       | 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $cfg_soft_lang; ?>">
  <title>数据批量替换</title>
	<script language="javascript" src="../static/web/js/jquery.min.js"></script>
	<script language="javascript" src="../static/web/js/bootstrap.bundle.min.js"></script>
	<script language="javascript" src="js/main.js"></script>
  <script language='javascript' src='../static/web/js/webajax.js'></script>
  <script language='javascript'>
    function ShowFields() {
      var exptable = $DE('exptable').options[$DE('exptable').selectedIndex].value;
      var queryUrl = "sys_data_replace.php?exptable=" + exptable + "&action=getfields";
      fetch(queryUrl).then(resp=>{
				if (resp.ok) {
					return resp.text()
				}
				throw new Error('x');
			}).then((d)=>{
				$DE('fields').innerHTML = d;
			}).catch((error) => {
				$DE('fields').innerHTML = errMsg;
			});
    }
    function CheckSubmit() {
      if ($DE('rpfield').value == "") {
        ShowMsg("您选择的操作为手工指定字段,但您并没指定");
        return false;
      }
      if ($DE('rpstring').value == "") {
        ShowMsg("您没指定要替换的字符串");
        return false;
      }
      return true;
    }
    function pf(v) {
      $DE('rpfield').value = v;
    }
  </script>
	<link rel="stylesheet" href="../static/web/css/bootstrap.min.css">
	<link rel="stylesheet" href="../static/web/font/css/font-awesome.min.css">
  <link rel="stylesheet" href="../static/web/css/admin.css">
</head>
<body>
  <table width="98%" border="0" cellpadding="1" cellspacing="1" align="center" class="table maintable mt-3 mb-3">
    <form action="sys_data_replace.php" name="form1" method="post" target="stafrm" onSubmit="return CheckSubmit()">
      <input type='hidden' name='action' value='apply'>
      <tr>
        <td height="26" background="../static/web/img/tbg.gif" style="padding-left:10px">数据库内容替换</td>
      </tr>
      <tr>
        <td>
          <table width="100%" border="0" cellpadding="2" cellspacing="2" class="table table-borderless">
            <tr>
              <td colspan="2">
                <div class="alert alert-info mb-0">程序用于批量替换数据库中某字段的内容,此操作极为危险,请小心使用</div>
              </td>
            </tr>
            <tr id='datasel'>
              <td width="15%" height="60"> 选择数据表与字段:</td>
              <td>
                <table width="98%" border="0" cellspacing="0" cellpadding="0">
                  <tr>
                    <td id="tables">
                      <?php
                      $dsql->SetQuery("Show Tables");
                      $dsql->Execute('t');
                      if($dsql->GetError()!=''){
                        echo "<span style='color:#dc3545'>找不到您所指定的数据库 $dbname</span><br>";
                        echo $qbutton;
                      }
                      echo "<select name='exptable' id='exptable' size='10' style='width:60%;height:220px' onchange='ShowFields()'>\r\n";
                        while($row = $dsql->GetArray('t',MYSQL_BOTH)){
                          echo "<option value='{$row[0]}'>{$row[0]}</option>\r\n";
                        }
                      echo "</select>\r\n";
                      $dsql->Close();
                      ?>
                    </td>
                  </tr>
                  <tr>
                    <td id='fields'></td>
                  </tr>
                  <tr>
                    <td height="26"> 要替换的字段:<input name="rpfield" type="text" id="rpfield" class="alltxt"></td>
                  </tr>
                </table>
              </td>
            </tr>
            <tr bgcolor="#FBFCE2">
              <td height="26"> 替换方式:</td>
              <td>
                <label><input name="rptype" type="radio" id="ot1" value="replace" checked='1' class='np'>
                普通替换</label>
                <label><input type="radio" name="rptype" id="ot2" value="regex" class='np'>
                正则表达式</label>
                 主键字段:
                <input name="keyfield" type="text" id="keyfield" size="12" class="alltxt">(正则模式必须指定)
              </td>
            </tr>
            <tr>
              <td height="26"> 被替换内容:</td>
              <td><textarea name="rpstring" id="rpstring" class="alltxt" style="width:60%;height:50px"></textarea></td>
            </tr>
            <tr>
              <td height="26"> 替换为:</td>
              <td><textarea name="tostring" id="tostring" class="alltxt" style="width:60%;height:50px"></textarea></td>
            </tr>
            <tr>
              <td height="26"> 替换条件:</td>
              <td><input name="condition" type="text" id="condition" style="width:60%" class="alltxt">(空完全替换)</td>
            </tr>
            <tr>
              <td height="26"> 安全确认码:</td>
              <td>
                <input type="text" name="validate" class="alltxt" style="width:80px;text-transform:uppercase">
                <img src="../apps/vdimgck.php" style="vertical-align:middle;cursor:pointer" onClick="this.src='../apps/vdimgck.php?'+new Date().getTime()+Math.round(Math.random() * 10000)"></td>
              </td>
            </tr>
          </table>
        </td>
      </tr>
      <tr>
        <td height="30" bgcolor="#F8FCF1" align="center" class="py-3">
          <button type="submit" name="Submit" class="btn btn-success btn-sm">开始替换数据</button>
        </td>
      </tr>
    </form>
    <tr>
      <td height="26">
        <table width="100%" class="table table-borderless">
          <tr>
            <td width="70%">结果:</td>
            <td width="30%" align="right">
              <script language='javascript'>
                function ResizeDiv(obj, ty) {
                  if (ty == "+") document.all[obj].style.pixelHeight += 50;
                  else if (document.all[obj].style.pixelHeight > 80) document.all[obj].style.pixelHeight = document.all[obj].style.pixelHeight - 50;
                }
              </script>
              <a href="javascript:;" onClick="ResizeDiv('mdv','+');" class="btn btn-success btn-sm">增大</a>
              <a href="javascript:;" onClick="ResizeDiv('mdv','-');" class="btn btn-success btn-sm">缩小</a>
            </td>
          </tr>
        </table>
      </td>
    </tr>
    <tr>
      <td id="mtd">
        <div id="mdv" style="width:100%;height:300px"> 
          <iframe name="stafrm" frameborder="0" id="stafrm" width="100%" height="100%"></iframe>
        </div>
      </td>
    </tr>
  </table>
</body>
</html>
 |