タグ

sqlとphpに関するfukudamasa09のブックマーク (9)

  • PHPでデータベースに接続するときのまとめ - Qiita

    【2021/10/15 追記】 この記事は更新が停止されています。現在では筆者の思想が変化している面もありますので,過去の記事として参考程度にご覧ください。PDO に関しては大きく変わっていない部分が多いとは思いますが, PHP 8.x 以降での動作保証はありません。 あらかじめ読んでおきたい記事 Qiita - 【PHP超入門】クラス~例外処理~PDOの基礎 by @7968 初心者がやりがちなミス 以下のどれかに1つでも当てはまるコードは見直す必要があります.付録にリンクを貼っておきましたので,「該当するかも?」という人はクリックして飛んで読んでください.太字にしてあるものは脆弱性に直結する危険度の高いものです. mysql_query などの非推奨関数を利用している SET NAMES あるいは SET CHARACTER SET などで文字コードを指定している そもそもデータベース

    PHPでデータベースに接続するときのまとめ - Qiita
  • PDOの真の力を開放する - PHPでデータベースを扱う(3)

    ちょっと遅れましたが、シリーズの第3回です。前回までに論じた内容をふまえて、簡単な実装を示します。↓前回までの内容はこちら。 DAOの悪夢 - PHPでデータベースを扱う(1) - 泥のように ドメイン駆動設計という救世主 - PHPでデータベースを扱う(2) - 泥のように 題材 「記事にタグを設定できるブログ」みたいなシステムを考えてみます。ブログ記事を示すEntryテーブル、タグを表すTagテーブルの二つを用意しました。MySQL WorkbenchによるER図(鳥足記法)は以下になります。 1つのEntryに対して複数のTagがある、1対多の関係です。同じTagが複数のEntryに関連するため、多対多の関係と見なすこともできそうですが、タグ程度だとあまり意味がないので、これ以上のテーブル分割はやめておきます。 Entryテーブルの主キーがentryIdと冗長な名前をしているのは、自

    PDOの真の力を開放する - PHPでデータベースを扱う(3)
  • http://www.cpa-lab.com/tech/046

  • SQLite - Wikipedia

    SQLite(エスキューライト[2][3]、エスキューエライト[4][5]、なお、作者のHippはエスキューエルアイト(/ˌɛsˌkjuːˌɛlˈaɪt/[6][7][8])と発音している)は、パブリックドメインの軽量な関係データベース管理システム (RDBMS) である。 概要[編集] サーバとしてではなくアプリケーションに組み込んで利用されるデータベースである[9]。 一般的なRDBMSと違い、APIは単純にライブラリを呼び出すだけであり、データの保存に単一のファイルのみを使用することが特徴である。バージョン3.3.8からは全文検索のFTS1モジュールがサポートされた。その後 FTS2 - FTS3 と強化を続けバージョン3.7.4からはFTS4モジュールがサポートされている。 特徴[編集] SQL92の機能の多くを実装 著作権を放棄しパブリックドメインに帰している サーバではなくライ

    SQLite - Wikipedia
  • PreparedStatementAndNull

    312 :1/3:05/03/12 03:17:26 ID:??? 突然ですが,面白い SQL を思いついたので,ご意見を頂きたいです.興味を持たれた方は使ってみてくだちい。 一般的に,SQL の発行は,プリペアドステートメントを使う方がよいとされている.その理由は, DBMS のキャッシュが良く効く. SQL インジェクション等の危険が避けられる,等. しかし,webアプリの検索フォームなどでは,プリペアドステートメントは使えない場合が多かった.検索条件項目が複数存在していて,いずれの項目も必須で無い場合,項目が入力されているかどうかをチェックし,それに合わせてSQL 文の WHERE 句の内容をツギハギしなければならないからだ. SQL文そのものも,そしてそれにセットする引数の個数も可変なので,プリペアドステートメントを使うのは無理だったのである. 今回思いついたのは,このような条件で

  • buzzword(バズワード)

    株式会社バズワードとして運営しているサイトの一覧です。 JavaDrive JavaPythonJavaScriptなどのプログラミング言語の習得を行うための解説サイトです。他に PHPRubyPerl、 C言語などの解説を行っている他、正規表現やエディタの使い方など関係する知識の解説を行っています。 DBOnline MySQL、 PostgreSQLSQLite などデータベースに学習するためのサイトです。インストール方法や具体的な操作手順について解説を行っています。 ハウツーノート Twitter や Gmail、 YouTube など各種インターネットサービスの使い方について解説を行っています。 OfficePro Microsoft 社の Word、 Excel 、 Access に関する利用方法や VBA を使ったプログラミング方法について解説を行っていま

  • 『よくわかるPHPの教科書』のSQLインジェクション脆弱性 - ockeghem's blog

    このエントリでは、数値型の列に対するSQLインジェクションについて説明します。 以前のエントリで、たにぐちまことさんの書かれた『よくわかるPHPの教科書』の脆弱性について指摘しました。その際に、『私が見た範囲ではSQLインジェクション脆弱性はありませんでした』と書きましたが、その後PHPカンファレンス2011の講演準備をしている際に、同書を見ていてSQLインジェクション脆弱性があることに気がつきました。 脆弱性の説明 問題の箇所は同書P272のdelete.phpです。要点のみを示します。 $id = $_REQUEST['id']; // $id : 投稿ID $sql = sprintf('SELECT * FROM posts WHERE id=%d', mysql_real_escape_string($id) $record = mysql_query($sql) or die(

    『よくわかるPHPの教科書』のSQLインジェクション脆弱性 - ockeghem's blog
  • PHPとSQL Serverで実践する「帳票出力」の新しい考え方

    1-2. PHPアプリケーションからReporting Servicesを使用するシナリオの考察 それではPHPアプリケーションからReporting Servicesをどう活用するかという点に踏み込んでみましょう。いくつかのシナリオが考えられます。 この場合、データの更新処理だけは前回のアクセス方法でPHPアプリケーションから行い、あくまでも切り離された利用方法で、例えばメニュー画面で分かれているようなケースです。同一のマシンで実行することも可能ですが、レポートサーバーは既定で80番ポートを利用するのでWebサーバーとの競合になるので注意しましょう。 この場合はPHPというよりはHTMLのレベルでフレームを分けるという発想ですが、ブラウザ内での画面遷移などを考慮するとURLのパラメーター渡しで操作するRESTのような手法がとれます。 SQL Server Reporting Servic

    PHPとSQL Serverで実践する「帳票出力」の新しい考え方
  • MySQL初心者入門講座

    格的なプログラミングを学びたい場合は Java初心者入門講座 を次のステップとしてご活用ください。 ・Web系のプログラミングを学びたい場合は PHP初心者入門講座 を次のステップとしてご活用ください。 MySQLのデータベースを操作するには、いろんな方法(管理ツール)があります。 操作とは、データベース、テーブル、クエリなどへ対する参照・作成・追加・修正・削除などのことです。 これまでにも当入門講座では、 コマンドプロンプトやAccessを使った方法を紹介してきましたが、 もう一度まとめてみます。 MySQLをパソコンにインストールすると、 Windows付属のコマンドプロンプトから、コマンドラインで操作できるようになります。 これは講座の手順で、MySQLのbinフォルダに環境変数のPATHを通したため、 MySQL関係のプログラムがすぐに実行できるからです。 でもコマンドプロンプ

    MySQL初心者入門講座
  • 1