成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 網(wǎng)站建設 > 建站知識 > 織夢文件上傳功能分析教程

織夢文件上傳功能分析教程

POST TIME:2020-04-11 21:39

織夢系統(tǒng)里面的上傳功能比較多,例如有友情連接里的logo上傳、模塊管理里面的上傳模塊和模塊打包、發(fā)布新圖集里面的上傳圖片集、發(fā)布新軟件里的上傳本地文件、附件管理里面的上傳新文件、文件式管理器里面的文件上傳、織夢會員中心里面的軟件上傳和縮略圖等等,在織夢里面的文件上傳功能到處都有應用。

我們分析三個有代表性的,一個是logo上傳,這個是一般的應用,但相對復雜一點;另一個是附件管理時面的上傳新文件,這二個一個共同特點是上傳的文件都要保存到數(shù)據(jù)庫里面,第三個是文件式管理器里面的文件上傳功能,這個與我們之前的教程“php文件(單文件和多文件)上傳詳解教程”講的一樣,都是簡單的上傳文件,沒有用到數(shù)據(jù)庫知識,我們就以這三個為例子,其它的上傳跟這三個可以說大同小異。

要分析這三個文件讓傳功能,需要對織夢文件上傳處理方式,織夢與我們在php文件(單文件和多文件)上傳詳解教程里看到的文件上傳是很不一樣的,畢竟,織夢系統(tǒng)是一比較成熟的cms系統(tǒng),織夢處理文件上傳,不像我們看的教程一樣寫一個文件就可以了,因為,織夢系統(tǒng)里面用到的文件上傳很多,不光是織夢系統(tǒng),其它系統(tǒng)一定會用到文件上傳,只要是網(wǎng)站就會用到文件上傳功能。

織夢是如何處理文件上傳的呢?要了解這個我們就要分析一下文件上傳的共同點,然后,把這公共部分放在一個文件,然后,其它上傳文件就直接引用這個文件就可以了,這樣其它每個上傳功能如logo上傳,圖片集上傳,軟件上傳等各自寫適合自己的代碼,然后,再引用公共部分即可。這種思想正是函數(shù)產生的思想,什么是函數(shù)簡單而言之,就是把公共功能寫成一段代碼,其它,需要這個功能時直接調用,而本篇講的文件調用也正是如此。

