ホームページ php教程 php手册 小規模なメーリングリストを管理する

小規模なメーリングリストを管理する

Jun 21, 2016 am 09:09 AM
check email gt lt quot

メールリスト

1 つ目は、データベース テーブルにレコードを追加または削除するジョブを実行するサブスクライブ/サブスクライブ解除スクリプトです。これを「manage.phtml」または
類似の名前にします。この場合、バックグラウンドは、サブスクリプション テーブルを作成できる、ある種のデータベースである必要があります。政治における半分の原則によれば、
そこで、この例ではデータベースとして MySQL を使用します。 PHP マニュアルに従って、適切な
データベース関連関数を置き換えるだけで、一般的に使用するデータベースを使用できます。

私の購読フォームでは、電子メール アドレス (email_addr) と追加日 (date_added) の 2 つのフィールドを使用します。必要に応じてフィールドを追加することも、date_added フィールドを削除することもできます。この例では、私が行ったことを示しているだけであり、
適切に変更することができます。私の購読テーブルでは、email_addr フィールドは一意のフィールドです。つまり、それとまったく同じ別の電子メール
アドレスを追加することはできません。これにより、サブスクリプションの重複が回避され、ユーザーがサブスクリプションを解除したい場合にレコードを簡単かつ確実に削除できるようになります。

それでは、購読/購読解除フォーム (manager.phtml または思いつく名前なら何でも) を作成しましょう。同じファイルを使用して購読と購読解除、およびフォーム自体のアクションを処理するため、少し複雑になる可能性があります。最初から最後まで説明してから、すべての部分を 1 つのフォームにまとめます


スクリプトの先頭で、データベースが開かれ、タイムスタンプが準備されます。こういった目立たないものに気を配ることで、最初はいつも少し
ストレスが軽減されます。

------------------------------------------------ --------------------------------
// データベースに接続します
$db = mysql_connect("servername", "ユーザー名" , "パスワード") または die ("接続できません。");

mysql_select_db("yourDB", $db) または die ("データベースを選択できません。");

// タイムスタンプを取得します
$add_date = date ( "Y-m-d");-------------------------------------------- ---- ----------------------------------
$op の値が "ds" であることを望みます。これは複雑なプログラムの略語ではなく、「何かをする」という意味で作成しました。したがって、
スクリプトが最初に行うことは、$op の値が「ds」と等しいかどうかを確認することです。この値は、フォームが送信されたときにのみ送信されます。したがって、
$op の値が「ds」でない場合は、ユーザーがフォームを見ていないことを意味するため、フォームを表示する必要があります:

---------------- ---------- -------------------------------------- ---------- ----------
if ($op != "ds") {

//購読/購読解除が必要です

$text_block = "

< ;form name="form" method=post action="$PHP_SELF">

あなたの電子メール アドレス:< /strong>





;input type=submit name="submit" value="do it">



";

}-------------- ---------- -------------------------------------- ---------- ------
$text_block 変数にテキストを入れていることに気づくでしょう。テキストを変数に入れることで、メインの HTML テンプレート内の
の後に $text_block の値を出力するだけです。これは個人の好みの問題であり、いつでも好きな方法でテキストを出力できます。

このフォームのアクションは$PHP_SELFで、送信ボタンが押されたときにリロードされる
という意味だと想像できます。次に、このフォームには 3 つのフィールドがあることがわかります: $op に "ds" の値を割り当てる隠しフィールド、ユーザーが自分のメール アドレスを入力する
"email" というテキスト フィールドもあります。 「アクション」と呼ばれる一連のラジオ ボタン。これに従って、ユーザーは実行するアクション (購読または購読解除) を決定できます。

フォームが送信されると、$op は "ds" に等しくなり、$action の値には "sub" または "unsub" が含まれます。それでは、上記の
の if... ステートメントを見てみましょう。送信されるとスキップされます ($op=="ds" のため)。 $op の値が "ds" で、$action の値が "sub" (サブスクリプション) の場合、
次の else if... ステートメントが実行されます。このコードは、電子メールがサブスクリプション テーブルに既に存在するかどうかを確認し、存在しない場合はテーブル
に挿入して応答を出力し、そうでない場合は無視します。

