欧美三区四区_av先锋影音资源站_亚洲第一论坛sis_影音先锋2020色资源网_亚洲精品社区_在线免费观看av网站_国产一区二区伦理_亚洲欧美视频一区二区_99视频精品全部免费在线_精精国产xxxx视频在线

帶數據緩存的ACCESS數據庫操作類(2)_Access數據庫教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:Access 2007數據庫添加附件
Access允許您在數據庫表中包含附件。通過利用微軟的對象鏈接和嵌入(OLE)技術,您可以將照片、圖表、文檔及其他文件存儲在您的Access數據庫中。數據庫附件是Access 2007版本的一個新特

 

代碼:

以下為引用的內容:

<?php
class access
{
/**
* 聲明存儲查詢結果ID的數組,數據庫連接ID,存儲分頁信息的數組,緩存數據讀取偏移量
*/
public $resultId, $linkId, $pageMsg, $offset;
/**
* 聲明顯示錯誤消息的頁面地址
*/
public $errPage = '';
/**
* 聲明數據庫路徑,此路徑需為絕對路徑
*/
public $dbPath = '';

/**
* 緩存存儲路徑
*/
public $cachePath = '';

/**
* 緩存聲明周期,設為0則不適用緩存
*/
public $cacheLifeTime = 3600;

/**
* 當使用分頁查詢時,最多緩存多少頁
*/
public $cacheLimitMax = 100;

/**
* 建立數據庫連接
*
* 說明:
* 此數據庫類無構造函數,在聲明新類之后,需手動運行此函數
*/
public function connect()
{
$dsn = 'DRIVER={Microsoft Access Driver (*.mdb)}; DBQ='.$this->dbPath;
$this->linkId = odbc_connect($dsn,'','',SQL_CUR_USE_ODBC);
$this->linkId || $this->setError('Connect database defeat!');
}

/**
* 執行一條SQL語句
*
* 參數:
* $sql 要執行的SQL語句
* $resultId 查詢結果的ID,當執行一條不需返回的SQL語句,如刪除,更新等時,該參數可省略
*/
public function query($sql ,$resultId = '__id__')
{
$this->resultId[$resultId] = odbc_exec($this->linkId,$sql);
$this->resultId[$resultId] || $this->setError('Carries out the SQL defeat!');
}

/**
* 從查詢結果集中讀取一條記錄,并返回為數組
*
* 參數:
* $resultId 查詢結果的ID
*/
public function record($resultId)
{
if (is_array($this->resultId[$resultId]))
{
$offset = $this->offset[$resultId]; $this->offset[$resultId] ;
return $this->resultId[$resultId][$offset];
}
return odbc_fetch_array($this->resultId[$resultId]);
}

/**
* 從查詢結果集中讀取一條記錄,并注冊為類的屬性,屬性名為字段名
*
* 參數:
* $resultId 查詢結果ID
*/
public function recordObj($resultId)
{
if (is_array($this->resultId[$resultId]))
{
$rowArray = $this->resultId[$resultId][$this->offset[$resultId]];
$this->offset[$resultId] ;
} else {
$rowArray = $this->record($resultId);
}
for (reset($rowArray);$key = key($rowArray);next($rowArray)) $this->$key = $rowArray[$key];
}

/**
* 獲取一個查詢結果集的記錄數
*
* 參數:
* $resultId 查詢結果ID
*/
public function rowsNum($resultId)
{
return odbc_num_rows($this->resultId[$resultId]);
}

/**
* 獲取表中符合條件的記錄總數
*
* 參數:
* $table 表明
* $primary 主鍵,提供一個主鍵時可提高性能
* $condition 查詢條件,留空時將返回表中的記錄總數
*/
public function rowsTotal($table, $primary = '*', $condition = '')
{
$sql = 'select ('.$primary.') from '.$table.($condition ? ' where '.$condition : '');
$rowsTotal = odbc_result(odbc_exec($this->linkId,$sql),1);
$rowsTotal >= 0 || $this->setError('Gains the record total defeat!');
return (int)$rowsTotal;
}

/**
* 釋放一個查詢結果
*
* 參數:
* $resultId 查詢結果ID
*/
public function resultFree($resultId)
{
odbc_free_result($this->resultId[$resultId]) || $this->setError('Release result defeat!');
}

/**
* 釋放所有查詢結果
*/
public function allResultFree()
{
for (reset($this->resultId);$key = key($this->resultId);next($this->resultId)) '__id__' == $key || $this->resultFree($key);
}

/**
* 釋放所有查詢結果并關閉數據庫連接
*/
public function close()
{
$this->allResultFree(); odbc_close($this->linkId);
}

/**
* 數據庫查詢
*
* 參數:
* $resultId 查詢結果ID
* $table 所要查詢的數據表
* $fields 需要返回的字段,省略時將返回所有字段
* $condition 查詢條件,省略時,將返回表中的所有記錄
*/
public function select($resultId, $table, $fields = '*', $condition = '')
{
if ($this->cacheLifeTime)
{
$cachePath = $this->cachePath.$table.md5($fields.$condition).'.php';
if (time() - @filemtime($cachePath) < $this->cacheLifeTime)
{
include $cachePath; $this->resultId[$resultId] = $dataCache;
$this->offset[$resultId] = 0; return;
} else {
$writeCache = true;
}
}
$condition && $condition = 'order ' == substr($condition,0,6) ? $condition : ' where '.$condition;
$this->query('select '.$fields.' from '.$table.$condition,$resultId);
$writeCache && $this->writeCache($cachePath,$resultId);
}

/**
* 插入記錄
*
* 參數:
* $table 表明
* $rowArray 二維數組,索引為字段名
*/
public function insert($table,$rowArray)
{
$fields = $values = '';
for (reset($rowArray); $key = key($rowArray);next($rowArray))
{
$fields .= ','.$key; $values .= ',\''.$rowArray[$key].'\'';
}
$this->query('insert into '.$table.'('.substr($fields,1).') values('.substr($values,1).')');
}

/**
* 更新一條記錄
*
* 參數:
* $table 表名
* $rowArray 二維數組,索引為字段名
* $condition 更新條件
*/
public function update($table,$rowArray,$condition)
{
$fields = '';
for (reset($rowArray);$key = key($rowArray);next($rowArray)) $fields .= ','.$key.'=\''.$rowArray[$key].'\'';
$this->query('update '.$table.' set '.substr($fields,1).' where '.$condition);
}

/**
* 刪除記錄
*
* 參數:
* $table 表明
* $condition 刪除條件,當省略時,刪除表中的所有記錄
*/
public function delete($table,$condition = '')
{
$this->query('delete from '.$table.($condition ? ' where '.$condition : ''));
}

/**
* 輸出數據列表
*
* 參數:
* $resultId 查詢結果ID
* $rowHtml 列表的行HTML代碼
* $everyOther 每隔幾行插入$insertHtml
* $insertHtml 需要插入的HTML
*
* $rowHtml的編寫規則:
* <td>{$name}</td><td>{date('Y-m-d',strtotime($addtime))}</td>
* 需要輸出的字段或用來格式化字段的函數需用{和}包括
* 變量名使用字段名
*/
public function displayList($resultId,$rowHtml,$everyOther = '',$insertHtml = '')
{
$rowHtml = preg_replace('/\$([A-Za-z0-9_] )/','$rowArray[\'\\1\']',$rowHtml);
$rowHtml = 'echo \''.str_replace(array('{','}'),array('\',',',\''),$rowHtml).'\'';
$i = 1;
while ($rowArray = $this->record($resultId))
{
eval($rowHtml);
if ($everyOther == $i) { echo $insertHtml; $i = 1; }
$i = $i 1;
}
}

/**
* 分頁查詢函數
*
* 參數:
* $resultId 查詢結果ID
* $table 所要查詢的數據表名
* $fields 需要返回的字段
* $primary 用來排序的字段
* $page 查詢第幾頁
* $pageSize 每頁記錄數
* $condition 查詢條件,默認為空
* $order 排序方式,0為正序,1為倒序,默認為1
*
* 說明:
* 此函數會將與分頁相關的信息存儲于$this->pageMsg[$resultId]中
* 這是一個一維數組,具有5個值,分別為:記錄總數,總頁數,當前頁記錄數,當前第幾頁,每頁多少條記錄
* 可利用這些信息編寫自己的分頁樣式,不需另外計算
*/
public function limit($resultId,$table,$fields,$primary,$page,$pageSize,$condition = '',$order = 1)
{
isset($this->pageMsg[$resultId][0]) || $this->pageMsg[$resultId][0] = $this->rowsTotal($table,$primary,$condition);
$this->pageMsg[$resultId][1] = ceil($this->pageMsg[$resultId][0]/$pageSize);
$page > $this->pageMsg[$resultId][1] && $page = $this->pageMsg[$resultId][1];
$this->pageMsg[$resultId][2] = $page == $this->pageMsg[$resultId][1] ? ($this->pageMsg[$resultId][0]-($page-1)*$pageSize) : $pageSize;
$this->pageMsg[$resultId][3] = $page;
$this->pageMsg[$resultId][4] = $pageSize;
if ($this->cacheLifeTime && $page <= $this->cacheLimitMax)
{
$cachePath = $this->cachePath.$table.'_'.$page.'.php';
if (time() - @filemtime($cachePath) < $this->cacheLifeTime)
{
include $cachePath; $this->resultId[$resultId] = $dataCache;
$this->offset[$resultId] = 0; return;
} else $writeCache = true;
}
if ($order)
{
$mark = '<'; $min = 'min'; $order = ' order by '.$primary.' desc';
} else {
$mark = '>'; $min = 'max'; $order = '';
}
$sql = 'select top '.$this->pageMsg[$resultId][2].' '.$fields.' from '.$table;
if (1 == $page)
{
$sql .= ($condition ? ' where '.$condition : '').$order;
} else {
$sql .= ' where '.$primary.$mark.'(select '.$min.'('.$primary.') from (select top '.($page-1)*$pageSize;
$sql .= ' '.$primary.' from '.$table.$order.')) '.($condition ? 'and '.$condition : '').$order;
}
$this->query($sql,$resultId);
$writeCache && $this->writeCache($cachePath,$resultId);
}

public function displayLimit($resultId,$linkHtml,$style = 2,$recordName = '條記錄')
{
if (2 == $style)
{
echo '共&nbsp;<strong>',$this->pageMsg[$resultId][0],'</strong>&nbsp;',$recordName,' ';
}
echo '<a href=',str_replace('*','1',$linkHtml),'>首頁</a>&nbsp;';
if (1 == $this->pageMsg[$resultId][3])
{
echo '上一頁&nbsp;';
} else {
echo '<a href=',strtr('*',$this->pageMsg[$resultId][3]-1,$linkHtml),'>上一頁</a>&nbsp;';
}
if ($this->pageMsg[$resultId][3] == $this->pageMsg[$resultId][1])
{
echo '下一頁';
} else {
echo '<a href=',strtr('*',$this->pageMsg[$resultId][3] 1,$linkHtml),'>下一頁</a>';
}
echo '&nbsp;<a href=',strtr('*',$this->pageMsg[$resultId][1],$linkHtml);
echo '>尾頁</a>&nbsp;頁次:<strong><font color=#ff0000>';
echo $this->pageMsg[$resultId][3],'</font>/',$this->pageMsg[$resultId][1],'</strong>頁';
if (2 == $style)
{
echo ' <strong>',$this->pageMsg[$resultId]['e'],'</strong>',$recordName,'/頁&nbsp;轉到';
echo ':<select name=page size=1 onchange="javascript:window.location=';
echo 'this.options[this.selectedIndex].value;" style=font-size:12px;height=18px>';
for ($i=1;$i<=$this->pageMsg[$resultId][1];$i )
{
echo '<option value=\'',strtr('*',$i,$linkHtml);
echo $this->pageMsg[$resultId][3] == $i ? '\' selected ' : '\'','>第',$i,'頁</option>';
}
echo '</select>';
}
}

/**
* 將查詢結果輸入緩存
*
* 參數:
* $cachePath 緩存路徑
* $resultId 查詢結果ID
*/
private function writeCache($cachePath,$resultId)
{
$cacheContent = '';
while ($rowArray = odbc_fetch_array($this->resultId[$resultId]))
{
$cacheContent .= '$dataCache[]=array('.$this->rowToStr($rowArray).');';
}
file_put_contents($cachePath,'<?php '.$cacheContent.' ?>');
include $cachePath; $this->resultId[$resultId] = $dataCache;
$this->offset[$resultId] = 0;
}

/**
* 將數組轉換為一個二維數組結構的字符串
*
* 參數:
* $rowArray 數組
*/
private function rowToStr($rowArray)
{
for (reset($rowArray);$key = key($rowArray);next($rowArray))
{
$rowStr .= ',\''.$key.'\'=>\''.strtr($rowArray[$key],'\'','\\\'').'\'';
}
return substr($rowStr,1);
}

/**
* 調用錯誤消息頁面,完成錯誤消息的顯示
*
* 參數:
* $msg 錯誤消息
*/
public function setError($msg)
{
include $this->errPage;
}
}
?>

