質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Q&A

解決済

1回答

797閲覧

セキュリティの関わる問題なので削除させていただきました。

amaguri

総合スコア227

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

0グッド

0クリップ

投稿2016/07/19 09:24

編集2018/06/18 09:38

セキュリティの関わる問題なので削除させていただきました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KiyoshiMotoki

2016/07/19 10:05

"$ips = $this->AllowIps->query($sql, [$this->$access_ip]);" の直後に "var_dump($ips);" という1行を追加し、実行してみてください。これで変数 $ips のデータ構造が分かります。 その上でどうしたらよいか分からなければ、"var_dump($ips);" で出力された内容をご質問に追記してください。
guest

回答1

0

ベストアンサー

ip2long()関数を使って、
start_ipからlast_ipの範囲にあるかifで比較すれば簡単ではないですか?

以下追記

失礼しました。
やりたいことが理解できず、全件取ってきてそれをロジックでip2long()で比較したほうが簡単かなと思ったのです。

次のようにSQLに条件追加ではダメですか?

SELECT start, last, full_access_flg FROM ips AS AllowIps WHERE full_access_flg != 1 AND INET_ATON(?) between INET_ATON(start) and INET_ATON(end)

投稿2016/07/19 09:35

編集2016/07/19 10:00
moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

amaguri

2016/07/19 09:41

お返事ありがとうございます。 すみません理解ができておらず どうip2long()関数を使って、 start_ipからlast_ipの範囲にあるかifで比較すれば  full_access_flgが1なのかわかるのか教えていただけますでしょうか?
amaguri

2018/06/18 09:38 編集

セキュリティの関わる問題なので削除させていただきました。
moonphase

2016/07/19 10:39

SQLにfull_access_flgを加えず、以下のコードにすれば見れます。 break条件は適切に追加してください。 foreach ($ips as $row) { if ($row['full_access_flg'] == '1') { //1の場合 } else if ($row['full_access_flg'] == '0') { //0の場合 } else { //その他の場合 } }
coba-coba

2016/07/19 12:22

横からすみません。 テーブル名やカラム名がコピペになってるので気を付けてください。 SELECT start_ip, last_ip, full_access_flg FROM allow_ips AS AllowIps WHERE INET_ATON(?) between INET_ATON(start_ip) and INET_ATON(last_ip)
amaguri

2018/06/18 09:38 編集

セキュリティの関わる問題なので削除させていただきました。
amaguri

2016/07/20 01:21

coba-cobaさん ご指摘ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問