------------------------------------------------ --------------------------------
else if (($op == "ds") && ($action = = "sub")) {

// チェックメールが送信されていない場合は送信し、そうでない場合は情報を返します

$check = "購読者から email_addr を選択します
where email_addr = "$email""

$check_result = mysql_query( $check)
または die("ローカル電子メール アドレスのチェックを実行できません。");

$check_num = mysql_num_rows($check_result);


if ($check_num == 0) {

// if $ check_num が 0 の場合、一致するレコードが見つからないため、ユーザーを送信する必要があります

$sql = "購読者に挿入
value("$email", "$add_date")";

@mysql_query($sql); または die ( "メールを挿入できませんでした。");

$text_block = "

ご登録いただきありがとうございます!


} else {

// $check_num が 0 でない場合、その場合、ユーザーがすでに送信済みであることを通知する必要があります

$text_block = "

あなたはすでに登録しています!


";

}

}------ - ------------------------------------------------- - ----------------------
次のステップ: $action の値が "sub" ではなく "unsub" (購読解除、購読解除) の場合に行うべきこと何か。上記と同じように簡単です
次に、else if... ステートメントを展開し、電子メールが削除される前にサブスクリプション テーブル
に存在するかどうかを確認する追加のコードを追加します。存在する場合は、削除して印刷します。それ以外の場合は無視します。

------------------------------------------------ --------------------------------
else if (($op == "ds") && ($action = = "unsub")) {

// 購読しているユーザーを確認し、購読を解除します。そうでない場合は情報を返します

$check = "購読者から email_addr を選択します
where email_addr = "$email""; mysql_query($check)
or die("メールアドレスのチェックを実行できません。");

$check_num = mysql_num_rows($check_result);

if ($check_num == 0) {

// if If $check_num は 0、一致するレコードが見つからないため、ユーザーは登録解除できません

$text_block = "

リスト内に電子メール アドレスが見つかりません!


You It入力した電子メールはデータベースにないため、登録解除されていません。 ";

} else {

// $check_num が 0 でない場合、ユーザーはリストに含まれているため、登録を解除できます

$ sql = "購読者から削除します
where email_addr = "$email"";

@mysql_query($sql) または die ("メールを削除できません。");

購読を解除しました! < ;/p>
";
}

}

?>-------------------------------- - ----------------------------------------
さて、頑張ってくださいこれは完了し、HTML のブロックに $text_block 変数を出力するだけです:

------------------------- ----- -------------------------------------- ---
< ;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">




購読/購読解除




-- -------------------------------------- ----- ----------------------------------
完全なプログラムリストはこちらです:

--- --- ---------------------------------------------- --- -----------------------

// データベースに接続します
$db = mysql_connect("servername", "username" , "パスワード")
or die ("接続できません。 ");

mysql_select_db("yourDB", $db) or die ("データベースを選択できません。");

// タイムスタンプを取得します
$add_date = date("Y-m-d");

if ($op ! = "ds") {

//購読/購読解除が必要です

$text_block = "




あなたの電子メール アドレス:


アクション:
unsub






"; } else if (($op == "ds") && ($action == "sub")) {

// メールがまだ送信されていないか確認して送信し、そうでない場合は情報を返します

$check = "購読者から email_addr を選択します
where email_addr = "$email""

$check_result = mysql_query($check)
or die("ローカル電子メール アドレスのチェックを実行できません。"); $check_result);


