" 。
""; $result .= "gt;"; $result を返す; } 関数 fieldFromType ($text, $type) { if ($type == "int" || $type == "uint" || $type == "real") { $result = $text ; } else { $result = "'" 。 AddSlashes ($text) 。 ""; } return $result; } 関数 executeMsql ($database, $command) { /*echo "" 。 $コマンド 。 " ";*/ msql ($database, $command); } 関数 handleRemove ($database, $table, $fieldsNumber, $fieldNames, $fieldLengths, $fieldTypes) { グローバル $remove; if ($remove != "") { $command = "DELETE FROM " 。 $テーブル 。 " どこ "; $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $fieldName = "old-" 。 $fieldNames [$fieldIndex]; グローバル $$フィールド名; $command .= $fieldNames [$fieldIndex] 。 「= 。 fieldFromType ($$fieldName, $fieldTypes [$fieldIndex]); if ($fieldIndex != $fieldsNumber - 1) { $command .= " AND "; } $fieldIndex++; } executeMsql ($database, $command); } } { グローバル $update; if ($update != "") { $command = "UPDATE " 。 $テーブル 。 " セット "; $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $fieldName = $fieldNames [$fieldIndex]; グローバル $$フィールド名; $command .= $fieldName 。 「= 。 fieldFromType ($$fieldName, $fieldTypes [$fieldIndex]); if ($fieldIndex != $fieldsNumber - 1) { $command .= ", "; } $fieldIndex++; } $command .= " WHERE "; $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $fieldName = "old-" 。 $fieldNames [$fieldIndex]; グローバル $$フィールド名; $command .= $fieldNames [$fieldIndex] 。 「= 。 fieldFromType ($$fieldName, $fieldTypes [$fieldIndex]); if ($fieldIndex != $fieldsNumber - 1) { $command .= " AND "; } $fieldIndex++; } executeMsql ($database, $command); } } function handleAdd ($database, $table, $fieldsNumber, $fieldNames, $field長さ、 $fieldTypes) { global $add; if ($add != "") { $command = "INSERT INTO " 。 $テーブル 。 " ("; $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $command .= $fieldNames [$fieldIndex]; if ($fieldIndex != $fieldsNumber - 1) { $command .= ", "; } $fieldIndex++; } $command .= ") VALUES ("; $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $fieldName = $fieldNames [$ fieldIndex]; global $$fieldName; $command .= fieldFromType ($$fieldName, $fieldTypes [$fieldIndex]); if ($fieldIndex != $fieldsNumber - 1) { $command .= ", "; } $fieldIndex++; } $command .= ")"; executeMsql ($database, $command); } } 関数 displayRemoveUpdate ($database, $table, $sortColumn, $fieldsNumber, $fieldNames, $fieldLengths) { $result = ""; if ($sortColumn != "") { $sortColumn = " ORDER BY " 。 $sortColumn; } $msqlresult = msql ($database, "SELECT * FROM " . $table . $sortColumn); $tuplesNumber = msql_numrows ($msqlresult); $tupleIndex = 0; while ($tupleIndex < $tupleNumber) { $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $values [$fieldIndex] = msql_result ($msqlresult, $tupleIn dex、 $fieldNames [$fieldIndex]); $fieldIndex++; } $result .= displayTuple ($fieldsNumber, $fieldNames, $fieldLengths, $values, "modify"); $tupleIndex++; } return $result; } 関数 displayAdd ($fieldsNumber, $fieldNames, $fieldLengths) { $result = ""; $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $values [$fieldIndex] = ""; $fieldIndex++; } $result .= displayTuple ($fieldsNumber, $fieldNames, $fieldLengths, $values, "add"); msql_close (); $result を返す; } 関数 administrationTable ($database, $table, $sortColumn) { $result = ""; msql_connect ( "localhost"); $msqlresult = msql ($database, "SELECT * FROM " . $table); $fieldsNumber = msql_numfields ($msqlresult); $msqlresult = msql_listfields ($database, $table); $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $fieldNames [$fieldIndex] = msql_fieldname ($msqlresult, $fieldIndex); $fieldLengths [$fieldIndex] = msql_fieldlen ($msqlresult, $fieldIndex); $fieldTypes [$fieldIndex] = msql_fieldtype ($msqlresult, $fieldIndex); $fieldIndex++; } handleRemove ($database, $table, $fieldsNumber, $fieldNames, $fieldLengths, $fieldTypes); handleUpdate ($database, $table, $fieldsNumber, $fieldNames, $fieldLengths, $fieldTypes); handleAdd ($database, $table, $fieldsNumber, $fieldNames, $fieldLengths, $fieldTypes); $result .= displayRemoveUpdate ($database, $table, $sortColumn, $fieldsNumber, $fieldNames, $fieldLengths); $result .= displayAdd ($fieldsNumber, $fieldNames, $fieldLengths); $result を返す; } 関数 addTable ($database, $table) { $result = ""; msql_connect ( "localhost"); $msqlresult = msql ($database, "SELECT * FROM " . $table); $fieldsNumber = msql_numfields ($msqlresult); $msqlresult = msql_listfields ($database, $table); $fieldIndex = 0; while ($fieldIndex < $fieldsNumber) { $fieldNames [$fieldIndex] = msql_fieldname ($msqlresult, $fieldIndex); $fieldLengths [$fieldIndex] = msql_fieldlen ($msqlresult, $fieldIndex); $fieldTypes [$fieldIndex] = msql_fieldtype ($msqlresult, $fieldIndex); $fieldIndex++; } handleAdd ($database, $table, $fieldsNumber, $fieldNames, $fieldLengths, $fieldTypes); $result .= displayAdd ($fieldsNumber, $fieldNames, $fieldLengths); $result を返す; } ?>
以上は、Web 側のコンテンツを含む、Web 1 つの SQL 管理者の Web インターフェイスでした。PHP 教則に関心のある友人の助けになることを望みます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Python+Flaskを使ってWebページのログのリアルタイム更新・表示を実現する方法
May 17, 2023 am 11:07 AM
1. module を使用したファイルへのログ出力:logging はカスタム レベルのログを生成し、指定したパスにログを出力できます ログ レベル: debug (デバッグ ログ) = 5) {clearTimeout (time) // すべての結果が取得された場合 10連続した時間が空です スケジュールされたタスクのログをクリアします}return}if(data.log_type==2){//新しいログが取得された場合 for(i=0;i
Nginx Webサーバーキャディの使用方法
May 30, 2023 pm 12:19 PM
Caddy の概要 Caddy は強力で拡張性の高い Web サーバーであり、現在 Github 上に 38,000 以上のスターが付いています。 Caddy は Go 言語で書かれており、静的リソースのホスティングとリバース プロキシに使用できます。 Caddy には以下の主な特徴があります: Nginx の複雑な構成と比較して、元の Caddyfile 構成は非常にシンプルです; 提供する AdminAPI を通じて構成を動的に変更できます; デフォルトで自動 HTTPS 構成をサポートし、自動的に適用して構成できますHTTPS 証明書; 数万のサイトのデータに拡張可能; 追加の依存関係なしでどこでも実行可能; Go 言語で記述されているため、メモリの安全性がより保証されます。まずはCentOに直接インストールします
Java API開発におけるWebサーバー処理にJetty7を使用する
Jun 18, 2023 am 10:42 AM
JavaAPI 開発における Web サーバー処理に Jetty7 を使用する インターネットの発展に伴い、Web サーバーはアプリケーション開発の中核部分となり、多くの企業でも注目を集めています。増大するビジネス ニーズを満たすために、多くの開発者が Web サーバー開発に Jetty の使用を選択しており、その柔軟性と拡張性は広く認識されています。この記事では、JavaAPI 開発における Jetty7 の使用方法を紹介します。
ウェブ上の顔面ブロック攻撃に対するリアルタイム保護 (機械学習に基づく)
Jun 10, 2023 pm 01:03 PM
顔面遮蔽弾幕とは、映像内の人物を遮ることなく大量の弾幕が浮遊し、人物の背後から浮遊しているように見せることです。機械学習は数年前から普及していますが、これらの機能がブラウザでも実行できることは多くの人に知られていません。この記事では、ビデオ連発における実際的な最適化プロセスを紹介します。記事の最後に、適用可能なシナリオをいくつか示します。このソリューションを開くことを望んでいます。いくつかのアイデアがあります。 mediapipeDemo (https://google.github.io/mediapipe/) は、顔ブロック弾幕のオンデマンドアップアップロードの主流の実装原理を示していますサーバーのバックグラウンド計算により、ビデオ画面内のポートレート領域を抽出し、SVG ストレージに変換しますクライアントがビデオを再生している間、サーバーから SVG をダウンロードし、弾幕、ポートレートと組み合わせる
FRPS サーバーと Web がポート 80 を共有するように nginx を設定する方法
Jun 03, 2023 am 08:19 AM
まず、frpって何?という疑問があると思います。簡単に言うと、frp はイントラネット侵入ツールであり、クライアントを設定すると、サーバー経由でイントラネットにアクセスできるようになります。現在、私のサーバーは Web サイトとして nginx を使用しており、ポート 80 が 1 つだけあります。では、FRP サーバーもポート 80 を使用したい場合はどうすればよいでしょうか?クエリ後、nginx のリバース プロキシを使用してこれを実現できます。追加: frps はサーバー、frpc はクライアントです。ステップ 1: サーバーの nginx.conf 構成ファイルを変更し、次のパラメータを nginx.conf の http{} に追加します。server{listen80
Golang を使用して Web アプリケーションのフォーム検証を実装する方法
Jun 24, 2023 am 09:08 AM
フォーム検証は Web アプリケーション開発において非常に重要なリンクであり、フォーム データを送信する前にデータの有効性をチェックして、アプリケーションのセキュリティ脆弱性やデータ エラーを回避できます。 Web アプリケーションのフォーム検証は、Golang を使用すると簡単に実装できます。この記事では、Golang を使用して Web アプリケーションのフォーム検証を実装する方法を紹介します。 1. フォーム検証の基本要素 フォーム検証の実装方法を紹介する前に、フォーム検証の基本要素が何であるかを知る必要があります。フォーム要素: フォーム要素は
コックピット Web UI から管理アクセスを有効にする方法
Mar 20, 2024 pm 06:56 PM
Cockpit は、Linux サーバー用の Web ベースのグラフィカル インターフェイスです。これは主に、初心者/熟練ユーザーにとって Linux サーバーの管理を容易にすることを目的としています。この記事では、Cockpit アクセス モードと、CockpitWebUI から Cockpit への管理アクセスを切り替える方法について説明します。コンテンツ トピック: コックピット エントリ モード 現在のコックピット アクセス モードの確認 CockpitWebUI からコックピットへの管理アクセスを有効にする CockpitWebUI からコックピットへの管理アクセスを無効にする まとめ コックピット エントリ モード コックピットには 2 つのアクセス モードがあります。 制限付きアクセス: これは、コックピット アクセス モードのデフォルトです。このアクセス モードでは、コックピットから Web ユーザーにアクセスできません。
ウェブ標準とは何ですか?
Oct 18, 2023 pm 05:24 PM
Web 標準は、W3C およびその他の関連組織によって策定された一連の仕様とガイドラインです。HTML、CSS、JavaScript、DOM、Web アクセシビリティおよびパフォーマンスの最適化の標準化が含まれます。これらの標準に従うことで、ページの互換性を向上させることができます。 、メンテナンス性とパフォーマンス。 Web 標準の目標は、Web コンテンツをさまざまなプラットフォーム、ブラウザー、デバイス上で一貫して表示および操作できるようにして、より優れたユーザー エクスペリエンスと開発効率を提供することです。
See all articles
|