分享:淺談Access數據庫用另一種方式管理密碼
大家都知道,數據庫的安全性是很重要的,它直接影響到數據庫的廣泛應用。用戶可以采用任意一種方法來保護數據庫應用程序,也可以將幾種方法結合起來使用。利用Access數據庫自身提供的

共2頁上一頁12下一頁
來源:模板無憂//所屬分類:Access數據庫教程/更新時間:2008-12-02
相關Access數據庫教程
精品久久久无码人妻字幂| 91久久奴性调教| 午夜在线视频观看| 欧美色综合网| 香港成人在线视频| 国产精品pans私拍| 国产亚洲电影| 久久综合久久综合久久| 欧美日韩另类图片| 久久国产福利国产秒拍| 日韩美女在线视频| 免费观看成人在线| 日本在线一级片| 美女扒开腿让男人桶爽久久动漫| 久久精品综合网| 精品国产自在精品国产浪潮| 日韩在线观看a| 亚洲精品一区二区二区| 激情欧美国产欧美| 欧美三级中文字幕在线观看| 99国内精品久久久久久久软件| 精品人妻无码一区二区三区| 青草伊人久久| 亚洲国产精品成人久久综合一区| 色综合视频网站| 波多野结衣天堂| 深夜福利视频网站| 国v精品久久久网| 中文日韩电影网站| aa在线免费观看| www日本在线| 国产综合久久久久影院| 亚洲欧洲日产国码av系列天堂| 亚洲精品你懂的| 俺也去精品视频在线观看| 日韩精品一区二区三区久久| 国产黄色一区二区| 久久精品国产免费看久久精品| 亚洲精品在线电影| 51xx午夜影福利| 亚洲综合一区中| 日本aⅴ亚洲精品中文乱码| 日韩大陆欧美高清视频区| 91精品国产吴梦梦| 一二三四区视频| 日韩中文字幕亚洲一区二区va在线| 日韩欧美中文字幕一区| 日本成人性视频| 97人妻精品视频一区| 美女视频一区免费观看| 亚洲国产一区二区三区在线观看 | 一本在线免费视频| 中文字幕av一区二区三区人| 亚洲va天堂va国产va久| 成人黄色片视频网站| 日本精品在线免费观看| 亚洲91精品| 91麻豆精品国产91久久久更新时间| 亚洲成人在线视频网站| 国产精品国产精品国产| 蜜桃视频免费观看一区| 中文字幕亚洲国产| jizz大全欧美jizzcom| 精品国产黄a∨片高清在线| 久久精品视频在线看| 日韩美女毛茸茸| 日韩免费成人av| 成人3d精品动漫精品一二三| 欧美影视一区在线| 亚洲精品美女久久7777777| 久久久久久亚洲av无码专区| 日本亚洲欧美天堂免费| 神马久久久久久| 91亚洲免费视频| 欧美日本三级| 亚洲成人av在线电影| 精品一区二区不卡| 日本视频在线观看免费| 日本成人在线一区| 精品国产一区二区三区久久久狼| 一级 黄 色 片一| 国产精品白丝一区二区三区| 精品久久久久久国产| 日本不卡一区| 97超碰资源站| 北条麻妃一区二区三区| 人九九综合九九宗合| 色欲狠狠躁天天躁无码中文字幕| 色婷婷色综合| 精品国产免费久久| 干日本少妇首页| 五月天色综合| 亚洲成a人片在线观看中文| 九九热久久66| 伊人网视频在线| 成人综合婷婷国产精品久久蜜臀| 91精品国产91久久久久久吃药| 日韩在线免费观看av| 国产精品91一区二区三区| 日韩午夜激情av| 97成人在线免费视频| 成人午夜sm精品久久久久久久| 中文字幕综合网| 国产美女精品在线观看| 中日韩av在线| 成人高清伦理免费影院在线观看| 国产精品久久久久久av福利| 久草视频免费在线播放| 日韩va亚洲va欧美va久久| 欧美成aaa人片免费看| 朝桐光av一区二区三区| 亚洲色图插插| 中文字幕国产亚洲| www.啪啪.com| 国产精品久久占久久| 亚洲精品自拍偷拍| 亚洲欧美日韩中文字幕在线观看| 国产日产一区| 精品久久国产老人久久综合| www.夜夜爽| 国产欧美一区二区精品久久久| 日韩精品中文字幕一区二区三区| 久草在在线视频| 欧美电影在线观看完整版| 91精品国产一区二区三区香蕉| 欧美国产亚洲一区| avtt综合网| 7777女厕盗摄久久久| 国产 porn| 欧美女优在线视频| 亚洲黄页视频免费观看| 日本女人性视频| 99久久激情| 在线观看日韩av| 国产精品无码一区二区三区免费 | 日产亚洲一区二区三区| 国产一区二区导航在线播放| 国产精品 欧美在线| 成人精品在线看| 成人av在线资源| 91久久偷偷做嫩草影院| 一区二区三区午夜| 国产精品色噜噜| 色噜噜狠狠一区二区三区| 刘亦菲一区二区三区免费看| 精品国产91乱高清在线观看| 青青青在线观看视频| 波多野结衣在线一区二区| 91精品免费观看| 中文字幕在线观看日| 欧美特黄一级大片| 国产一区二区精品丝袜| 免费看黄色的视频| 狂野欧美性猛交xxxx巴西| 欧美制服第一页| 在线观看亚洲欧美| 91麻豆国产福利精品| 欧美乱偷一区二区三区在线| 亚洲精品**中文毛片| 精品成人av一区| 少妇一晚三次一区二区三区| 都市激情久久| 亚洲精品国产精品国产自| 亚洲第一黄色网址| 久久一区激情| 国产精品欧美一区二区| 久久久久综合| 欧美一区二区三区不卡| 182午夜在线观看| 天天天综合网| 久久精品影视伊人网| 国产性xxxx| heyzo一本久久综合| 精品伦精品一区二区三区视频| 亚洲av成人无码久久精品老人| 欧美视频一二三| 国产精品无码一本二本三本色| 波多野结衣的一区二区三区 | 欧美亚洲激情视频| 啦啦啦免费高清视频在线观看| 久久精品在这里| 日本黄色a视频| 国产福利资源一区| 亚洲欧美成人一区二区在线电影| 免费精品视频| 亚洲欧美成人精品| 国产7777777| 国产一区二区三区香蕉| 成人免费观看网站| 三上悠亚一区二区| 91精品国产欧美一区二区18| 亚洲自拍偷拍精品| 日韩精品三区四区| 亚洲在线视频福利| 经典三级一区二区| 欧美一区二区三区小说| 久久偷拍免费视频| 久久99精品久久久久婷婷| 成人午夜电影在线播放| 欧美日韩不卡| 日韩欧美你懂的| 色欲av无码一区二区三区| 韩国av一区二区三区在线观看| 国产欧美日韩一区| 在线欧美激情| 亚洲欧美日韩另类| 久久久www成人免费毛片| 国产成人精品777777| 最新不卡av在线| 免费午夜视频在线观看| 亚洲最新色图| 国产美女精品一区二区三区| 亚洲日韩欧美视频一区| 182在线观看视频| 久久青草国产手机看片福利盒子| 桥本有菜av在线| 欧洲grand老妇人| 91精品国产成人| 国产三级在线观看视频| 在线观看免费成人| 中文字幕第3页| 国产精品 日产精品 欧美精品| 视频一区亚洲| 国产精品久久久久久免费| 色88888久久久久久影院野外| 黑人无套内谢中国美女| 精品一区二区三区免费播放| 免费精品视频一区| 久久狠狠久久| 欧美人与物videos| 91超薄丝袜肉丝一区二区| 欧洲亚洲精品在线| 亚洲中文字幕一区| thepron国产精品| 久久久久久久香蕉| 欧美精品1区| 亚洲影院色无极综合| 日本国产亚洲| 在线日韩日本国产亚洲| 国产99免费视频| 色猫猫国产区一区二在线视频| 日韩网站在线播放| 97se亚洲国产综合自在线不卡| 一本大道东京热无码aⅴ| 亚洲女同另类| 114国产精品久久免费观看| **欧美日韩在线| 久久色免费在线视频| 一级特黄色大片| 欧美精品视频www在线观看| 殴美一级黄色片| 亚洲青青青在线视频| 亚洲天堂伊人网| 国产高清视频一区| www.国产亚洲| 亚洲国产激情| 久久精彩视频| 国内精品久久久久久久久电影网| 欧美一级视频在线观看| 欧美电影免费观看| 在线视频日本亚洲性| 中文区中文字幕免费看| 欧美日韩精品久久久| 婷婷社区五月天| 亚洲精品国产一区二区三区四区在线| 精产国品一区二区三区| 成人福利电影精品一区二区在线观看| av免费观看国产| 噜噜噜91成人网| 亚洲看片网站| 国模 一区 二区 三区| 精选一区二区三区四区五区| 美女亚洲一区| 国产日韩综合一区二区性色av| 国产精品国产亚洲精品| 久久久亚洲国产天美传媒修理工| 天天操天天舔天天干| 亚洲欧美制服第一页| 亚洲视频中文字幕在线观看| 日韩欧美国产精品一区| www.中文字幕在线观看| 欧美午夜视频网站| 日韩女优一区二区| 福利精品视频在线| 国产白丝一区二区三区 | 丁香社区五月天| 69av一区二区三区| 91久久国产视频| 欧美日韩性生活| 精品无码人妻一区二区三| 色综合久久久久综合99| 特一级黄色录像| 欧美午夜激情在线| 国产精品免费人成网站酒店| 欧美丝袜一区二区| 男人操女人的视频网站| 精品久久久久人成| av最新在线观看| 丁香五六月婷婷久久激情| 国产又粗又硬又长又爽| 色综合天天综合狠狠| 91麻豆免费视频网站| 一本色道久久综合狠狠躁的推荐| 欧美第一页在线观看| 色噜噜狠狠色综合中国| 成人免费视频网站入口::| 色久优优欧美色久优优| 久草视频在线免费看| 欧美群妇大交群的观看方式| 日本一级一片免费视频| 欧美一级日韩免费不卡| chinese国产精品| 日韩成人中文字幕| 午夜精品久久久久久久99| 色噜噜亚洲精品中文字幕| 亚州视频一区二区三区| 久久91亚洲精品中文字幕奶水| avav成人| 国产999在线观看| 欧美男男freegayvideosroom| 91久久久久久久久久久久久| 国产探花在线精品一区二区| 国产女人水真多18毛片18精品| 1024精品久久久久久久久| 日本一区二区三区四区高清视频 | 欧美亚洲国产怡红院影院| 欧美重口乱码一区二区| 亚洲h色精品| 午夜视频久久久| 先锋影音久久久| 男人用嘴添女人下身免费视频| 国产成人午夜视频| 成人黄色一级大片| 国产精品麻豆欧美日韩ww| 人妻体内射精一区二区| 精品国产乱码久久久久久婷婷| 欧美日韩国产精品综合| 正在播放一区二区| 这里只有精品6| 日韩在线视频导航| 精品久久在线| 国产精品中文字幕在线| 欧美1级片网站| 亚洲欧洲精品一区二区| 美女看a上一区| 日韩高清第一页| 中文字幕一区二区三区在线播放| 手机毛片在线观看| 欧美日韩在线观看一区二区 | 91女神在线观看| 国产精品天美传媒沈樵| 国产破处视频在线观看| 亚洲精品国产一区二| 亚洲欧洲在线播放| 极品美女一区| 日韩免费av在线| 精品色999| 亚洲欧洲日韩精品| 国产一区二三区好的| 一区二区三区欧美精品| 成人免费在线视频| 亚洲国产美女视频| 亚洲精品一区二区三区99| 日批视频免费播放| 国产精品一区二区在线观看不卡| 少妇性饥渴无码a区免费| 久久伊人中文字幕| 国产伦精品一区二区三区视频女| 欧美丝袜第三区| 91tv国产成人福利| 成人激情小说网站| 影音先锋在线亚洲| 国产乱码精品一区二区三| 久久久国产精品久久久| 亚洲成av人片在线观看| 成人毛片在线播放| 中文字幕一区二区精品| 久久国产精品免费一区二区三区| 99高清视频有精品视频| 国产欧美短视频| 中文字幕国内自拍| 亚洲曰韩产成在线| 国产伦精品一区二区三区视频我| 在线播放日韩欧美| 日韩区一区二| 精品无人区一区二区三区竹菊| 蜜臀av性久久久久蜜臀av麻豆| 亚洲黄色av片| 精品久久久在线观看| 中文字幕人妻丝袜乱一区三区| 欧美大尺度在线观看| 网友自拍区视频精品| 夜夜爽99久久国产综合精品女不卡| 懂色av一区二区三区免费观看| 丰满圆润老女人hd| 在线不卡一区二区| 香蕉久久一区二区三区| 国产免费亚洲高清| 亚洲精选一区| 久久久久久久久久久久久久久国产|