ホームページ > php教程 > php手册 > 最初の画像をサムネイルとしてバッチ抽出する dedecms コード (記事ソフトウェア)

最初の画像をサムネイルとしてバッチ抽出する dedecms コード (記事ソフトウェア)

WBOY
リリース: 2016-06-13 12:20:55
オリジナル
1225 人が閲覧しました

具体的な実装コードは以下の通りです。 以下に簡単に説明します。

コードをコピーします コードは次のとおりです:


/*
1.データベース接続
2. データ テーブル名のプレフィックスはデフォルトで dede_
であることに注意してください。3. 必ず最初にデータベースをバックアップするか、dede_archives テーブルをバックアップしてください。
*/
//データベース接続設定
$ip = "localhost"; //アドレス
$user = "jb51"; //ユーザー名
$pw = "www.jb51.net"; ; //パスワード
$ db = "jb51" //テーブル名
$conn=mysql_connect ($ip,$user,$pw);
mysql_select_db($db); "set names gbk"); / / エンコーディングを GBK に設定します

// 開始! 本体データを取得します
function body($id){
$exec="select * from dede_addonsoft where aid = '".$id."' ";
$result=mysql_query($exec);
$rs=mysql_fetch_object($result);
$id = $rs->introduce;
return $id =$id;
}
//終了! 本体データの取得

// 変数の最初の画像アドレスを抽出します
関数 bodyimg($obj) {

if(isset ($obj)){
if ( preg_match( "", $obj, $regs ) ) { //最初の画像アドレスを定期的に取得します
return $obj = $regs[1] ;
} else {
echo "Erro: 画像アドレスがありません!
";
return $obj = 1 ;
}
}


}
//終了! 変数

の最初の画像アドレスを抽出しますアーカイブの変更を開始し、取得したイメージ アドレスを挿入します
function changearchives($pic,$id) {
$sql="UPDATE `dede_archives`
SET `litpic` = '".$pic."'
WHERE `id` = '".$id."'";
$result=mysql_query($sql);
if($result==1) echo "データの変更が成功しました。
";
else echo "データの変更に失敗しました!
";
}
//アーカイブの変更を終了し、取得した画像アドレスを挿入します

//表示data Table content
$exec="select * from dede_archives where typeid in(494,495,496,497,498,499,500,501,502,503,504,374,375,376,377,378,379,488) および 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); // 関数を呼び出して本文の内容を取得します。 🎜>$pic = bodyimg ($body); //関数を呼び出して、本文内の最初の画像のアドレスを取得します
if ($pic<>1){
changearchives($pic,$id) ); //取得したアドレスを挿入する関数を呼び出します
}
}
mysql_close($conn)
?>


PHP と


上記のコードは、次のレベルのディレクトリを自動的に取得できないため、一般的に使用されるステートメントは $exec="select *. from dede_archives where typeid in(1,2,3) and litpic = ''"; //channel='1' つまり、記事チャンネルでも typeid=''
上記のコードは、typeid を 1、2、3 のデータとして取得するものです。
ID を変更したい場合は、次のステートメントを使用できます。
$exec="select * from dede_archives where typeid='1 ' and litpic = ''";
チャンネルであれば、それを使用できます。
$exec="select * from dede_archives where channel='1' and litpic = ''";
Be最初に必ずバックアップしてください。それ以外の場合は、dedecms5.1 のバージョンであることに注意してください。他のバージョンにも適応する必要があります。複数のテスト(バックアップ前提)

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート