dedecms不生成縮圖提取第一張圖片最為縮圖
阿新 • • 發佈:2019-01-07
<?php
/*
1. 配置好你的資料庫連線
2. 注意資料表名的字首 預設為dede_
3. 一定要先備份你的資料庫 或備份dede_archives表 如產生損失本人概不負責
*/
//資料庫連線設定
$ip="localhost"; //地址
$user="root"; //使用者名稱
$pw=""; //密碼
$db="dedecmsv4"; //表名
$conn=mysql_connect ($ip,$user,$pw);
mysql_select_db($db);
mysql_query("set names gbk"); //設定編碼為 GBK
//開始!獲取body資料
function body($id){
$exec="select * from dede_addonarticle where aid = ' ".$id."'";
$result=mysql_query($exec);
$rs=mysql_fetch_object($result);
$id=$rs->body ;
return$id=$id ;
}
//結束!獲取body資料
//開始!提取變數中第一個圖片地址
function bodyimg($obj) {
if(isset($obj)){
if ( preg_match( "<img.*src=[/"](.*?)[/"].*?>",$obj,$regs ) ) { //使用正則獲取第一幅影象地址
return$obj=$regs[1] ;
} else {
echo"Erro:沒有圖片地址!<br> ";
return$obj=1 ;
}
}
}
//結束!提取變數中第一個圖片地址
//開始 修改rchives,插入獲取的影象地址
function changearchives($pic,$id) {
$sql="UPDATE `dede_archives`
SET `litpic` = '".$pic."'
WHERE `id` = '".$id."'";
$result=mysql_query($sql);
if($result==1) echo"修改資料成功!<br>";
elseecho"修改資料失敗!<br>";
}
//結束 修改rchives,插入獲取的影象地址
//顯示資料表內容
$exec ="select * from dede_archives where channel='1' and litpic = ''"; //channel='1' 即文章頻道 也可以使用typeid=''
$result=mysql_query($exec); //指定欄目ID但只能是最小分類的ID, litpic = '' 意為縮圖地址為空
while($rs=mysql_fetch_object($result))
{
$id=$rs->ID;
echo$id."";
$body= body($id); //呼叫函式獲取 body內容
$pic= bodyimg($body); //呼叫函式獲取 body裡面的第一張圖片地址
if ($pic<>1){
changearchives($pic,$id); //呼叫函式插入獲取的地址
}
}
mysql_close($conn);
?>
/*
1. 配置好你的資料庫連線
2. 注意資料表名的字首 預設為dede_
3. 一定要先備份你的資料庫 或備份dede_archives表 如產生損失本人概不負責
*/
//資料庫連線設定
$ip="localhost"; //地址
$user="root"; //使用者名稱
$pw=""; //密碼
$db="dedecmsv4"; //表名
$conn=mysql_connect ($ip,$user,$pw);
mysql_select_db($db);
mysql_query("set names gbk"); //設定編碼為 GBK
//開始!獲取body資料
function body($id){
$exec="select * from dede_addonarticle where aid = '
$result=mysql_query($exec);
$rs=mysql_fetch_object($result);
$id=$rs->body ;
return$id=$id ;
}
//結束!獲取body資料
//開始!提取變數中第一個圖片地址
function bodyimg($obj) {
if(isset($obj)){
if ( preg_match( "<img.*src=[/"](.*?)[/"].*?>",$obj,$regs ) ) { //使用正則獲取第一幅影象地址
return$obj=$regs[1] ;
} else {
echo"Erro:沒有圖片地址!<br>
return$obj=1 ;
}
}
}
//結束!提取變數中第一個圖片地址
//開始 修改rchives,插入獲取的影象地址
function changearchives($pic,$id) {
$sql="UPDATE `dede_archives`
SET `litpic` = '".$pic."'
WHERE `id` = '".$id."'";
$result=mysql_query($sql);
if($result==1) echo"修改資料成功!<br>";
elseecho"修改資料失敗!<br>";
}
//結束 修改rchives,插入獲取的影象地址
//顯示資料表內容
$exec
$result=mysql_query($exec); //指定欄目ID但只能是最小分類的ID, litpic = '' 意為縮圖地址為空
while($rs=mysql_fetch_object($result))
{
$id=$rs->ID;
echo$id."";
$body= body($id); //呼叫函式獲取 body內容
$pic= bodyimg($body); //呼叫函式獲取 body裡面的第一張圖片地址
if ($pic<>1){
changearchives($pic,$id); //呼叫函式插入獲取的地址
}
}
mysql_close($conn);
?>