php 创建数据[crate database]与清空数据表

 更新时间:2016年11月25日 16:02  点击:1700

php 创建数据[crate database]与清空数据表

function Ebak_CreatDb($dbname,$dbchar=''){
 global $empire,$phome_db_ver;
 $dbname=RepPostVar($dbname);
 if(!trim($dbname))
 {
  printerror("EmptyDbname","history.go(-1)");
 }
 $a="";
 if($dbchar&&$phome_db_ver>='4.1')
 {
  $a=" DEFAULT CHARACTER SET ".$dbchar;
 }
 $sql=$empire->query("CREATE DATABASE IF NOT EXISTS `$dbname`".$a);
 if($sql)
 {
  printerror("CreateDbSuccess","ChangeDb.php");
 }
 else
 {printerror("DbError","history.go(-1)");}
}

//--------------------------清空表
function Ebak_EmptyTable($tablename,$dbname){
 global $empire;
 $dbname=RepPostVar($dbname);
 $empire->query("use `$dbname`");
 $count=count($tablename);
 if(empty($count))
 {printerror("EmptyChangeTb","history.go(-1)");}
 for($i=0;$i<$count;$i++)
 {
  $sql1=$empire->query("TRUNCATE `".$tablename[$i]."`;");
    }
 printerror("TruncateTbSuccess","ChangeTable.php?mydbname=$dbname");
}

mysql 数据库连查询类

class mysqlquery
{
 var $sql;//sql语句执行结果
 var $query;//sql语句
 var $num;//返回记录数
 var $r;//返回数组
 var $id;//返回数据库id号
 //执行mysql_query()语句
 function query($query)
 {
  $this->sql=mysql_query($query) or die(mysql_error

()."<br>".$query);
  return $this->sql;
 }
 //执行mysql_query()语句2
 function query1($query)
 {
  $this->sql=mysql_query($query);
  return $this->sql;
 }
 //执行mysql_fetch_array()
 function fetch($sql)//此方法的参数是$sql就是sql语句执行结果
 {
  $this->r=mysql_fetch_array($sql);
  return $this->r;
 }
 //执行fetchone(mysql_fetch_array())
 //此方法与fetch()的区别是:1、此方法的参数是$query就是sql语句
 //2、此方法用于while(),for()数据库指针不会自动下移,而fetch()可以自

动下移。
 function fetch1($query)
 {
  $this->sql=$this->query($query);
  $this->r=mysql_fetch_array($this->sql);
  return $this->r;
 }
 //执行mysql_num_rows()
 function num($query)//此类的参数是$query就是sql语句
 {
  $this->sql=$this->query($query);
  $this->num=mysql_num_rows($this->sql);
  return $this->num;
 }
 //执行numone(mysql_num_rows())
 //此方法与num()的区别是:1、此方法的参数是$sql就是sql语句的执行结果


 function num1($sql)
 {
  $this->num=mysql_num_rows($sql);
  return $this->num;
 }
 //执行numone(mysql_num_rows())
 //统计记录数
 function gettotal($query)
 {
  $this->r=$this->fetch1($query);
  return $this->r['total'];
 }
 //执行free(mysql_result_free())
 //此方法的参数是$sql就是sql语句的执行结果。只有在用到

mysql_fetch_array的情况下用
 function free($sql)
 {
  mysql_free_result($sql);
 }
 //执行seek(mysql_data_seek())
 //此方法的参数是$sql就是sql语句的执行结果,$pit为执行指针的偏移数
 function seek($sql,$pit)
 {
  mysql_data_seek($sql,$pit);
 }
 //执行id(mysql_insert_id())
 function lastid()//取得最后一次执行mysql数据库id号
 {
  $this->id=mysql_insert_id();
  return $this->id;
 }
}

php 修复表与优化数据表
//--------------------------修复表
function Ebak_Rep($tablename,$dbname){
 global $empire;
 $dbname=RepPostVar($dbname);
 $empire->query("use `$dbname`");
 $count=count($tablename);
 if(empty($count))
 {
  printerror("EmptyChangeTb","history.go(-1)");
 }
 for($i=0;$i<$count;$i++)
 {
  $sql1=$empire->query("REPAIR TABLE `$tablename[$i]`;");
    }
 printerror("RepairTbSuccess","ChangeTable.php?mydbname=$dbname");
}