if ($check_num == 0) {

// $check_num が 0 の場合、一致するレコードが見つからないため、ユーザーを送信する必要があります

$sql = "購読者に挿入します
value(" $email", "$add_date")";

@mysql_query($sql) or die ("メールを挿入できませんでした。");

$text_block = "

ご登録いただきありがとうございます。


";

} else {

// $check_num が 0 でない場合、ユーザーはすでに送信済みであることを通知する必要があります

$text_block = "

パスをサブスクライブしました!


";

}

} else if (($op == "ds") && ($action == "unsub")) {

// 購読しているかどうかを確認してから追加する 購読を解除する、そうでない場合は情報を返す

$check = "購読者から email_addr を選択します
where email_addr = "$email""

$check_result = mysql_query($check)
or die("電子メール アドレスのチェックを実行できません. ");

$check_num = mysql_num_rows($check_result);

if ($check_num == 0) {

// $check_num が 0 の場合、ユーザーは購読解除できません

$ text_block = "

あなたの電子メール アドレスがリストに見つかりません。


入力した電子メールはデータベースに登録されていないため、購読が解除されていません。 ";

} else {

// $check_num が 0 でない場合、ユーザーはリストに含まれており、購読解除できます

$sql = "購読者から削除します
where email_addr = "$email"";

@ mysql_query($sql) または die ("メールを削除できません。");

$text_block = "

購読解除が成功しました。






php echo "$text_block"; >
-------------------------------------------------- -- --
適切な購読/購読解除メカニズムができたので、簡単なフォーム
と電子メール スクリプト (「while」ループが便利です。) だけを使用してニュースレターを送信する方法を説明します。 ) まず、「send_mail.html」という名前のフォームがあり、そのフォームのアクションは「do_send_mail.phtml」のようにする必要があり、件名を記述するためにテキストフィールド (件名) を使用するだけです。フォームとスクリプトを適切に変更する限り、必要に応じてフォーム フィールドを使用できます

------------------- ----- -------------------------------------- ----- ------


タイトル> </HEAD> <br> <BODY> <br> <h1> ニュースレターを送信</h1> <FORM ACTION="do_send_mail.phtml" METHOD="post"> <br> <strong>トピックを入力してください: </strong><br> <br/><input type="text" name="subject" size=30></p> <br> <br> <P><strong>メールの内容: </strong><br> "ニュースレター" Cols=40 rows=30 Wrap=virtual></textarea> <br> <br> <p><input type="submit" name="submit" value="ニュースレターの送信"></p> <br> <br> </form> <br> </BODY> <br> ----------------------------- --- --------------------------------------------------- --- - <br> 最後のポイントは、フォームのアクションについてです。このスクリプトは「do_send_mail.phtml」と呼ばれます。スクリプトは最初に $subject と <br> $newletter の値を探し、それらの値のいずれかが空の場合はフォームにリダイレクトします: <br> <br> ---------------- ---------- -------------------------------------- ---------- --------- <br> if (($subject == "") || ($newsletter == "")) { <br> <br> header("Location: http ://www.yourdomain.com/send_mail .phtml"); <br> 終了; <br> <br> }---------------------------- ---------------- ---------------------------------- -------- <br> 次に、データベースに接続し、テーブルからメール アドレスを取得します: <br> <br> ---------------------- ------------------------ ------------------------ ---------- <br> // データベースに接続します <br> $db = mysql_connect(" サーバー名", "ユーザー名", "パスワード") <br> or die ("接続できません。"); "yourDB", $db) または die ("データベースを選択できません。"); <br> <br> $sql = " 購読者から email_addr を選択します"; <br> <br> $res = mysql_query($sql) または die("メール アドレスを取得できません。" ); <br> ------------------------ ------------------------ ------------------------ --------- <br> 電子メール メッセージの送信ループに入る前に、追加の電子メール ヘッダーを作成する必要があります。ここでは、「From:」行を使用しました: <br> <br> $headers = "From: "Your Mailing List" <you@yourdomain.com>n"; <br> <br> <br> 次に、メール送信のループに入ります。まず、mysql_fetch_array 関数 (またはデータベース用の同様の関数) を使用して、各 <br> レコードを配列に配置します。複数のフィールドを取得する場合は、より合理的かもしれません。処理が速いため、私はこれを使用します。次のステートメントは、結果 <br> セットを反復処理し、mail() 関数を通じてリスト内の各メールボックスに電子メールを送信します。 ---------------------------------------------------- ---- ---------- <br> while ($row = mysql_fetch_array($res)) { <br> <br> $email_addr = $row[0]; <br> <br> mail("$email_addr", "$subject) ", $newsletter , $headers); <br> <br> } <br> -------------------------------------- ---- -------------------------------------- <br> $の値subject と $newletter はフォームの前に入力されます。 <br> が完了したことがわかるように、スクリプトの最後に出力行を追加します。これですべて対応完了です!完全な「do_send_mail.phtml」スクリプトは次のようになります: <br> <br> ---------------------------------- --- ----------------------------------------------- <br> <br> if (($subject == "") || ($newsletter == "")) { <br> <br> header("Location: http://www.yourdomain.com/send_mail.phtml"); ; <br> <br> } else { <br> <br> // データベースに接続します <br> $db = mysql_connect("servername", "username", "password") <br> or die ("Cannot connect.") <br> <br> mysql_select_db("yourDB") , $db) または die ("データベースを選択できません。"); <br> <br> $sql = "購読者から email_addr を選択" <br> <br> $res = mysql_query($sql) または die("電子メール アドレスを取得できません。"); ; <br> <br> $headers = " From: "あなたのメーリング リスト" <you@yourdomain.com>n"; <br> <br> <br> while ($row = mysql_fetch_array($res)) { <br> <br> $email_addr = $row[0] ; <br> <br> mail("$ email_addr", "$subject", $newsletter, $headers); <br> <br> echo "メールを送信しました!" <br> <br> <br>; <br> <br> <br> <br> <br><br></strong></p> </div> </div> <div class="wzconShengming_sp"> <div class="bzsmdiv_sp">このウェブサイトの声明</div> <div>この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。</div> </div> </div> <ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5902227090019525" data-ad-slot="2507867629"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> <div class="AI_ToolDetails_main4sR"> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5902227090019525" data-ad-slot="3653428331" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> <!-- <div class="phpgenera_Details_mainR4"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hotarticle2.png" alt="" /> <h2>人気の記事</h2> </div> <div class="phpgenera_Details_mainR4_bottom"> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780570.html" title="R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>2週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796773439.html" title="レポ:チームメイトを復活させる方法" class="phpgenera_Details_mainR4_bottom_title">レポ:チームメイトを復活させる方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>4週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796774171.html" title="ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法" class="phpgenera_Details_mainR4_bottom_title">ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>4週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796775427.html" title="スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?" class="phpgenera_Details_mainR4_bottom_title">スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By DDD</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796775336.html" title="R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By DDD</span> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/article.html">もっと見る</a> </div> </div> </div> --> <div class="phpgenera_Details_mainR3"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hottools2.png" alt="" /> <h2>ホットAIツール</h2> </div> <div class="phpgenera_Details_mainR3_bottom"> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/undresserai-undress" title="Undresser.AI Undress" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173411540686492.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="Undresser.AI Undress" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/undresserai-undress" title="Undresser.AI Undress" class="phpmain_tab2_mids_title"> <h3>Undresser.AI Undress</h3> </a> <p>リアルなヌード写真を作成する AI 搭載アプリ</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/ai-clothes-remover" title="AI Clothes Remover" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173411552797167.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="AI Clothes Remover" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/ai-clothes-remover" title="AI Clothes Remover" class="phpmain_tab2_mids_title"> <h3>AI Clothes Remover</h3> </a> <p>写真から衣服を削除するオンライン AI ツール。</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/undress-ai-tool" title="Undress AI Tool" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173410641626608.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="Undress AI Tool" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/undress-ai-tool" title="Undress AI Tool" class="phpmain_tab2_mids_title"> <h3>Undress AI Tool</h3> </a> <p>脱衣画像を無料で</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/clothoffio" title="Clothoff.io" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173411529149311.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="Clothoff.io" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/clothoffio" title="Clothoff.io" class="phpmain_tab2_mids_title"> <h3>Clothoff.io</h3> </a> <p>AI衣類リムーバー</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/ai-hentai-generator" title="AI Hentai Generator" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173405034393877.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="AI Hentai Generator" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/ai-hentai-generator" title="AI Hentai Generator" class="phpmain_tab2_mids_title"> <h3>AI Hentai Generator</h3> </a> <p>AIヘンタイを無料で生成します。</p> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/ai">もっと見る</a> </div> </div> </div> <script src="https://sw.php.cn/hezuo/cac1399ab368127f9b113b14eb3316d0.js" type="text/javascript"></script> <div class="phpgenera_Details_mainR4"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hotarticle2.png" alt="" /> <h2>人気の記事</h2> </div> <div class="phpgenera_Details_mainR4_bottom"> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780570.html" title="R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>2週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796773439.html" title="レポ:チームメイトを復活させる方法" class="phpgenera_Details_mainR4_bottom_title">レポ:チームメイトを復活させる方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>4週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796774171.html" title="ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法" class="phpgenera_Details_mainR4_bottom_title">ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>4週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796775427.html" title="スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?" class="phpgenera_Details_mainR4_bottom_title">スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By DDD</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796775336.html" title="R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By DDD</span> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/article.html">もっと見る</a> </div> </div> </div> <div class="phpgenera_Details_mainR3"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hottools2.png" alt="" /> <h2>ホットツール</h2> </div> <div class="phpgenera_Details_mainR3_bottom"> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/92" title="メモ帳++7.3.1" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58ab96f0f39f7357.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="メモ帳++7.3.1" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/92" title="メモ帳++7.3.1" class="phpmain_tab2_mids_title"> <h3>メモ帳++7.3.1</h3> </a> <p>使いやすく無料のコードエディター</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/93" title="SublimeText3 中国語版" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58ab97a3baad9677.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="SublimeText3 中国語版" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/93" title="SublimeText3 中国語版" class="phpmain_tab2_mids_title"> <h3>SublimeText3 中国語版</h3> </a> <p>中国語版、とても使いやすい</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/121" title="ゼンドスタジオ 13.0.1" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58ab97ecd1ab2670.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="ゼンドスタジオ 13.0.1" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/121" title="ゼンドスタジオ 13.0.1" class="phpmain_tab2_mids_title"> <h3>ゼンドスタジオ 13.0.1</h3> </a> <p>強力な PHP 統合開発環境</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/469" title="ドリームウィーバー CS6" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58d0e0fc74683535.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="ドリームウィーバー CS6" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/469" title="ドリームウィーバー CS6" class="phpmain_tab2_mids_title"> <h3>ドリームウィーバー CS6</h3> </a> <p>ビジュアル Web 開発ツール</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/500" title="SublimeText3 Mac版" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58d34035e2757995.png?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="SublimeText3 Mac版" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/500" title="SublimeText3 Mac版" class="phpmain_tab2_mids_title"> <h3>SublimeText3 Mac版</h3> </a> <p>神レベルのコード編集ソフト(SublimeText3)</p> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/ai">もっと見る</a> </div> </div> </div> <div class="phpgenera_Details_mainR4"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hotarticle2.png" alt="" /> <h2>ホットトピック</h2> </div> <div class="phpgenera_Details_mainR4_bottom"> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/gmailyxdlrkzn" title="Gmailメールのログイン入り口はどこですか?" class="phpgenera_Details_mainR4_bottom_title">Gmailメールのログイン入り口はどこですか?</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>7333</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>9</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/java-tutorial" title="Java チュートリアル" class="phpgenera_Details_mainR4_bottom_title">Java チュートリアル</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>1627</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>14</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/cakephp-tutor" title="CakePHP チュートリアル" class="phpgenera_Details_mainR4_bottom_title">CakePHP チュートリアル</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>1351</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>46</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/laravel-tutori" title="Laravel チュートリアル" class="phpgenera_Details_mainR4_bottom_title">Laravel チュートリアル</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>1262</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>25</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/php-tutorial" title="PHP チュートリアル" class="phpgenera_Details_mainR4_bottom_title">PHP チュートリアル</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>1209</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>29</span> </div> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/faq/zt">もっと見る</a> </div> </div> </div> </div> </div> <div class="Article_Details_main2"> <div class="phpgenera_Details_mainL4"> <div class="phpmain1_2_top"> <a href="javascript:void(0);" class="phpmain1_2_top_title">Related knowledge<img src="/static/imghw/index2_title2.png" alt="" /></a> </div> <div class="phpgenera_Details_mainL4_info"> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/675795.html" title="kernel_security_check_failure ブルー スクリーンを解決する 17 の方法" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/164/170774229448557.png?x-oss-process=image/resize,m_fill,h_207,w_330" alt="kernel_security_check_failure ブルー スクリーンを解決する 17 の方法" /> </a> <a href="https://www.php.cn/ja/faq/675795.html" title="kernel_security_check_failure ブルー スクリーンを解決する 17 の方法" class="phphistorical_Version2_mids_title">kernel_security_check_failure ブルー スクリーンを解決する 17 の方法</a> <span class="Articlelist_txts_time">Feb 12, 2024 pm 08:51 PM</span> <p class="Articlelist_txts_p">Kernelsecuritycheckfailure (カーネルチェック失敗) は比較的一般的な停止コードですが、理由が何であれ、ブルースクリーンエラーは多くのユーザーを悩ませます、当サイトでは 17 種類のエラーをユーザーに丁寧に紹介します。 kernel_security_check_failure ブルー スクリーンに対する 17 の解決策 方法 1: すべての外部デバイスを削除する 使用している外部デバイスが Windows のバージョンと互換性がない場合、Kernelsecuritycheckfailure ブルー スクリーン エラーが発生することがあります。これを行うには、コンピュータを再起動する前に、すべての外部デバイスを取り外しておく必要があります。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/637582.html" title="Huawei GT3 ProとGT4の違いは何ですか?" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/465/014/170383126488259.png?x-oss-process=image/resize,m_fill,h_207,w_330" alt="Huawei GT3 ProとGT4の違いは何ですか?" /> </a> <a href="https://www.php.cn/ja/faq/637582.html" title="Huawei GT3 ProとGT4の違いは何ですか?" class="phphistorical_Version2_mids_title">Huawei GT3 ProとGT4の違いは何ですか?</a> <span class="Articlelist_txts_time">Dec 29, 2023 pm 02:27 PM</span> <p class="Articlelist_txts_p">多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/541766.html" title="電子メール、smtplib、poplib、imaplib モジュールを使用して Python で電子メールを送受信する方法" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/202305/16/2023051623442936464.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="電子メール、smtplib、poplib、imaplib モジュールを使用して Python で電子メールを送受信する方法" /> </a> <a href="https://www.php.cn/ja/faq/541766.html" title="電子メール、smtplib、poplib、imaplib モジュールを使用して Python で電子メールを送受信する方法" class="phphistorical_Version2_mids_title">電子メール、smtplib、poplib、imaplib モジュールを使用して Python で電子メールを送受信する方法</a> <span class="Articlelist_txts_time">May 16, 2023 pm 11:44 PM</span> <p class="Articlelist_txts_p">電子メールの流れは次のとおりです: MUA: MailUserAgent - メール ユーザー エージェント。 (つまり、Outlook に似た電子メール ソフトウェア) MTA: MailTransferAgent - メール転送エージェント。NetEase、Sina などの電子メール サービス プロバイダーです。 MDA: MailDeliverAgent - メール配信エージェント。電子メール サービス プロバイダーのサーバー sender->MUA->MTA->MTA->if</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/595687.html" title="修正: Windows 11 で Snipping ツールが機能しない" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/887/227/169284169836669.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="修正: Windows 11 で Snipping ツールが機能しない" /> </a> <a href="https://www.php.cn/ja/faq/595687.html" title="修正: Windows 11 で Snipping ツールが機能しない" class="phphistorical_Version2_mids_title">修正: Windows 11 で Snipping ツールが機能しない</a> <span class="Articlelist_txts_time">Aug 24, 2023 am 09:48 AM</span> <p class="Articlelist_txts_p">Windows 11 で Snipping Tool が機能しない理由 問題の根本原因を理解すると、適切な解決策を見つけるのに役立ちます。 Snipping Tool が正しく動作しない主な理由は次のとおりです。 フォーカス アシスタントがオンになっている: これにより、Snipping Tool が開かなくなります。破損したアプリケーション: 起動時にスニッピング ツールがクラッシュする場合は、破損している可能性があります。古いグラフィック ドライバー: 互換性のないドライバーは、スニッピング ツールに干渉する可能性があります。他のアプリケーションからの干渉: 実行中の他のアプリケーションが Snipping Tool と競合する可能性があります。証明書の有効期限が切れています: アップグレード プロセス中のエラーにより、この問題が発生する可能性があります。これらの簡単な解決策は、ほとんどのユーザーに適しており、特別な技術知識は必要ありません。 1. Windows および Microsoft Store アプリを更新する</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/682646.html" title="Windows 11/10でパームチェックをオフにする方法" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/164/170835035964755.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="Windows 11/10でパームチェックをオフにする方法" /> </a> <a href="https://www.php.cn/ja/faq/682646.html" title="Windows 11/10でパームチェックをオフにする方法" class="phphistorical_Version2_mids_title">Windows 11/10でパームチェックをオフにする方法</a> <span class="Articlelist_txts_time">Feb 19, 2024 pm 09:45 PM</span> <p class="Articlelist_txts_p">この記事では、Windows 11/10 PC で PalmCheck 機能をオフにする方法を説明します。 PalmCheck は、キーボード入力時に手のひらやその他の接触が誤って入力として認識されるのを防ぐために設計された機能です。これは通常、タッチパッドの設定、特にラップトップなどのタッチ対応デバイスで見られます。キーボードとタッチパッドの両方を使用する必要がある状況で、より柔軟に入力を制御できるように、PalmCheck または同様の機能をオフにすることが必要な場合があります。この記事では、ゲームやアプリケーションの実行時のニーズにうまく対応できるように、Windows 11/10 PC で PalmCheck 機能を無効にする方法を紹介します。タッチパッドの「P」とは何ですか?</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/584743.html" title="iPhoneでApp Storeに接続できないエラーを修正する方法" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/887/227/169059012999730.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="iPhoneでApp Storeに接続できないエラーを修正する方法" /> </a> <a href="https://www.php.cn/ja/faq/584743.html" title="iPhoneでApp Storeに接続できないエラーを修正する方法" class="phphistorical_Version2_mids_title">iPhoneでApp Storeに接続できないエラーを修正する方法</a> <span class="Articlelist_txts_time">Jul 29, 2023 am 08:22 AM</span> <p class="Articlelist_txts_p">パート 1: 最初のトラブルシューティング手順 Apple のシステムステータスを確認する: 複雑な解決策を掘り下げる前に、基本から始めましょう。問題はデバイスにあるのではなく、Apple のサーバーがダウンしている可能性があります。 Apple のシステム ステータス ページにアクセスして、AppStore が適切に動作しているかどうかを確認してください。問題があれば、Apple が修正してくれるのを待つしかありません。インターネット接続を確認します。「AppStore に接続できません」問題は接続不良が原因である場合があるため、安定したインターネット接続があることを確認してください。 Wi-Fi とモバイル データを切り替えるか、ネットワーク設定をリセットしてみてください ([一般] > [リセット] > [ネットワーク設定のリセット] > [設定])。 iOS バージョンを更新します。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/692194.html" title="Linux システムの Keepalived ヘルスチェックメカニズムの解釈" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/164/170908513724242.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="Linux システムの Keepalived ヘルスチェックメカニズムの解釈" /> </a> <a href="https://www.php.cn/ja/faq/692194.html" title="Linux システムの Keepalived ヘルスチェックメカニズムの解釈" class="phphistorical_Version2_mids_title">Linux システムの Keepalived ヘルスチェックメカニズムの解釈</a> <span class="Articlelist_txts_time">Feb 28, 2024 am 09:52 AM</span> <p class="Articlelist_txts_p">ロード バランシングを実行する場合、通常、バックエンド リアルサーバーが正常でサービスを提供できることを確認するためにヘルス チェック ツールが導入され、バックエンド リアルサーバーがダウンしたりサービスが利用できなくなったりする状況を回避するために、ロード バランサーはリクエストをrealserver. ビジネス アクセス全体への影響。ヘルスチェックを実行するにはさまざまな方法があり、スクリプトを自分でデプロイすることもできますが、最も一般的に使用されるのは keepalived サービスです。 keepalived には、tcp_check、http_check、misc_check の 3 つのヘルス チェック メソッドがあります。 Keepalived 構成の概要 keepalived には 3 つの主要なモジュールがあります。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/180076.html" title="php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/202311/29/2023112910200043559.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决" /> </a> <a href="https://www.php.cn/ja/faq/180076.html" title="php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决" class="phphistorical_Version2_mids_title">php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决</a> <span class="Articlelist_txts_time">Jun 13, 2016 am 10:23 AM</span> <p class="Articlelist_txts_p">php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code</p> </div> </div> <a href="https://www.php.cn/ja/php-tutorials.html" class="phpgenera_Details_mainL4_botton"> <span>See all articles</span> <img src="/static/imghw/down_right.png" alt="" /> </a> </div> </div> </div> </main> <footer> <div class="footer"> <div class="footertop"> <img src="/static/imghw/logo.png" alt=""> <p>福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!</p> </div> <div class="footermid"> <a href="https://www.php.cn/ja/about/us.html">私たちについて</a> <a href="https://www.php.cn/ja/about/disclaimer.html">免責事項</a> <a href="https://www.php.cn/ja/update/article_0_1.html">Sitemap</a> </div> <div class="footerbottom"> <p> © php.cn All rights reserved </p> </div> </div> </footer> <input type="hidden" id="verifycode" value="/captcha.html"> <script>layui.use(['element', 'carousel'], function () {var element = layui.element;$ = layui.jquery;var carousel = layui.carousel;carousel.render({elem: '#test1', width: '100%', height: '330px', arrow: 'always'});$.getScript('/static/js/jquery.lazyload.min.js', function () {$("img").lazyload({placeholder: "/static/images/load.jpg", effect: "fadeIn", threshold: 200, skip_invisible: false});});});</script> <script src="/static/js/common_new.js"></script> <script type="text/javascript" src="/static/js/jquery.cookie.js?1743594105"></script> <script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script> <link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css?2' type='text/css' media='all' /> <script type='text/javascript' src='/static/js/viewer.min.js?1'></script> <script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script> <script type="text/javascript" src="/static/js/global.min.js?5.5.53"></script> <script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function () { var u = "https://tongji.php.cn/"; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '9']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })(); </script> <script> // top layui.use(function () { var util = layui.util; util.fixbar({ on: { mouseenter: function (type) { layer.tips(type, this, { tips: 4, fixed: true, }); }, mouseleave: function (type) { layer.closeAll("tips"); }, }, }); }); document.addEventListener("DOMContentLoaded", (event) => { // 定义一个函数来处理滚动链接的点击事件 function setupScrollLink(scrollLinkId, targetElementId) { const scrollLink = document.getElementById(scrollLinkId); const targetElement = document.getElementById(targetElementId); if (scrollLink && targetElement) { scrollLink.addEventListener("click", (e) => { e.preventDefault(); // 阻止默认链接行为 targetElement.scrollIntoView({ behavior: "smooth" }); // 平滑滚动到目标元素 }); } else { console.warn( `Either scroll link with ID '${scrollLinkId}' or target element with ID '${targetElementId}' not found.` ); } } // 使用该函数设置多个滚动链接 setupScrollLink("Article_Details_main1L2s_1", "article_main_title1"); setupScrollLink("Article_Details_main1L2s_2", "article_main_title2"); setupScrollLink("Article_Details_main1L2s_3", "article_main_title3"); setupScrollLink("Article_Details_main1L2s_4", "article_main_title4"); setupScrollLink("Article_Details_main1L2s_5", "article_main_title5"); setupScrollLink("Article_Details_main1L2s_6", "article_main_title6"); // 可以继续添加更多的滚动链接设置 }); window.addEventListener("scroll", function () { var fixedElement = document.getElementById("Article_Details_main1Lmain"); var scrollTop = window.scrollY || document.documentElement.scrollTop; // 兼容不同浏览器 var clientHeight = window.innerHeight || document.documentElement.clientHeight; // 视口高度 var scrollHeight = document.documentElement.scrollHeight; // 页面总高度 // 计算距离底部的距离 var distanceToBottom = scrollHeight - scrollTop - clientHeight; // 当距离底部小于或等于300px时,取消固定定位 if (distanceToBottom <= 980) { fixedElement.classList.remove("Article_Details_main1Lmain"); fixedElement.classList.add("Article_Details_main1Lmain_relative"); } else { // 否则,保持固定定位 fixedElement.classList.remove("Article_Details_main1Lmain_relative"); fixedElement.classList.add("Article_Details_main1Lmain"); } }); </script> </body> </html>