ホームページ >バックエンド開発 >PHPチュートリアル >Discuz を知っている友人は、ぜひ来て質問してください。

Discuz を知っている友人は、ぜひ来て質問してください。

WBOY
WBOYオリジナル
2016-06-23 14:03:061172ブラウズ

私は DZ を大まかに使っただけで、その機能のすべてを注意深く使用したわけではありませんが、今までに使用したことがないため、コードを見ただけでは意味が分からない部分もあり、現在コードを勉強中です。知ってるお友達、答えてください

簡単に言うと、この段落だけ詳しく説明してもらえませんか


議論(解決策)に返信してください

できます。デバッグ後にのみ明確に説明してください

より具体的に言うと、誰もあなたの代わりにコードを読んでくれません。

申し訳ありませんが、これは DZ のソース コードです。
このファイルの他の部分はすべて理解できます。投稿のリスト
でも、この判断の意味がわかりません。答えてください、ありがとう

皆さんが荒らしでないことを願っています。もっと良い口調で話して、荒らしすぎないでください。例: andyxl
理解できたら、説明してください、ありがとう

ちなみに、#1 について説明しましょう。なぜそうしなかったのかを説明しましょう。デバッグしてください... この段落を削除してもページに影響はありませんので...
そして私はDZの機能に慣れていないので、違いを確認するための操作方法がわかりません。 .. そこで、詳しい友達に聞いてみました

しかも、

if(!empty($_G['forum']['threadsorts']['types'])) {	require_once libfile('function/threadsort');	$showpic = intval($_G['gp_showpic']);	$templatearray = $sortoptionarray = array();	foreach($_G['forum']['threadsorts']['types'] as $stid => $sortname) {		loadcache(array('threadsort_option_'.$stid, 'threadsort_template_'.$stid));		sortthreadsortselectoption($stid);		$templatearray[$stid] = $_G['cache']['threadsort_template_'.$stid]['subject'];		$sortoptionarray[$stid] = $_G['cache']['threadsort_option_'.$stid];	}	if(!empty($_G['forum']['threadsorts']['defaultshow']) && empty($_G['gp_sortid']) && empty($_G['gp_sortall'])) {		$_G['gp_sortid'] = $_G['forum']['threadsorts']['defaultshow'];		$_G['gp_filter'] = 'sortid';		$_SERVER['QUERY_STRING'] = $_SERVER['QUERY_STRING'] ? $_SERVER['QUERY_STRING'].'&sortid='.$_G['gp_sortid'] : 'sortid='.$_G['gp_sortid'];		$filterurladd = '&filter=sort';	}	$_G['gp_sortid'] = $_G['gp_sortid'] ? $_G['gp_sortid'] : $_G['gp_searchsortid'];	if(isset($_G['gp_sortid']) && $_G['forum']['threadsorts']['types'][$_G['gp_sortid']]) {		$searchsortoption = $sortoptionarray[$_G['gp_sortid']];		$quicksearchlist = quicksearch($searchsortoption);		$_G['forum_optionlist'] = $_G['cache']['threadsort_option_'.$_G['gp_sortid']];		$forum_optionlist = getsortedoptionlist();	}}

if(!empty($_G['forum']['threadsorts']['types'])) {

に変更してこの段落を強制的に実行しても、違いは分かりません...

var_dump($_G)
出力 パラメーターから、この変数がユーザー ID、名前、Shenma Shenma などの多くの情報を保存していることがわかります。
それをsource/ディレクトリに送信します。具体的には、関数またはモジュール

discuz を使用したことがありません

このフォーラム Discuz も設立しました!

これは

/source/function/function_forum.php の 399 行目、loadforum 関数に由来することが今日確認されました。このファイルの 506 行目には、このフィールドを含む 4 つのフィールドをシリアル化する操作があります。 :

if(true)

常識によれば、この中に格納されるものは配列であるはずです

ファイルの 467 行目で、$forum が何であるかを確認できます:

			foreach(array('threadtypes', 'threadsorts', 'creditspolicy', 'modrecommend') as $key) {				$forum[$key] = !empty($forum[$key]) ? unserialize($forum[$key]) : array();				if(!is_array($forum[$key])) {					$forum[$key] = array();				}			}

明らかに、このフィールドが forum_forum にあることがわかります。 / forum_forumfield テーブル フィールドです。確認後、フィールドは
forum_forumfield です。過去 2 日間の調査によると、このテーブルは discuz セクションの拡張テーブルであることがわかりました。これで、ほとんどの問題が解決されました。
$forum = DB::fetch_first("SELECT f.fid, f.*, ff.* $accessadd1 $modadd1, f.fid AS fidFROM ".DB::table('forum_forum')." fLEFT JOIN ".DB::table("forum_forumfield")." ff ON ff.fid=f.fid $accessadd2 $modadd2WHERE f.fid='$fid'");
に戻ります
最初の投稿 コードの最初の行では、このフィールドがシリアル化後に配列を格納することは明らかですが、TM が何であるかは明確ではありません。誰かがそれを説明できることを願っています

ちなみに、お願いします。 Explain
$_G['forum'] ....
データベースから取得したばかりの $forum を操作するには、
/source/function/function_forum のloadforum 関数の最後に次のコード行が記述されているためです。 .php

(ファイルの 557 行目):

うわー、これは直接の割り当てではなく引用です
理解できる友人が現れるのをオンラインで待っています

私は今これに遭遇しました。もの。私には才能も知識も乏しく、具体的な指導はできません。一緒に進歩しましょう。投稿者に良い情報がある場合は、共有してください

rree

さて、上記のグランプリ受賞者に感謝します。このカテゴリは何を意味しますか?

背景から調整できますか?

私はそれを調整できますか?それを調整したいのですが、このコードをテストすると、具体的な意味を理解するのにも役立ちます。

悲しいですね
#12と同じように(赤い花とその下に青い花がある意味が分かりませんでした。ずっと見ていたら花売りだと思いました。)は機密情報、機密情報とは何ですか? この悲惨な Dz は多くのトリックを実行しました
簡単に言うと、私は長い間コードに苦労し、背景に苦労してやっと理解しました...
です。投稿時に選択したもの。「投票するには」、「ヘルプ」など、
バックステージ - フォーラム - セクション管理に移動することをお勧めします
トピックの後ろにある「編集」をクリックするだけです
次に、その他を選択します- 機密情報...
促されています...

投稿に追加するために、セットアップ後、コマンドラインで DZ データベースを選択し、この SQL を試してください...
pre_forum_forumfield からスレッドソートを選択してください
表示されます

先生、今は DZ をどのように勉強していますか?今、DZを学び始めたばかりなのですが、ずっと番組を見ていて全く分かりません。投稿者に良い情報や学習サイトなどはありますか?
遠慮せずに教えてください~~~

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。