//--------------------------忧化表
function Ebak_Opi($tablename,$dbname){
 global $empire;
 $dbname=RepPostVar($dbname);
 $empire->query("use `$dbname`");
 $count=count($tablename);
 if(empty($count))
 {
  printerror("EmptyChangeTb","history.go(-1)");
 }
 for($i=0;$i<$count;$i++)
 {
  $sql1=$empire->query("OPTIMIZE TABLE `$tablename[$i]`;");
    }
 printerror("OptimizeTbSuccess","ChangeTable.php?mydbname=$dbname");
}

php 域名转发程序是我从其它地方看到了,通过xml与php交换实现的,下面我们来看看源文件吧。

<?xml version="1.0" encoding="utf-8"?>
<urls>
 <num>1</num>
 <url id="1">
  <domain>test.domain.com</domain>
  <to>http://www.111cn.net/to>
 </url>
</urls>

index.php文件。

<?php
/*
域名伪跳转方案
By IVershuo.cn
*/
 header("content-type:text/html; charset=utf-8");
 $xml = simplexml_load_file("url.xml"); //xml文件路径
 $to = 'http://www.111cn.net'; //默认跳转地址
 foreach ($xml as $key => $value) {
  if($value->domain == $_SERVER['SERVER_NAME']) {
   $to = $value->to;
   break;
  }
 }
 header('Location: '.$to);
?>

处理文件

<?php
/*
域名伪跳转方案,域名跳转配置脚本
###注意:没设置验证可配置,使用时请修改该文件名和xml文件名!!!
By IVershuo.cn
*/
$xmlFile = 'url.xml'; //xml文件的路径

$xml = simplexml_load_file($xmlFile); 
$num = $xml->num[0];

if (@$_POST['domain'] && $_POST['to']) { 
 $xmlUrl = $xml->addChild('url');
 $xmlUrl->addAttribute('id',$num+=1);
 $xmlUrl->addChild('domain',$_POST['domain']);
 $xmlUrl->addChild('to',$_POST['to']);
 $xml->num[0] = $num;
}

if (@$_GET['del']) {
 removeNode($xml, "//url[@id='".$_GET['del']."']", 'all');
 $xml->num[0] = $num;
}

$sp = fopen($xmlFile,"wb");
fwrite($sp,$xml->asXML());
fclose($sp);

function removeNode($xml, $path, $multi='one'){
       $result = $xml->xpath($path);               
          # for wrong $path
          if (!isset($result[0])) return false;       
          switch ($multi) {
              case 'all':
                    $errlevel = error_reporting(E_ALL & ~E_WARNING);
                    foreach ($result as $r) unset ($r[0]);
                    error_reporting($errlevel);
                    return true;                  
                case 'child':
                   unset($result[0][0]);
                   return true;               
                case 'one':
                   if (count($result[0]->children())==0 && count($result)==1) {
                       unset($result[0][0]);
                       return true;
                   }                 
                default:
           return false;           
          }
}

echo '<?xml version="1.0" encoding="utf-8"?>'."n";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn" lang="zh-cn">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>域名添加</title>
<meta name="author" content="阿肆|IVershuo.cn" />
<style type="text/css">
label {display:block;margin:10px 0;}
input {width:300px;}
label span {color:#666;}
</style>
<script type="text/javascript" src=""></script>
</head>
<body>
 <h1>域名转向添加</h1>
 <div>
  <form action="<?=$_SERVER ['PHP_SELF']?>" method="post">  
   <fieldset>
   <legend>域名添加</legend>
    <label for="domain">
     域名:
     http://<input type="text" name="domain" id="domain" />
     <span>不用加“http://”</span>
    </label>
    <label for="to">
     转向:
     <input type="text" name="to" id="to" value="http://" />
     <span>前面添加“http://”或“https://”等</span>
    </label>
    <button type="submit">提交</button>
   </fieldset>
  </form>
 </div>
 <div>
  <ul id="listed">
<?php
 $i=0;
 foreach ($xml as $key => $value) {  
  if($key == 'url') {   
   echo '<li><em>http://'.$value->domain.'</em>跳转到<a href="'.$value->to.'">'.$value->to.'</a>&nbsp;<a href="'.$_SERVER ['PHP_SELF'].'?del='.$xml->url[$i]['id'].'">&gt;删除&lt;</a></li>';
   $i++;
  }
 }
?>
<script type="text/javascript">
 var li=document.getElementById('listed').getElementsByTagName('li');
 for (var i=0,l=li.length;i<l ;i++ ) {
  li[i].getElementsByTagName('a')[1].onclick=function () {
   var u = this.parentNode.getElementsByTagName('em')[0].innerHTML;
   if (confirm ('确定要删除 '+u+' 的转向?')) {
    return true;
   } else {
    return false;
   }
  }
 }
</script>
  </ul>
 </div>
 </body>
</html>

<?php function ff_page($content,$page)
{
global $expert_id;
$PageLength = 2000; //每页字数
$CLength = strlen($content);
$PageCount = floor(($CLength / $PageLength)) + 1; //计算页数
$PageArray=array();
$Seperator = array("n","r","。","!","?",";",",","”","'"); //分隔符号
//echo "页数:".$PageCount."<br>";
//echo "长度:".$CLength."<br><br><br>";
//strpos() 函数返回字符串在另一个字符串中第一次出现的位置
if($CLength<$PageLength)
{
echo $content;
}else{
$PageArray[0]=0;
$Pos = 0;
$i=0;
//第一页
for($j=0;$j<sizeof($Seperator);$j++)
{
//echo $Seperator[$j];
$Pos=strpos($content,$Seperator[$j],$PageArray[$i]+1900);
while($Pos > 0 && $Pos < ($i+1)*$PageLength && $Pos > $i*$PageLength )
{
$PageArray[$i] = $Pos ;
$Pos = strpos($Pos+$PageLength,$content,$Seperator[$j]) ;
}
if($PageArray[$i]>0)
{
$j = $j + sizeof($Seperator) + 1;
}
}
//---
for($i=1;$i<$PageCount-1;$i++){
for($j=0;$j<sizeof($Seperator);$j++)
{
//echo $Seperator[$j];
$Pos=strpos($content,$Seperator[$j],$PageArray[$i-1]+1900);
while($Pos > 0 && $Pos < ($i+1)*$PageLength && $Pos > $i*$PageLength )
{
$PageArray[$i] = $Pos ;
$Pos = strpos($Pos+$PageLength,$content,$Seperator[$j]) ;
}
if($PageArray[$i]>0)
{
$j = $j + sizeof($Seperator) + 1;
}
}
}

//--最后一页
$PageArray[$PageCount-1]=$CLength;
//$page=2;
if($page==1)
{
$output=substr($content,0,$PageArray[$page-1]+2);
}
if($page>1 && $page<=$PageCount)
{
$output=substr($content,$PageArray[$page-2]+2,$PageArray[$page-1]-$PageArray[$page-2]);
$output=" (上接第".($page-1)."页)n".$output;
}
echo str_replace("n","<br> ",$output);
//if($page==$PageCount)
//return $output=substr($content,$PageArray[$page-2]+2,$PageArray[$page-1]-$PageArray[$page-2]);
if($PageCount>1)
{
echo "<br><br><br><center>";
echo "<font color='ff0000'>".$page."</font>/".$PageCount." 页 ";
if($page>1)
echo "<a href=$PHP_SELF?expert_id=$expert_id&page_t=".($page-1).">上一页</a> ";
else
echo "上一页 ";
for($i=1;$i<=$PageCount;$i++)
{
echo "<a href=$PHP_SELF?expert_id=$expert_id&page_t=".$i.">[".$i."]</a> ";
}
if($page<$PageCount)
echo " <a href=$PHP_SELF?expert_id=$expert_id&page_t=".($page+1).">下一页</a> ";
else
echo " 下一页 ";
echo "</center>";
}
}
}?>

<?php
$content1=''测试文字,尽量长一些,www.111cn.net";
$current=$_REQUEST['page_t'];
$result=ff_page($content1,$current);
echo $result;
?>

[!--infotagslink--]

相关文章

  • C#连接SQL数据库和查询数据功能的操作技巧

    本文给大家分享C#连接SQL数据库和查询数据功能的操作技巧,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友参考下吧...2021-05-17
  • php简单数据操作的实例

    最基础的对数据的增加删除修改操作实例,菜鸟们收了吧...2013-09-26
  • 解决Mybatis 大数据量的批量insert问题

    这篇文章主要介绍了解决Mybatis 大数据量的批量insert问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-09
  • Antd-vue Table组件添加Click事件,实现点击某行数据教程

    这篇文章主要介绍了Antd-vue Table组件添加Click事件,实现点击某行数据教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-17
  • 详解如何清理redis集群的所有数据

    这篇文章主要介绍了详解如何清理redis集群的所有数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-18
  • vue 获取到数据但却渲染不到页面上的解决方法

    这篇文章主要介绍了vue 获取到数据但却渲染不到页面上的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-19
  • php把读取xml 文档并转换成json数据代码

    在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
  • mybatis-plus 处理大数据插入太慢的解决

    这篇文章主要介绍了mybatis-plus 处理大数据插入太慢的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-18
  • postgresql数据添加两个字段联合唯一的操作

    这篇文章主要介绍了postgresql数据添加两个字段联合唯一的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-04
  • Vue生命周期activated之返回上一页不重新请求数据操作

    这篇文章主要介绍了Vue生命周期activated之返回上一页不重新请求数据操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-26
  • JS创建Tag标签的方法详解

    这篇文章主要介绍了JS创建Tag标签的方法,结合具体实例形式分析了javascript动态操作页面HTML元素实现tag标签功能的步骤与相关操作技巧,需要的朋友可以参考下...2017-06-15
  • JavaScript动态创建div属性和样式示例代码

    1.创建div元素: Javascript代码 复制代码 代码如下: <scripttypescripttype="text/javascript"> functioncreateElement(){ varcreateDiv=document.createElement("div"); createDiv.innerHTML="Testcreateadiveleme...2013-10-13
  • 解决vue watch数据的方法被调用了两次的问题

    这篇文章主要介绍了解决vue watch数据的方法被调用了两次的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-07
  • c# socket网络编程接收发送数据示例代码

    这篇文章主要介绍了c# socket网络编程,server端接收,client端发送数据,大家参考使用吧...2020-06-25
  • vue 数据(data)赋值问题的解决方案

    这篇文章主要介绍了vue 数据(data)赋值问题的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-29
  • Python3 常用数据标准化方法详解

    这篇文章主要介绍了Python3 常用数据标准化方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-24
  • node.js从数据库获取数据

    这篇文章主要为大家详细介绍了node.js从数据库获取数据的具体代码,nodejs可以获取具体某张数据表信息,感兴趣的朋友可以参考一下...2016-05-09
  • 分享MYSQL插入数据时忽略重复数据的方法

    使用下以两种方法时必须把字段设为”主键(PRIMARY KEY”或”唯一约束(UNIQUE)”。1:使用REPLACE INTO (此种方法是利用替换的方法,有点似类于先删除再插入) 复制代码 代码如下:REPLACE INTO Syntax REPLACE [LOW_PRIO...2013-10-04
  • PostgreSQL 恢复误删数据的操作

    这篇文章主要介绍了PostgreSQL 恢复误删数据的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-18
  • PS如何创建变形文字 ps给文字变形的方法

    PS怎么创建变形文字?ps中想要给输入的文字变形,该怎么调整文字的显示形态呢?下面我们就来看看ps给文字变形的方法,需要的朋友可以参考下 我们在图层上输入文字后,可以...2017-07-06