織夢文件上傳公共部分在根目錄(http://www.dedebase.com這就是根目錄,如果你在本地的話根目錄就是http://localhost)/include/uploadsafe.inc.php,對就在uploadsafe.inc.php文件里面,這個引用文件功能是:“轉換上傳的文件相關的變量及安全處理、并引用前臺通用的上傳函數(shù)。”。

織夢是如何把這個文件配置到要引用它的文件里的呢?首頁,要在/include/common.inc.php里面,寫一句如下代碼:

if($_FILES)
{
require_once(DEDEINC.'/uploadsafe.inc.php');
}

這段代碼的意思就是,當要上傳文件時,就引用文件uploadsafe.inc.php,如果我們打開例如logo上傳文件friendlink.add.php你會發(fā)現(xiàn),沒有這個uploadsafe.inc.php文件,是的,織夢還配置了一個在根目錄/dede/里面的config.php文件,這個是后臺根目錄/dede/所有php文件共有的,如果你隨便打開個文件,你會發(fā)現(xiàn)都引用了這個文件,這個config.php不僅僅包括了上傳文件,還包括了數(shù)據(jù)庫連接等很多織夢程序所必備的內容。為什么這樣包涵來包涵去?還是為了開發(fā)方便,試想如果我們把這些文件里的東西都寫進friendlink.add.php里面,那文件得多大啊,更重要的是重復寫相同的內容,不利于開發(fā)。

我們就拿logo上傳為例子這些文件是這樣相互包括的:friendlink.add.php 引入config.php,config.php引入common.inc.php,common.inc.php引入uploadsafe.inc.php。這樣無論friendlink.add.php如何改變都不影響后面的文件,有利于開發(fā)。

現(xiàn)在我們就要分析一uploadsafe.inc.php是如何轉換上傳的文件變量即$_FILES及安全設置的。

打開uploadsafe.inc.php文件,找到foreach($_FILES as $_key=>$_value)這句,這句前面是設置強制哪些文件類型可以上傳,并設置了一個數(shù)組$keyarr = array('name', 'type', 'tmp_name', 'size');數(shù)組$keyarr值正是$_FILES的鍵,這是為后面進行數(shù)組遍歷作準備。還對是不是通過編輯器上傳作了判斷。

在foreach($_FILES as $_key=>$_value)后面是重點了,通過foreach($_FILES as $_key=>$_value)我們可以得到$_key,這個$_key正是我們表單里面的類型為file的name屬性值,這一點非常重要。這句foreach($_FILES as $_key=>$_value)代碼就是為了得到這個$_key。為了進一步說明這個$_key我們把$_FILES數(shù)組存儲的內容分析一下,這里以單個文件上傳為例子,多個文件一樣。$_FILES存儲的內容如下。

Array
(
[upmyfile] => Array
(
[name] => 1440x900wolf.jpg
[type] => image/jpeg
[tmp_name] => D:APMServ5.2.6 mpuploadtempphp6B1.tmp
[error] => 0
[size] => 160666
)

)

這句代碼foreach($_FILES as $_key=>$_value),正是為了獲得這個$_key就是$_FILES里面的upmyfile。接下來我們就要得到name,type,tmp_name,error,size了,我們完全可以再遍歷一下$_value,因為$_value又是一個數(shù)組,包括這些內容,但是大家想一下,這只是單文件上傳,如果是一個多文件上傳,是不是比較重雜?是的,織夢想到了一好辦法就是先定義一個$Keyarr數(shù)組,直接從這個數(shù)組里面獲取name,type,tmp_name,error,size,既簡單,又方快速。

代碼foreach($keyarr as $k)這句正是為了獲取name,type,tmp_name,error,size內容。

接下來這句代碼$$_key = $_FILES[$_key]['tmp_name'];是這個uploadsafe.inc.php里面的重中之重,這個代碼的等價于$upmyfile = D:APMServ5.2.6 mpuploadtempphp6B1.tmp;以后,我們在引用uploadsafe.inc.php這個文件的文件里看到類似$upmyfile就等于是$_FILES[$_key]['tmp_name']即上傳文件臨時文件名,同理

${$_key.'_name'} = $_FILES[$_key]['name'] 等價于 $upmyfile_name = $_FILES[$_key]['name'] = 1440x900wolf.jpg。

${$_key.'_type'} = $_FILES[$_key]['type'] 等價于 $upmyfile_type = $_FILES[$_key]['type'] = image/jpeg。

${$_key.'_size'} = $_FILES[$_key]['size'] 等價于 $upmyfile_size = $_FILES[$_key]['size'] = 160666。

之所以通過以上方式處理,就是為了在引用uploadsafe.inc.php文件的文件里面,不出現(xiàn)類似$_FILES[$_key]['size']這樣長的代碼。

后面的代碼就是對文件上傳的文件名是不是空,是不是我們允許的文件后綴,文件名是不是少個點進行判斷;對文件大小是不是0,如果是我們通過系統(tǒng)函數(shù)filesize()獲取,如果更加詳細的判斷還要判斷一下,用戶上傳的內容是不是超出了我們設置的大小,是不是超出了服務器設置的大小,但織夢沒有判斷在上一個教程“php文件(單文件和多文件)上傳詳解教程”我們已經作了詳細判斷。

最后,對上傳的文件類型進行判斷,強制使用我們設置的文件類型。

總結:uploadsafe.inc.php用到的系統(tǒng)函數(shù)有是否存在函數(shù)etmpty(),通過正則來判斷是否匹配preg_match(),檢查數(shù)組中是否存在某個值in_array(),將字符串轉化為小寫strtolower(),去除字符串首尾處的空白字符(或者其他字符)trim(),preg_replace — 執(zhí)行一個正則表達式的搜索和替換等函數(shù),現(xiàn)在我們對uploadsafe.inc.php這個文件已經分析完了。

一、logo文件上傳如下圖所示。

現(xiàn)在我們分析以上傳logo文件,logo上傳處理文件是friendlink.add.php,對應的模板文件是friendlink.add.htm模板文件我們就不用多說了,都是一些html代碼,我們只要找到模板中這二句(簡化后):

網(wǎng)站Logo: <input name="logo" type="text" id="logo"/>

上傳Logo: <input name="logoimg" type="file" id="logoimg" />

我們打開friendlink.add.php文件,程序首先用if(is_uploaded_file($logoimg))判斷一下上傳的文件是不是通過http post上傳的?如果是說明是通過本地上傳的logo,也就是上面的<input name="logoimg" type="file" id="logoimg" />這個選擇框上傳的,如果不是則是通過<input name="logo" type="text" id="logo"/>,直接在這個文件框寫上的logo地址。

若if(is_uploaded_file($logoimg))成立則程序向下執(zhí)行,注意這句代碼里面的$logoimg指什么?正常的文件框的話,當然是通過$_POLST獲得的,例如上面二行中的網(wǎng)站Logo:就是通過$_POST獲取值,而上傳logo即$logoimg則不是通過$_POST獲得,而是通過$_FILES獲得的,也就是我們在uploadsafe.inc.php里面分析的$upmyfile = D:APMServ5.2.6 mpuploadtempphp6B1.tmp,只不過現(xiàn)在的$upmyfile變成了$logoimg即,$logoimg = D:APMServ5.2.6 mpuploadtempphp6B1.tmp。

如果你看明白了這點,那么,下面的$logoimg_name、$logoimg_type、$logoimg_size分別對應上傳文件的文件名、上傳文件的類型、上傳文件的大小了。那下面的代碼就比較容易了,這是難點也是重點。

代碼$names = split(".", $logoimg_name);意思是把上傳的文件名通過正則匹配,模式是通過點分成二部分,存放在數(shù)組$name中。

我給織夢挑一個不算錯誤:函數(shù)preg_split()比split()快,而explode()在這三個中運行速度最快,前二個需要正則表達式,最后這個explode()則使用字符串分割。他們三個都返回數(shù)組,所以,這里應當換上explode()最好了,我們做個測試一下,看看返回結果。

$name = "1440x900wolf.jpg";
$a = split(".", $name);
$b = split(".", $name);
$c = explode(".",$name);

print_r($a);

echo "<br />";

print_r($b);

echo "<br />";

print_r($c);

這段代碼返回的結果是:

Array ( [0] => 1440x900wolf [1] => jpg )
Array ( [0] => 1440x900wolf [1] => jpg )
Array ( [0] => 1440x900wolf [1] => jpg )

這充分說明了返回的結果是一樣的,所以,建議大家能用explode()就用這個。

回到friendlink.add.php文件里,$shortname = ".".$names[count($names)-1];這句里面的$names[count($names)-1]獲取文件類型名,例如上面的例子jpg。整句就得到了.jpg。

下面這個判斷語句用來判斷,我們上傳的文件名是不是我們允許的,是不是jpg,gif,png,若不是則直接改后綴名為.gif。
if(!preg_match("#(jpg|gif|png)$#", $shortname))
{
$shortname = '.gif';
}

下面這句,是對文件名進行重新命名,這樣是為了防止,不同的用戶上傳相同的名子后,前面的會被后面的覆蓋掉。

$filename = MyDate("ymdHis", time()).mt_rand(1000,9999).$shortname;

下面這句是設置文件上傳路徑,其中$cfg_medias_dir附件上傳路徑,在common.inc.php已經定義。

$imgurl = $cfg_medias_dir."/flink";

下面這句判斷是不是目錄,不是則建立,其中$cfg_basedir是根目錄,$cfg_dir_purview是權限,在common.inc.php已經定義。

if(!is_dir($cfg_basedir.$imgurl))
{
MkdirAll($cfg_basedir.$imgurl, $cfg_dir_purview);
CloseFtp();
}

下面這句是要把臨時文件轉移到對應路徑和文件名。

$imgurl = $imgurl."/".$filename;

移動文件:下面這個函數(shù)是重點,我們上面所做的工作完全就是為這個文件轉移函數(shù)服務的。

move_uploaded_file($logoimg,$cfg_basedir.$imgurl)

刪除臨時文件@unlink($logoimg);@這個抑制符意思是不顯示錯誤。

//強制檢測用戶友情鏈接分類是否數(shù)據(jù)結構不符
if(empty($typeid) || preg_match("#[^0-9]#", $typeid))
{
$typeid = 0;
$dsql->ExecuteNoneQuery("ALTER TABLE `dede_flinktype` CHANGE `ID` `id` MEDIUMINT( 8 ) UNSIGNED DEFAULT NULL AUTO_INCREMENT; ");
}

這句看似不重要,實際上這句非常重要,如果這個$typeid錯誤,直接導致,logo出問題。

現(xiàn)在就要把友情鏈接添加到數(shù)據(jù)庫了,請注意我們上傳的logo是把路徑保存到數(shù)據(jù)庫里面的,而不是把圖片保存到數(shù)據(jù)庫里面,有沒有把圖片保存到數(shù)據(jù)庫里面的?有,以前聽老師講課時,講到過,但是極少,一般都是保存圖片路徑的,這樣程序只需要查詢一下數(shù)據(jù)庫就知道圖片在哪里了,目前,本人從沒有見過圖片保存到數(shù)據(jù)庫里的。

目前為止,我們已經把logo上傳分析完了。

二、附件管理——>上傳文件如下圖所示。

與logo文件上傳功能相比,這個文件上傳功能需要標題,附加參數(shù),還有一個最大的不同就是,這個功能可以批量上傳文件,而且不僅僅是圖片,還有flash,音頻/視頻等。多文件上傳,與單文件上傳沒有多大區(qū)別,只不過在單文件上

傳的基礎上曾加個循環(huán)而已。

重點看這三句代碼

$filesize = ${"upfile".$i."_size"};
$upfile_type = ${"upfile".$i."_type"};
$upfile_name = ${"upfile".$i."_name"};

這不正是我們在upoadsafe.inc.php里面重點分析的嗎,在上傳logo功能里我們也作了分析,這里不再作過多分析。從代碼for($i=0; $i<=40; $i++)開里,當條件if(isset(${"upfile".$i}) && is_uploaded_file(${"upfile".$i}))成立,即已經上傳了文件并且是通過http post上傳的,那么,程序就判斷上傳文件類型在不在我們前面定義的二個數(shù)組$sparr_image,$sparr_flash里面,如果在則設置存儲路徑$savePath,若不存在就建立路徑,若是非flash類型則打上水印,接下來沒有問題,就把數(shù)據(jù)插入到數(shù)據(jù)庫表dede_uploads,在這個處理程序中用到了取得圖像大小的函數(shù)getImagesize(),這個函數(shù),不僅可以獲得圖像的大小,還有高、寬、字節(jié)大小、mime類型,為什么要用這個函數(shù)?
因為,我們后面的保存數(shù)據(jù)到數(shù)據(jù)庫表時,要保存高和寬。

三、文件式管理器 ——>上傳文件分析如下圖所示。

文件file_manage_control.php就是對上傳的文件進行處理的程序,這個更簡單,既不用把上傳的文件路徑插入到數(shù)據(jù)庫,也不用作過多的判斷,代碼非常簡單。它與logo相比多了多個文件上傳,與附件管理文上傳,少了不需要保存路徑,連上傳的文件名都不用改,直接用if(!file_exists($cfg_basedir.$activepath."/".$upfile_name))來判斷是不是上傳的文件名與已經有的文件名重名,結束。

總結:我們總結一下,如果讓我們自己開發(fā)一個上傳文件功能,如何開發(fā)?

開發(fā)上傳文件程序步驟:

1.設置限制文件類型,一般用數(shù)組來設定。

2.判斷文件大小,判斷錯誤友好提示信息。

3.處理$_FILES文件里面的內容,像織夢那樣專門做個程序文件upoadsafe.inc.php。

4.用函數(shù)is_uploaded_file()判斷上傳的臨時文件是不是存在,存放則移動文件,用到的函數(shù)是move_uploaded_file()。

5.若要保存到數(shù)據(jù)庫,則插入數(shù)據(jù)庫表。

6.多個文件處理,這個要用到js,或jquery。使上傳效果更酷。


收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
国产大尺度在线观看| 日韩毛片久久久| 欧美色图色综合| 高清乱码毛片入口| 999精品视频在线观看播放| 一区二区视频在线看| 少妇特黄一区二区三区| 91麻豆精品国产91久久久更新资源速度超快| 妞干网在线免费视频| 国产精品伦子伦免费视频| 欧美刺激脚交jootjob| 国产成人亚洲欧美| 欧美午夜丰满在线18影院| 精品久久久久一区| 最近免费中文字幕视频2019| 国产成人精品免费视频大全软件| 成人免费网址在线| 国产中文字幕视频| 亚洲精品福利在线观看| 中文字幕福利视频| 成人天堂资源www在线| 免费在线观看黄色小视频| 69久久夜色精品国产69乱青草| 香蕉成人久久| 在线免费观看黄色小视频| 视频一区二区欧美| 亚洲精品中文字幕乱码三区不卡| 亚洲国产精品一区| 亚洲精品一区二区三区不卡| 国产美女无遮挡网站| 999精品视频在线观看播放| 亚洲国产伊人| 91大神在线网站| 国产丝袜控视频在线观看| 精品一区精品二区| 成年人精品视频| 国产精品亚洲第一区在线暖暖韩国| 在线视频你懂得一区二区三区| 手机看片一区二区三区| 在线免费观看日本欧美爱情大片| 97在线观看| 7777精品| 影音先锋国产资源| 成人亲热视频网站| 日韩av无码一区二区三区不卡| 日韩女优在线视频| 欧美成人综合在线| 国产成人精品免费在线| 欧美亚洲国产怡红院影院| 久草在线新视觉| 国产a级片免费看| 在线小视频网址| 亚洲国产一区二区三区四区| 国产精品91av| 久久久久久久久久久久久av| 欧美黄色免费网址| 不卡一区二区三区视频| 亚洲成av人片观看| 日韩福利一区二区三区| 国产丝袜欧美中文另类| 五月天天在线| 同产精品九九九| 色婷婷一区二区三区在线观看| 在线播放日韩| 国产美女在线观看一区| av免费在线网站| 日本最新中文字幕| 直接在线观看的三级网址| 日韩精品久久久久久久的张开腿让| 一区二区动漫| 香蕉国产成人午夜av影院| 日本韩国精品一区二区在线观看| 欧美精品第一页在线播放| 精品亚洲免费视频| 四虎成人欧美精品在永久在线| 久久视频在线观看| 欧美高清xxx| 麻豆一区二区三区| 国产又粗又长免费视频| 日产国产高清一区二区三区| 成人免费毛片嘿嘿连载视频…| 国内精品小视频在线观看| 日本免费不卡| 亚洲视频一区二区在线观看| 亚洲一区日韩在线| 欧美性xxxx巨大黑人猛| 日本道在线观看一区二区| 中文字幕在线有码| 免费观看成年人视频在线观看| 91黄色国产视频| 激情文学亚洲色图| 国产亚洲精品久久久久久移动网络| 日韩一级av毛片| 久久91麻豆精品一区| 成人午夜视频一区二区播放| 精品视频一区 二区 三区| 欧美中在线观看| 久久亚洲精品国产亚洲老地址| 中文字幕在线直播| 六月丁香婷婷在线| 亚洲春色在线视频| 欧美在线观看天堂一区二区三区| 国内一区二区三区在线视频| 国产在线拍偷自揄拍精品| 欧美成人合集magnet| 国产毛片久久久久| 99精品在线观看视频| 日韩免费一级视频| 色悠悠久久88| 日本vs亚洲vs韩国一区三区二区| 亚洲永久精品国产| 精品少妇一区二区三区日产乱码| 国a精品视频大全| 18视频在线观看娇喘| 在线天堂中文字幕| 国产亚洲一区二区三区在线观看| 亚洲成在线观看| 97精品电影院| 欧美成人亚洲| 男女高潮又爽又黄又无遮挡| 久久九九热视频| 久久国产亚洲| 欧美a级片一区| 欧美视频在线观看视频| 日本少妇一区| 亚洲欧美国产精品久久久久久久| 一本色道久久亚洲综合精品蜜桃| 4444kk在线观看| wwwwww.欧美系列| 免费大片黄在线观看视频网站| 精品久久久一区二区| 不卡一区中文字幕| 羞羞在线视频| 四虎免费播放| 喷水一区二区三区| 黄网站在线免费看| 成人av地址| 一区二区导航| 蜜桃91精品入口| 亚洲精品一区二区在线观看| 久久这里只有精品视频网| 日韩精品1区2区3区| 久久一区亚洲| 1级黄色大片儿| 国产喷水福利在线视频| 色91精品久久久久久久久| 婷婷综合国产| 理论片播放午夜国外| 国产中年熟女高潮大集合| 日韩一级视频| 亚洲男男gay视频| 芒果视频成人app| 中文字幕av专区| 国产精品欧美一区二区三区| 蜜桃视频在线免费| 国产精品福利av| 国产69精品久久99不卡| 手机在线成人免费视频| 国产色在线播放| 亚洲高清免费一级二级三级| 中文字幕欧美激情极品| 久久av一区二区三区亚洲| 久久中文字幕av一区二区不卡| 亚洲高清在线一区| 欧美a级片一区| 欧美色图888| 性欧美暴力猛交另类hd| 成人看片爽爽爽| 小泽玛利亚一区| 精品国产黄a∨片高清在线| av在线电影网站| 久久99国产乱子伦精品免费| 欧美国产日韩另类| 免费网站观看www在线观看| 韩国三级中文字幕hd久久精品| 免费国产自久久久久三四区久久| 久久亚洲欧美| 成人网站免费观看| 欧美一区二区三区网站| 亚洲国产成人av| 国内精品国语自产拍在线观看| 97在线观看免费| 亚洲国产综合91精品麻豆| 欧美极品少妇xxxxⅹ裸体艺术| www.97超碰| 一区国产精品| 在线精品免费视| 成人亚洲欧美| 国产区在线观看成人精品| 2023av视频| 久久久夜精品| 亚洲一卡2卡三卡4卡2021四卡| 麻豆福利视频| 97精品久久久中文字幕免费| 久久久精品蜜桃| 97人人模人人爽人人少妇| 精品产国自在拍| 亚洲精品色图| 欧美成人视屏| 亚洲电影有码| 亚洲精品一二区| 国产精品.com| 色欧美片视频在线观看在线视频| 国产熟妇一区二区三区四区| 欧美在线免费播放| 欧美日韩国产精品一区| www.99re.av| 网爆门在线观看| 精品国产一区二区三区久久久| aaa欧美日韩| 日本精品视频一区二区三区| 不卡的免费av| 天堂网在线播放| 亚洲成年人影院在线| 调教一区二区| 国产网站在线播放| 欧美在线日韩在线| 欧美美女一区二区三区| 亚洲精华国产精华精华液网站| 自拍在线观看| 三年片大全在线观看大全有哪些| 久热这里有精品| 国产乱子伦三级在线播放| 欧美啪啪免费视频| 午夜在线网站| 成人精品视频| 榴莲视频成人app| 久久久久网站| 欧美自拍视频| 好男人www社区在线视频夜恋| 色欧美日韩亚洲| 黑人巨大精品欧美一区二区一视频| 五月天国产在线| 99久久国产综合精品成人影院| 亚洲一区二区三区高清不卡| 深爱激情综合网| 成人在线免费观看网址| 无码人妻精品一区二区三区99v| 北条麻妃在线视频观看| 国内成人免费视频| 51社区在线成人免费视频| 欧美视频一区二区在线观看| 亚洲成av人影片在线观看| 91极品在线| 日韩中文不卡| 欧美大片aaaa| 精品国产美女a久久9999| 亚洲国产精品影视| 亚洲伦乱视频| 久久精品国产99国产精品澳门| 黄色av免费观看| 久久精品99国产精品酒店日本| 国产成人短视频| 99久久综合| 绯色av蜜臀vs少妇| 99久久99久久精品国产片桃花| 中文字幕一区二区三区不卡| 中文字幕av高清在线观看| www.xxx.国产| 久久久久久亚洲精品| 色91精品久久久久久久久| 狠狠久久五月精品中文字幕| 国产69精品久久久久777| 国产艳俗歌舞表演hd| 日韩中文视频免费在线观看| 日韩国产一区二区三区| av最新在线观看| 国产精品尤物| 999国产精品999久久久久久| 黑人性受xxxx黑人xyx性爽| 欧美激情20| 欧美jizzhd欧美精品巨大| 男人天堂v视频| 国产1区2区在线| 日日av拍夜夜添久久免费| 午夜精品久久久久久久男人的天堂| 久久久久久少妇| 国产精品亚洲无码| 欧美涩涩视频| 黄色亚洲精品| 国产伦精品一区二区三区免费优势| 精品福利一区二区三区免费视频| 亚洲а∨天堂久久精品2021| 日本一区福利在线| 欧美天天综合色影久久精品| 亚洲黄色在线| 麻豆国产欧美一区二区三区| 国产欧美在线观看一区| 婷婷五月色综合香五月| 国产精品二区三区四区| 性色av一区二区三区免费| 欧美aaa一级| 亚洲一区二三区| 在线天堂www在线国语对白| 涩涩视频免费观看| 91xxxxx| 免费日韩av电影| 日韩在线免费视频观看| 国产一级aa大片毛片| 欧美人善交videosg| 欧美日韩免费看| 精品国产乱码久久久久久果冻传媒| 日韩香蕉视频| 波多野结衣高清在线| 国产精品白丝久久av网站| 成人av免费在线看| 国产亚洲精品自在线观看| 中文字幕欧美日韩在线不卡| 搡的我好爽在线观看免费视频| 亚洲国产aⅴ天堂久久| 亚洲欧洲在线一区| av网站有哪些| 在线无限看免费粉色视频| 免费一区二区三区视频导航| 久草在线视频福利| 视频欧美一区| 成人久久久久爱| 99久热re在线精品996热视频| 久久中文娱乐网| 免费国产阿v视频在线观看| 性一交一乱一精一晶| 狠狠综合久久av一区二区老牛| 二区三区在线观看| 国产亚洲视频系列| 国产精品羞羞答答| 91偷拍精品一区二区三区| 99综合电影在线视频| 天天做天天摸天天爽国产一区|