PHPに関する質問スレです
前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 9
http://mevius.5ch.net/test/read.cgi/tech/1513760420/
次スレは>>980以降
本文の1行目に以下を追加すること
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
【PHP】下らねぇ質問はここに書き込みやがれ 10
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ cfe8-+65u)
2018/11/28(水) 17:08:46.02ID:Nb5yTkdM0781デフォルトの名無しさん (ワッチョイ 9701-L9ne)
2020/02/06(木) 22:00:14.76ID:qcCZ1na20 空だと表示される原因としてmariadbの設定を適当にしてしまった
phpadminを使用している時のユーザー名パスワードとmariadbを作成した時のパスワード又はユーザー名が全く別のものだと考えられるのですが原因はやっぱりこれでしょうか?
phpadminを使用している時のユーザー名パスワードとmariadbを作成した時のパスワード又はユーザー名が全く別のものだと考えられるのですが原因はやっぱりこれでしょうか?
782デフォルトの名無しさん (ワッチョイ 9701-L9ne)
2020/02/06(木) 22:02:13.41ID:qcCZ1na20 コマンドプロンプトで消せと書いてあるんですがデータのみインストールでzipからインストールしなかった場合消せるのでしょうか?
783デフォルトの名無しさん (ワッチョイ 57da-OB/u)
2020/02/07(金) 09:05:50.45ID:qw7QPilU0 0.1を10回足しても1.0にならないのはおかしい
784デフォルトの名無しさん (ワッチョイ ffa7-QQjh)
2020/02/07(金) 09:42:40.68ID:IMRBAKuu0785デフォルトの名無しさん (ワッチョイ ffa7-QQjh)
2020/02/07(金) 09:43:31.21ID:IMRBAKuu0 ↑の下は>>783宛
786デフォルトの名無しさん (オッペケ Sr0b-B6qE)
2020/02/08(土) 09:15:29.74ID:dJyCpuORr mysqli関数使ってるんだが、PDOについて質問です。
別のDBMSに乗り換えるときに便利、みたいな記事をよく見ますが、DBMSごとにSQL文の制約が少しずつ違いますよね?
この差はPDO自体は吸収できませんよね?コードで分岐するしかないんですよね?
すると、MySQLしか使わない限りは、PDOを使うメリットって何でしょうか?
別のDBMSに乗り換えるときに便利、みたいな記事をよく見ますが、DBMSごとにSQL文の制約が少しずつ違いますよね?
この差はPDO自体は吸収できませんよね?コードで分岐するしかないんですよね?
すると、MySQLしか使わない限りは、PDOを使うメリットって何でしょうか?
787デフォルトの名無しさん (ワッチョイ 7fca-z+R/)
2020/02/08(土) 10:26:28.77ID:zZtEQOJV0788デフォルトの名無しさん (ワッチョイ d7a7-QQjh)
2020/02/08(土) 14:08:52.88ID:iOIJiyGE0 >すると、MySQLしか使わない限りは、PDOを使うメリットって何でしょうか?
自分で使うもので将来的な移行もありえないならメリットは特にない
pdoのほうがよりモダンなコードで書けるぐらいか
パフォーマンスは公式にも書いてるけどどのAPI使ってもほぼ同じで誤差程度
自分で使うもので将来的な移行もありえないならメリットは特にない
pdoのほうがよりモダンなコードで書けるぐらいか
パフォーマンスは公式にも書いてるけどどのAPI使ってもほぼ同じで誤差程度
789デフォルトの名無しさん (ワッチョイ f76e-B6qE)
2020/02/08(土) 14:31:04.68ID:Jjt1u8eP0790デフォルトの名無しさん (ワッチョイ 5308-oFCC)
2020/02/12(水) 15:56:54.08ID:Q5WPE+fg0 ID:qcCZ1na20
はとりあえず日本語から勉強し直せ
アホー知恵袋より酷いぞ
つかプログラミング向いてないから手遅れになる前に諦めた方がいいんじゃね?
はとりあえず日本語から勉強し直せ
アホー知恵袋より酷いぞ
つかプログラミング向いてないから手遅れになる前に諦めた方がいいんじゃね?
791デフォルトの名無しさん (ブーイモ MM0e-gsGW)
2020/02/12(水) 17:49:58.19ID:qFSwmyrvM アップロードしたファイル名をDBに書き込んでファイルはtmpディレクトリに保存しておくときって
ファイルの名前はハッシュ値に変えるべきかそのままのファイル名で処理するかどっちがいいの?
ファイルの名前はハッシュ値に変えるべきかそのままのファイル名で処理するかどっちがいいの?
792デフォルトの名無しさん (ワッチョイ 1fa7-J3a+)
2020/02/13(木) 15:55:19.51ID:ngv8BCkj0 いつ消えるかわからないtmpに保存しとくって解せぬ
ファイル名をハッシュ値に変える意味はわからないけどそこは好きにすればいいのでは
ファイル名をハッシュ値に変える意味はわからないけどそこは好きにすればいいのでは
793デフォルトの名無しさん (ワッチョイ 5eda-OxJ8)
2020/02/15(土) 18:10:33.43ID:ndNA2Bw/0 下記記述のようにグローバルな場所で $arr を出力することはできたのですが、
関数の中で出力するとエラーになってしまいます。
PHPだと親に位置する変数って参照できないのでしょうか?
$arr = [
'a' => 1,
'b' => 2
];
var_dump($arr);
function test() {
var_dump($arr);
};
test();
関数の中で出力するとエラーになってしまいます。
PHPだと親に位置する変数って参照できないのでしょうか?
$arr = [
'a' => 1,
'b' => 2
];
var_dump($arr);
function test() {
var_dump($arr);
};
test();
794デフォルトの名無しさん (ワッチョイ b761-cV6v)
2020/02/15(土) 18:16:15.52ID:Y132p/bJ0795デフォルトの名無しさん (ワッチョイ 5eda-OxJ8)
2020/02/15(土) 18:30:10.65ID:ndNA2Bw/0796デフォルトの名無しさん (ワッチョイ 8689-RqZf)
2020/02/15(土) 22:52:13.91ID:wgObr5UE0 質問です。
色の近さを測る方法ってあるでしょうか?
例えば、
A.#4169e1 B.#ff7f50 C.#dc143c
があった場合、Cにより近い色はAとBどちら?
といった感じで使いたいです。
色の近さを測る方法ってあるでしょうか?
例えば、
A.#4169e1 B.#ff7f50 C.#dc143c
があった場合、Cにより近い色はAとBどちら?
といった感じで使いたいです。
797蟻人間 ◆T6xkBnTXz7B0 (ワッチョイ a701-ZWcj)
2020/02/15(土) 23:32:30.86ID:f7hi9XcW0 色コードといえば、RGBとかHSVとかCYMKとか習うと思うけど、これらは数学的にいうと、(ベクトル空間みたいな)色空間上の位置を持った点を意味する。
色の近さは色空間での2点間の距離の長さ。というわけで、色空間と距離の定義しだい。
色の近さは色空間での2点間の距離の長さ。というわけで、色空間と距離の定義しだい。
798デフォルトの名無しさん (ワッチョイ d201-b83C)
2020/02/16(日) 00:01:58.16ID:iNVxJNOu0799デフォルトの名無しさん (ワッチョイ 8689-RqZf)
2020/02/16(日) 00:14:57.82ID:KR6y1seH0 思った以上に難しそうだな…
16進数だからC-AとC-Bを行い絶対数の小さい方が似てる色くらいに思ってたぜ
16進数だからC-AとC-Bを行い絶対数の小さい方が似てる色くらいに思ってたぜ
800蟻人間 ◆T6xkBnTXz7B0 (ワッチョイ a701-ZWcj)
2020/02/16(日) 00:30:14.36ID:yQcmKOn30 まずはRGBコードをHSVに変換してみましょう。
801蟻人間 ◆T6xkBnTXz7B0 (スフッ Sd32-ZWcj)
2020/02/16(日) 00:32:40.25ID:+ZLQtp1jd https://github.com/katahiromz/color_value
C言語だけどこれで良ければ
C言語だけどこれで良ければ
802デフォルトの名無しさん (ワッチョイ 46ca-MwwC)
2020/02/16(日) 03:32:24.89ID:Tw+Vg2AB0 色の近さの判断基準が分からんとな。
とにかくRGBをHSVなりに変換したとして、
色相(H)が近ければ濃さ(S)や明るさ(V)はどうでもいいのか?
どうでもよくないならそれぞれのパラメータの重みを決める必要があるな。
とにかくRGBをHSVなりに変換したとして、
色相(H)が近ければ濃さ(S)や明るさ(V)はどうでもいいのか?
どうでもよくないならそれぞれのパラメータの重みを決める必要があるな。
803デフォルトの名無しさん (ワッチョイ 122c-LiuO)
2020/02/16(日) 07:16:26.92ID:5EL9p8ON0 SASS のmixin に、そういう機能は無いのか?
804デフォルトの名無しさん (オッペケ Src7-DLam)
2020/02/16(日) 08:37:59.92ID:B0xDVat5r 単純に3次元ベクトルの距離差だけでよいじゃん
RGBなんだし
RGBなんだし
805デフォルトの名無しさん (ワッチョイ d263-OxJ8)
2020/02/16(日) 10:40:08.82ID:e/9Szh9J0 人の目に感じる色の近さは、RGBの数値だけでは判定できないな
色合いと彩度で比較する方が感覚に近い
色合いと彩度で比較する方が感覚に近い
806デフォルトの名無しさん (ブーイモ MMa7-mtzg)
2020/02/21(金) 10:38:09.06ID:uhz6TO4QM csvをアップロードして中身読み込んで確認画面を出して問題なければDBに登録する仕組み作ってるんですけど
ページ間のデータ渡しって2Mくらいのそれなりに大きいデータでもセッションで大丈夫ですか?
ページ間のデータ渡しって2Mくらいのそれなりに大きいデータでもセッションで大丈夫ですか?
807デフォルトの名無しさん (オイコラミネオ MM47-1Tph)
2020/02/21(金) 11:04:55.83ID:KI0NB2iSM セションの中身はディスクに書いてるんだろうから、2MBくらいなら保存自体の問題は無いんじゃね。
でも不要になったらセッションからさっさと削除しないと、毎回そのデータがメモリにロードされることになる。
セッションとは別に一時ファイルに書き出してそのファイル名をセッションで保持するのがスマートな気がするけど、一時ファイルの掃除の方法を別途考えないといけないのが面倒だな。
でも不要になったらセッションからさっさと削除しないと、毎回そのデータがメモリにロードされることになる。
セッションとは別に一時ファイルに書き出してそのファイル名をセッションで保持するのがスマートな気がするけど、一時ファイルの掃除の方法を別途考えないといけないのが面倒だな。
808デフォルトの名無しさん (ブーイモ MMa7-mtzg)
2020/02/21(金) 11:36:12.22ID:uhz6TO4QM809デフォルトの名無しさん (オイコラミネオ MM47-1Tph)
2020/02/21(金) 12:41:45.52ID:KI0NB2iSM >>808
一時ファイルの掃除のためにこの辺を読んでおくといいと思う。
https://www.php.net/manual/ja/session.customhandler.php
destroy とか gc で一時ファイルを掃除する必要があるはず。
一時ファイルの掃除のためにこの辺を読んでおくといいと思う。
https://www.php.net/manual/ja/session.customhandler.php
destroy とか gc で一時ファイルを掃除する必要があるはず。
810デフォルトの名無しさん (ワッチョイ 8f89-sS5o)
2020/02/23(日) 17:03:54.18ID:LPteoL8J0 preg_match_allを使ってリンク先が画像のURL取得したいんだけど正規表現がわかりません。
これを↓
<a href="http://img.hoge/001.jpg" target="_blank">
こうしたい↓
http://img.hoge/001.jpg
作ってみたのがこれ↓
preg_match_all('/href="(.*?)(jpg|jpeg|png)?"/', $html, $imgurllist);
わかる方いらっしゃいました教えて下さい。
これを↓
<a href="http://img.hoge/001.jpg" target="_blank">
こうしたい↓
http://img.hoge/001.jpg
作ってみたのがこれ↓
preg_match_all('/href="(.*?)(jpg|jpeg|png)?"/', $html, $imgurllist);
わかる方いらっしゃいました教えて下さい。
811デフォルトの名無しさん (ワッチョイ 8f02-wKkS)
2020/02/23(日) 17:21:12.17ID:UC/kHLCn0 "の前に\が必要かも?
href=\"(.*?\.png|.*?\.jpeg|.*?\.jpeg)\"
なんてどうでしょう
href=\"(.*?\.png|.*?\.jpeg|.*?\.jpeg)\"
なんてどうでしょう
812デフォルトの名無しさん (ワッチョイ 8f02-wKkS)
2020/02/23(日) 17:21:56.35ID:UC/kHLCn0 最後はjpgの間違い
813デフォルトの名無しさん (ワッチョイ a3a7-icXw)
2020/02/23(日) 18:39:43.25ID:p2aTkQco0 なんでもかんでも正規表現でやらんほうがいいよ
ちゃんとしたの書くの難しいし何より自分がわからないのは良くない
多少時間はかかるかもしれないが
getElementsByTagName('a')->getAttribute('href')でa hrefのリストとってきて
1個ずつpathinfo['extension']を見ていく感じ
pathinfo['extenstion']の?以降を除外してstrtolowerで拡張子小文字にした上で
in_arrayあたりで比較すればいいんでは?
ちゃんとしたの書くの難しいし何より自分がわからないのは良くない
多少時間はかかるかもしれないが
getElementsByTagName('a')->getAttribute('href')でa hrefのリストとってきて
1個ずつpathinfo['extension']を見ていく感じ
pathinfo['extenstion']の?以降を除外してstrtolowerで拡張子小文字にした上で
in_arrayあたりで比較すればいいんでは?
814デフォルトの名無しさん (アウアウウー Sae7-bgYn)
2020/02/23(日) 19:13:36.62ID:xNzf67+4a 正規表現なら一行で書けるのにごちゃごちゃ関数かます方が意味分からない
815デフォルトの名無しさん (ワッチョイ ff63-Nz9x)
2020/02/23(日) 19:21:02.12ID:S7JwB5qb0 あの呪文のような記述を受け付けない人もいるみたいだ
俺は好きなんだけどな
俺は好きなんだけどな
816デフォルトの名無しさん (ワントンキン MM9f-IDX8)
2020/02/23(日) 19:29:10.11ID:EUelPM9rM817デフォルトの名無しさん (アウアウウー Sae7-bgYn)
2020/02/23(日) 19:52:51.22ID:xNzf67+4a 新手の教えて君か?
その手には乗らねーよ
その手には乗らねーよ
818デフォルトの名無しさん (ワントンキン MM9f-IDX8)
2020/02/23(日) 20:18:07.28ID:EUelPM9rM ま、こんなもんだろ
口先だけで自信ないから書けない
正規表現なんて書けた気でいるやつが大半でバグの温床
本当にちゃんと書けるやつだけ使えな
口先だけで自信ないから書けない
正規表現なんて書けた気でいるやつが大半でバグの温床
本当にちゃんと書けるやつだけ使えな
819デフォルトの名無しさん (アウアウウー Sae7-bgYn)
2020/02/23(日) 20:46:46.39ID:xNzf67+4a 頭がバグってるやつに言われてもね
820デフォルトの名無しさん (ワッチョイ ffad-C6+A)
2020/02/23(日) 21:13:29.11ID:0sUq9sLC0821デフォルトの名無しさん (ワッチョイ 6fda-Nz9x)
2020/02/23(日) 21:37:24.28ID:rIVuphj20 先輩が書いたコードを見ると $_SERVER などの取得する値に対して
urldecode やら isset やらで本当にその値か正しいものかどうか、セットされてるかどうか
毎度調べてるようなのですが、正しくない場合の事例が書いてあるサイトってありますか?
また、この手のエスケープや存在確認やらがまとめてあるサイトもあれば教えていただけますでしょうか。
自分では追っかけきれず、毎度先輩に迷惑掛けてしまっている状態で申し訳ないっす…
urldecode やら isset やらで本当にその値か正しいものかどうか、セットされてるかどうか
毎度調べてるようなのですが、正しくない場合の事例が書いてあるサイトってありますか?
また、この手のエスケープや存在確認やらがまとめてあるサイトもあれば教えていただけますでしょうか。
自分では追っかけきれず、毎度先輩に迷惑掛けてしまっている状態で申し訳ないっす…
822デフォルトの名無しさん (ワッチョイ 8302-8E80)
2020/02/23(日) 22:27:34.54ID:jUm6GNGX0823デフォルトの名無しさん (ワッチョイ 3308-p4c1)
2020/02/24(月) 11:46:26.32ID:/D+Ss1rU0 >>821
$_SERVERで取れるのは環境変数
環境変数って言うぐらいだから、その値が必ずある保証なんてないし、めちゃくちゃな値をセットする事もできる
例えば
$_SERVER['HTTP_USER_AGENT']
とかな。自分でめちゃくちゃな値をセットして自分で実験してみたらいい
isset()なんか使わんけどねw
あるか無いか分からない時は getenv() 使えばいい
urldecode()にいたっては検証用の関数ですらない
URLエンコードされたデータをデコードしてるだけ
なんていうかHTTPの基礎から理解できてない
とりあえずGoogle Chromeのデベロッパツールでも眺めてHTTPの流れから理解した方がいいんじゃね?
$_SERVERで取れるのは環境変数
環境変数って言うぐらいだから、その値が必ずある保証なんてないし、めちゃくちゃな値をセットする事もできる
例えば
$_SERVER['HTTP_USER_AGENT']
とかな。自分でめちゃくちゃな値をセットして自分で実験してみたらいい
isset()なんか使わんけどねw
あるか無いか分からない時は getenv() 使えばいい
urldecode()にいたっては検証用の関数ですらない
URLエンコードされたデータをデコードしてるだけ
なんていうかHTTPの基礎から理解できてない
とりあえずGoogle Chromeのデベロッパツールでも眺めてHTTPの流れから理解した方がいいんじゃね?
824デフォルトの名無しさん (ワッチョイ 3308-p4c1)
2020/02/24(月) 11:58:40.79ID:/D+Ss1rU0825デフォルトの名無しさん (ワッチョイ 3308-p4c1)
2020/02/24(月) 12:00:32.05ID:/D+Ss1rU0 >>810
くそ適当に書くけど
$html = '<a href="http://img.hoge/001.jpg" target="_blank">';
preg_match_all('/href\s*=\s*([\'"])(.+?\.(?:jpe?g|png))\\1/i', $html, $match, PREG_SET_ORDER);
print_r($match);
・大文字小文字の考慮
・スペース文字の考慮
・シングルクォートで挟むのかダブルクォートで挟むのかの考慮
正規表現を使うならせめてこれぐらいはしようよw
くそ適当に書くけど
$html = '<a href="http://img.hoge/001.jpg" target="_blank">';
preg_match_all('/href\s*=\s*([\'"])(.+?\.(?:jpe?g|png))\\1/i', $html, $match, PREG_SET_ORDER);
print_r($match);
・大文字小文字の考慮
・スペース文字の考慮
・シングルクォートで挟むのかダブルクォートで挟むのかの考慮
正規表現を使うならせめてこれぐらいはしようよw
826デフォルトの名無しさん (ワッチョイ 3308-p4c1)
2020/02/24(月) 12:08:32.46ID:/D+Ss1rU0827デフォルトの名無しさん (ワッチョイ 8f89-sS5o)
2020/02/24(月) 12:27:06.58ID:bCyGnyrg0828デフォルトの名無しさん (ワッチョイ 4301-ChGR)
2020/02/24(月) 18:10:06.13ID:rxpR87T30 >>821
毎度?普通はそういう繰り返し使われる処理はライブラリ化すると思うけど
毎度?普通はそういう繰り返し使われる処理はライブラリ化すると思うけど
829デフォルトの名無しさん (ワッチョイ 4301-ChGR)
2020/02/24(月) 18:12:00.24ID:rxpR87T30 正規表現なら1行で書けるといいながらその1行すら書けずに逃げた>>814が恥ずかしすぎる
830デフォルトの名無しさん (ワッチョイ 6fda-Nz9x)
2020/02/24(月) 18:27:40.24ID:pG7e8gTP0831デフォルトの名無しさん (ワッチョイ 3308-p4c1)
2020/02/24(月) 19:35:47.79ID:/D+Ss1rU0 >>830
上のタブでNetworkを選んでHeadersのところを見る
Request Headersに書かれてるのが、ウェブサーバに対するHTTPリクエストの内容
例えばそこにAccept-Encoding: gzip とあれば
ウェブサーバがそれを見てコンテンツをgzip圧縮してレスポンスとして返す
そしてウェブブラウザがそれをデコードして元に戻す
User-Agentなんかも書かれてるはず
Accept-EncodingにせよUser-Agentにせよあくまでも自称であり、
そこには嘘でもめちゃくちゃな文字列でもなんでも書けるんだよ
だから値を信用したら駄目ってこと
上のタブでNetworkを選んでHeadersのところを見る
Request Headersに書かれてるのが、ウェブサーバに対するHTTPリクエストの内容
例えばそこにAccept-Encoding: gzip とあれば
ウェブサーバがそれを見てコンテンツをgzip圧縮してレスポンスとして返す
そしてウェブブラウザがそれをデコードして元に戻す
User-Agentなんかも書かれてるはず
Accept-EncodingにせよUser-Agentにせよあくまでも自称であり、
そこには嘘でもめちゃくちゃな文字列でもなんでも書けるんだよ
だから値を信用したら駄目ってこと
832デフォルトの名無しさん (ワッチョイ 3308-p4c1)
2020/02/24(月) 19:42:59.09ID:/D+Ss1rU0 >>830
自分でHTTPクライアントを作ってみるのが一番いい
fsockopen()やstream_socket_client()あたりでサーバに接続して
HTTPの命令を送ってレスポンスを受け取るみたいなコードを書けばHTTPの流れは一発で理解できる
「PHP stream_socket_client HTTP/1.1」とか適当にググったら、たぶんサンプルコードは見つかるはず
自分でHTTPクライアントを作ってみるのが一番いい
fsockopen()やstream_socket_client()あたりでサーバに接続して
HTTPの命令を送ってレスポンスを受け取るみたいなコードを書けばHTTPの流れは一発で理解できる
「PHP stream_socket_client HTTP/1.1」とか適当にググったら、たぶんサンプルコードは見つかるはず
833デフォルトの名無しさん (ワッチョイ ff2c-lQWV)
2020/02/24(月) 20:05:32.49ID:ZFXUbFog0 漏れは、5ch の投稿から、画像のリンクだけを取り出すために、
Ruby で、こういうモジュールを作っている
module MyUtility
require 'uri'
@@EXTS = %w(png jpg jpeg gif) # 画像の拡張子
# 画像の拡張子かどうか?
def check_picture_extname? ( picture_url )
return false if picture_url.empty?
begin
uri = URI.parse picture_url
rescue # 半角以外の文字
return false
end
file_name = File.basename(uri.path) # ファイル名
file_extname = File.extname(file_name) # 拡張子
return false if file_extname.empty?
# . を削除して、小文字にする
file_extname.delete!(".").downcase!
@@EXTS.include? file_extname # 含まれている?
end
module_function :check_picture_extname? # 公開
end
Ruby で、こういうモジュールを作っている
module MyUtility
require 'uri'
@@EXTS = %w(png jpg jpeg gif) # 画像の拡張子
# 画像の拡張子かどうか?
def check_picture_extname? ( picture_url )
return false if picture_url.empty?
begin
uri = URI.parse picture_url
rescue # 半角以外の文字
return false
end
file_name = File.basename(uri.path) # ファイル名
file_extname = File.extname(file_name) # 拡張子
return false if file_extname.empty?
# . を削除して、小文字にする
file_extname.delete!(".").downcase!
@@EXTS.include? file_extname # 含まれている?
end
module_function :check_picture_extname? # 公開
end
834デフォルトの名無しさん (ワッチョイ 6fda-Nz9x)
2020/02/24(月) 20:10:17.32ID:pG7e8gTP0835デフォルトの名無しさん (ワッチョイ ff2c-lQWV)
2020/02/24(月) 20:20:22.27ID:ZFXUbFog0 VSCode の拡張機能の、REST Client を使えばよい
### で区切れば、いくつでも書ける。
カーソルを置いて、右クリックメニューから送信
GET http://localhost:8888/?page=2&pageSize=10 HTTP/1.1
###
POST http://localhost:8888/ HTTP/1.1
content-type: application/json
{
"name": "sample",
"time": "Wed, 21 Oct 2015 18:27:50 GMT"
}
###
### で区切れば、いくつでも書ける。
カーソルを置いて、右クリックメニューから送信
GET http://localhost:8888/?page=2&pageSize=10 HTTP/1.1
###
POST http://localhost:8888/ HTTP/1.1
content-type: application/json
{
"name": "sample",
"time": "Wed, 21 Oct 2015 18:27:50 GMT"
}
###
836デフォルトの名無しさん (ワッチョイ fb5f-g6LZ)
2020/03/04(水) 00:36:08.76ID:4nMHG/7W0 phpファイルにパスワードを記入しているのですが
安全でしょうか?
もしくはもっと安全な方法はありますか?
安全でしょうか?
もしくはもっと安全な方法はありますか?
837デフォルトの名無しさん (ワッチョイ 9f63-xiWk)
2020/03/04(水) 01:50:10.45ID:9gBPL9dd0 安全かどうかと聞かれれば、安全ではないと答えるが
838デフォルトの名無しさん (ワッチョイ 4f89-x1Qw)
2020/03/07(土) 21:24:50.43ID:0OcB8lvE0 質問です。
テキストファイルにキーワードが書いてあり、
それを読み込んで一致する文字列があったらtrueを返します。
しかし、たまに一致箇所があるにも関わらずスルーされる場合があります。
なぜでしょうか?
判定は↓のような感じです。
strpos($str,'キーワード') !== false
テキストファイルにキーワードが書いてあり、
それを読み込んで一致する文字列があったらtrueを返します。
しかし、たまに一致箇所があるにも関わらずスルーされる場合があります。
なぜでしょうか?
判定は↓のような感じです。
strpos($str,'キーワード') !== false
839デフォルトの名無しさん (ワッチョイ 9fad-j73r)
2020/03/07(土) 22:30:19.72ID:olnFzWkU0840デフォルトの名無しさん (ワッチョイ 1fdd-BxM+)
2020/03/07(土) 22:38:56.40ID:1MRzagVb0 改行が混ざってるんじゃない?
841デフォルトの名無しさん (ワッチョイ 4f89-x1Qw)
2020/03/07(土) 23:48:46.74ID:0OcB8lvE0 すみません。
解決しました。
原因は、テスト用のフォルダのパスのままになっていたことと
試運転時のデータが一部使われていた事により
一部検出されていないというおかしな状態になっているということでした。
解決しました。
原因は、テスト用のフォルダのパスのままになっていたことと
試運転時のデータが一部使われていた事により
一部検出されていないというおかしな状態になっているということでした。
842デフォルトの名無しさん (ワッチョイ 9f63-yvuU)
2020/03/08(日) 01:24:36.29ID:yy8ndPXN0 原子力発電所じゃなくてよかったw
843デフォルトの名無しさん (ワッチョイ 4bda-R/kF)
2020/03/08(日) 16:38:04.82ID:o6nDRKvt0 die();
exit();
exit は言語構造です。 status を指定しない場合は括弧なしでコールできます。
って今知ったわー
exit();
exit は言語構造です。 status を指定しない場合は括弧なしでコールできます。
って今知ったわー
844デフォルトの名無しさん (ワッチョイ 86da-drwQ)
2020/03/13(金) 02:12:30.03ID:iVXMMcFW0 foreach ($this->_db->query($sql) as $v) {...}
query()やprepare()で準備した文はexecute()必須だと思ってましたが
↑の記述ではexecute()なしでSQL文を実行できているようでした
何故でしょうか?
query()やprepare()で準備した文はexecute()必須だと思ってましたが
↑の記述ではexecute()なしでSQL文を実行できているようでした
何故でしょうか?
845デフォルトの名無しさん (ワッチョイ c263-drwQ)
2020/03/13(金) 02:27:00.67ID:6hF2k6+W0 $sqlの内容が 直接実行可能なSQL文だったらそのままで行けるよ
846デフォルトの名無しさん (ワッチョイ 69f1-ZSAD)
2020/03/13(金) 13:42:16.08ID:3oUhS72l0 ->
=>
がよく混同する。
どれがどの用法かを一発で覚える方法ある?
数ヵ月以上使っていなかったり他言語やってたりすると覚えるのは困難。
=>
がよく混同する。
どれがどの用法かを一発で覚える方法ある?
数ヵ月以上使っていなかったり他言語やってたりすると覚えるのは困難。
847デフォルトの名無しさん (ワッチョイ 86da-drwQ)
2020/03/14(土) 09:55:43.61ID:Vu/3uGwv0 >>845
どうも
$sql のSQL文は下記なのですが、直接実行できるときとできない場合の
見分け方ってありますでしょうか?
$sql = "select answer, count(id) as c from answers group by answer";
bindValue() とかをかましているときに execute() 使っているようなので
プレースホルダの置換しなければおk的な感じなのでしょうか?
どうも
$sql のSQL文は下記なのですが、直接実行できるときとできない場合の
見分け方ってありますでしょうか?
$sql = "select answer, count(id) as c from answers group by answer";
bindValue() とかをかましているときに execute() 使っているようなので
プレースホルダの置換しなければおk的な感じなのでしょうか?
848デフォルトの名無しさん (ワッチョイ 86da-drwQ)
2020/03/14(土) 11:47:05.77ID:Vu/3uGwv0849デフォルトの名無しさん (ブーイモ MM8d-ZSAD)
2020/03/14(土) 12:06:04.05ID:ftz/XzuIM >>846
いまだ自己解決しません
いまだ自己解決しません
850デフォルトの名無しさん (ワッチョイ 068c-WOeG)
2020/03/14(土) 19:01:35.17ID:B3THKCTN0 >>846
->これはアロー演算子だから
オブジェクトとかクラスとか呼び出したときにメソッドを呼び出すときに使うから
クラス名->メソッドとかで
=>これは普通の演算子以下とか以上とかで使うやつだから
->これはアロー演算子だから
オブジェクトとかクラスとか呼び出したときにメソッドを呼び出すときに使うから
クラス名->メソッドとかで
=>これは普通の演算子以下とか以上とかで使うやつだから
851デフォルトの名無しさん (ワッチョイ ed5c-FfQu)
2020/03/14(土) 19:46:32.71ID:DYwfTyBB0 >>=>これは普通の演算子以下とか以上とかで使うやつだから
嘘つき
嘘つき
852デフォルトの名無しさん (ブーイモ MM8d-ZSAD)
2020/03/14(土) 19:58:46.89ID:hEp1GdU0M >>850
このウソつきめ
このウソつきめ
853デフォルトの名無しさん (ワッチョイ 7d02-FfQu)
2020/03/14(土) 20:34:45.23ID:GFwOalat0 >>850
You are a liar!
You are a liar!
854デフォルトの名無しさん (ワッチョイ 068c-WOeG)
2020/03/15(日) 12:42:37.91ID:dxrxQoIU0855デフォルトの名無しさん (ワッチョイ 69a7-R/wk)
2020/03/15(日) 19:54:07.87ID:NaNFV4Bh0 最近はfnとセットでアロー関数使うときにも使うけどね
856デフォルトの名無しさん (ワッチョイ 69d2-WWFo)
2020/03/16(月) 05:40:39.73ID:3OE3knP80857デフォルトの名無しさん (ワッチョイ 69f1-5Ayy)
2020/03/16(月) 10:12:02.17ID:n/UZHZ/90858デフォルトの名無しさん (ワッチョイ f9c4-ZeYt)
2020/03/16(月) 10:41:57.59ID:88XG2BvL0 なんでこうプログラマとかUNIX使いってめんどくさいのが多いかね
859デフォルトの名無しさん (ワッチョイ c263-drwQ)
2020/03/16(月) 14:37:23.52ID:UdSTQWc50 先にめんどくさいことを片付けるか、後からめんどくさいことにぶち当たるかの、違い
860デフォルトの名無しさん (ワッチョイ 1389-xsY/)
2020/03/22(日) 17:15:31.58ID:R2yf6A3f0 質問いいでしょうか?
ローカル環境XAMPPで動かしています。
外付けHDDから画像を表示させようとしたところ見つからないというエラーが出ました。
[an error occurred while processing this directive] 要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。 [an error occurred while processing this directive]
リンクをコピーで確認したところURLの前に「http://localhost」が勝手に追加されていました。
これのせいで上手く表示されていないようです。
なんとかして画像を表示させる方法はないでしょうか?
ローカル環境XAMPPで動かしています。
外付けHDDから画像を表示させようとしたところ見つからないというエラーが出ました。
[an error occurred while processing this directive] 要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。 [an error occurred while processing this directive]
リンクをコピーで確認したところURLの前に「http://localhost」が勝手に追加されていました。
これのせいで上手く表示されていないようです。
なんとかして画像を表示させる方法はないでしょうか?
861デフォルトの名無しさん (オッペケ Sr85-lbMX)
2020/03/22(日) 17:37:50.11ID:95kANOoTr >>860
諸々の知識が足りて無さすぎるのでサーバーとはなんぞやxamppとはなんぞやってとこから勉強してどうぞ
諸々の知識が足りて無さすぎるのでサーバーとはなんぞやxamppとはなんぞやってとこから勉強してどうぞ
862デフォルトの名無しさん (オッペケ Sr85-DLm1)
2020/03/22(日) 17:38:33.08ID:StD3gLg7r urlとファイルのパスは違う
ただそれだけ
ただそれだけ
863デフォルトの名無しさん (ワッチョイ 1389-xsY/)
2020/03/22(日) 18:26:04.76ID:R2yf6A3f0 ウ〜ンやっぱ無理か
一時的にコピーくらいしか思いつかんな
データとして貼り付けるにして多いし重すぎる
一時的にコピーくらいしか思いつかんな
データとして貼り付けるにして多いし重すぎる
864デフォルトの名無しさん (ワッチョイ 8b61-W5ce)
2020/03/22(日) 19:21:51.54ID:uAP5d0yV0 ドキュメントルート内のどこかからジャンクションやシンボリックリンク張るなり、サーバー設定でaliasすればいいんでね?
865デフォルトの名無しさん (ワッチョイ 9363-ED79)
2020/03/22(日) 19:38:15.03ID:sN305W7E0866デフォルトの名無しさん (ワッチョイ 1389-xsY/)
2020/03/22(日) 22:18:36.23ID:R2yf6A3f0867デフォルトの名無しさん (ワッチョイ 9363-ED79)
2020/03/22(日) 22:40:26.52ID:sN305W7E0868デフォルトの名無しさん (ワッチョイ fbda-ED79)
2020/03/22(日) 22:54:04.30ID:D4yHaglA0 相乗りで質問させてください。
>>867 のリンク先に書いてあるような設定を済ませて、chromeでは〇〇〇.localhostといった
URLで開けるようになったのですが、それ以外のブラウザではエラーが出てしまい開けません。
改善方法はありますでしょうか?
PHPと関係ないかもしれませんが、該当スレも見当たらず…
どうかご回答よろしくお願いいたします。
>>867 のリンク先に書いてあるような設定を済ませて、chromeでは〇〇〇.localhostといった
URLで開けるようになったのですが、それ以外のブラウザではエラーが出てしまい開けません。
改善方法はありますでしょうか?
PHPと関係ないかもしれませんが、該当スレも見当たらず…
どうかご回答よろしくお願いいたします。
869デフォルトの名無しさん (ワッチョイ 81da-ED79)
2020/03/22(日) 23:06:53.02ID:UY6UlDJY0870デフォルトの名無しさん (ワッチョイ 29a7-hdmr)
2020/03/22(日) 23:51:04.35ID:z2MML3bn0 virtualhostでもいいけどめんどいしalias追加でいいんじゃねえの
871デフォルトの名無しさん (ワッチョイ 8b2c-cvBQ)
2020/03/23(月) 07:16:27.59ID:jGS2rL5b0 Windows 10, WSL, Ubuntu 18.04 で、Ruby なら、Linux 側で、
1-liner で、Rubyで作られた遅いウェブサーバー、WEBrick が起動する
ruby -run -e httpd . -p 8080
そのフォルダに、index.html があれば、
Windows側から、これでブラウザでアクセスできる
http://localhost:8080
Linux側も、C ドライブ内にあるからかな?
アクセスするサーバーが、どのドライブのどのフォルダ内を、
カレントディレクトリとして起動したか
1-liner で、Rubyで作られた遅いウェブサーバー、WEBrick が起動する
ruby -run -e httpd . -p 8080
そのフォルダに、index.html があれば、
Windows側から、これでブラウザでアクセスできる
http://localhost:8080
Linux側も、C ドライブ内にあるからかな?
アクセスするサーバーが、どのドライブのどのフォルダ内を、
カレントディレクトリとして起動したか
872デフォルトの名無しさん (オイコラミネオ MM55-94HG)
2020/03/23(月) 21:22:44.81ID:w/tA8drNM 2ch風の掲示板を作ってます。
datファイルで一行に名前・メール・メッセージと管理用のIDやらを
記述するやり方で、レスアンカーやurlをループ処理の中で出力時に
aタグで囲む方法が思い付きません。
正規表現でメッセージから有無の判定はできましたが、そこから先で詰まってます。
ヒントをください。
datファイルで一行に名前・メール・メッセージと管理用のIDやらを
記述するやり方で、レスアンカーやurlをループ処理の中で出力時に
aタグで囲む方法が思い付きません。
正規表現でメッセージから有無の判定はできましたが、そこから先で詰まってます。
ヒントをください。
873デフォルトの名無しさん (オイコラミネオ MM55-8l36)
2020/03/23(月) 21:47:23.30ID:QTEdjjlGM874デフォルトの名無しさん (ワッチョイ 29a7-hdmr)
2020/03/23(月) 22:01:36.98ID:4wQQ+VSn0 後方参照がわからんのだろうな
matchじゃなくてreplaceでおk
正規表現でマッチした()の中身を置き換えのとこで$n or \\nで参照できる
例えばこんなん
https://ideone.com/lJv04e
matchじゃなくてreplaceでおk
正規表現でマッチした()の中身を置き換えのとこで$n or \\nで参照できる
例えばこんなん
https://ideone.com/lJv04e
875デフォルトの名無しさん (ワッチョイ fbda-ED79)
2020/03/24(火) 02:26:45.30ID:84LIBSDP0876デフォルトの名無しさん (ワッチョイ b6da-Cd0d)
2020/03/25(水) 23:42:46.36ID:YJCiq0GG0 >>874
下記記述で行けました。
本当にありがとうございました(涙)
preg_replace('/>>([0-9]{1,3})/', '<a href="#$1">>>$1</a>', $message);
ちなみにセキュリティに対して理解が浅すぎるのですが、渡ってくる文字列に対して警戒していればおkで
置換でa要素を使ったり、HTMLエンティティ対象の文字列をそのまま書いても大丈夫なのでしょうか?
下記記述で行けました。
本当にありがとうございました(涙)
preg_replace('/>>([0-9]{1,3})/', '<a href="#$1">>>$1</a>', $message);
ちなみにセキュリティに対して理解が浅すぎるのですが、渡ってくる文字列に対して警戒していればおkで
置換でa要素を使ったり、HTMLエンティティ対象の文字列をそのまま書いても大丈夫なのでしょうか?
877デフォルトの名無しさん (ワッチョイ b1a7-B4Y8)
2020/03/26(木) 08:37:27.85ID:uQPl4pkP0 5chはテキストログで1レス1行が都合が良さそうなのと区切り文字が必要になるので
そのへんの改行(<br>)と区切り(<>)考慮するとエスケープ済みのほうが扱いやすい
ただ欠点としてはログサイズが肥大する
もちろん必要最小限のエスケープでもできるけどめんどくさいので完全再現じゃないが
ログ保存時
$message = preg_replace('/\r?\n/', '<br>', htmlspecialchars($_POST['message'], ENT_QUOTES, 'UTF-8'));
出力時
$message = preg_replace(['/>>([0-9]{1,3})/', '%(https?://[^\s&]+)%'], ['<a href="#$1">>>$1</a>', '<a href="$1">$1</a>'], $message);
とかなんじゃないかなと
リンクつける仕様上一旦エスケープしたのを戻す箇所があるので
そこでXSSを成立させないよう注意してコーディングする必要がある
エスケープ済みの文字は<や"のように&がつくので
[^\s&]のとこのように&でぶったぎるのが簡単
ちなみにurlの複数パラメータでも使われる&の扱いは面倒なので適当だけど
>>835のように&でリンク切れてるの見る限り5chも適当なのでおkってことで
そのへんの改行(<br>)と区切り(<>)考慮するとエスケープ済みのほうが扱いやすい
ただ欠点としてはログサイズが肥大する
もちろん必要最小限のエスケープでもできるけどめんどくさいので完全再現じゃないが
ログ保存時
$message = preg_replace('/\r?\n/', '<br>', htmlspecialchars($_POST['message'], ENT_QUOTES, 'UTF-8'));
出力時
$message = preg_replace(['/>>([0-9]{1,3})/', '%(https?://[^\s&]+)%'], ['<a href="#$1">>>$1</a>', '<a href="$1">$1</a>'], $message);
とかなんじゃないかなと
リンクつける仕様上一旦エスケープしたのを戻す箇所があるので
そこでXSSを成立させないよう注意してコーディングする必要がある
エスケープ済みの文字は<や"のように&がつくので
[^\s&]のとこのように&でぶったぎるのが簡単
ちなみにurlの複数パラメータでも使われる&の扱いは面倒なので適当だけど
>>835のように&でリンク切れてるの見る限り5chも適当なのでおkってことで
878デフォルトの名無しさん (ワッチョイ b6da-Cd0d)
2020/03/26(木) 22:20:23.54ID:pJp2pNNg0 >>877
詳しくありがとうございます。
5chのログの内容は最初にチェックしてたはずなのに、すっかり忘れてました。
再度確認したところ、エスケープ処理済みな上にタグまで付いてました…
てっきり出力前にエスケープするのがPHPのルールだと思ってたのですが、
まさか事前にエスケープしておくとは…
出力時のpreg_replaceも配列にすれば一回で済むのですね…
レスアンカーとリンクで分けてました
>>835のリンクについては、専ブラで見てたので気づきませんでした。
直リン避けも考慮してhttps://まで見て、後は半角英数なら置換対象に
してしまおう!…って感じで雑に考えてました。
preg_replace('/(h?ttps?:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:@&=+$,%#]+)/', '<a href="$1">$1</a>', $replaceMessage);
凄く参考になりました。
どうもです。
詳しくありがとうございます。
5chのログの内容は最初にチェックしてたはずなのに、すっかり忘れてました。
再度確認したところ、エスケープ処理済みな上にタグまで付いてました…
てっきり出力前にエスケープするのがPHPのルールだと思ってたのですが、
まさか事前にエスケープしておくとは…
出力時のpreg_replaceも配列にすれば一回で済むのですね…
レスアンカーとリンクで分けてました
>>835のリンクについては、専ブラで見てたので気づきませんでした。
直リン避けも考慮してhttps://まで見て、後は半角英数なら置換対象に
してしまおう!…って感じで雑に考えてました。
preg_replace('/(h?ttps?:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:@&=+$,%#]+)/', '<a href="$1">$1</a>', $replaceMessage);
凄く参考になりました。
どうもです。
879デフォルトの名無しさん (ワッチョイ 09da-Cd0d)
2020/03/29(日) 10:25:07.65ID:wUzzaaBN0 文字列と多次元配列の値に対して一括で処理できるメソッドで質問です。
下記メソッドで$hogeに多次元配列が渡ってきたと仮定しまして、
値が配列であれば再起処理でメソッドが再度呼び出されるそうです。
私の考えでは、再起処理で多次元配列の中の値が配列ではなかったときは、
Aの文字列の方に流れるのではと思っていたのですが、実際は@に流れるようです。
多次元配列の中の文字列にis_array()を掛けてもfalseなのですが、どういった理由で
@に流れるのでしょうか?
function test($hoge) {
// 配列の場合
if (is_array($hoge)) {
foreach ($hoge as $key => $value) {
// 再起処理
if (is_array($value)) {
test($value);
}
// @配列の中の値が配列でない場合
else {
...
}
}
return;
}
// A文字列の場合
return;
}
下記メソッドで$hogeに多次元配列が渡ってきたと仮定しまして、
値が配列であれば再起処理でメソッドが再度呼び出されるそうです。
私の考えでは、再起処理で多次元配列の中の値が配列ではなかったときは、
Aの文字列の方に流れるのではと思っていたのですが、実際は@に流れるようです。
多次元配列の中の文字列にis_array()を掛けてもfalseなのですが、どういった理由で
@に流れるのでしょうか?
function test($hoge) {
// 配列の場合
if (is_array($hoge)) {
foreach ($hoge as $key => $value) {
// 再起処理
if (is_array($value)) {
test($value);
}
// @配列の中の値が配列でない場合
else {
...
}
}
return;
}
// A文字列の場合
return;
}
880デフォルトの名無しさん (ワッチョイ b1d2-pf+t)
2020/03/29(日) 12:47:17.78ID:XdbgZgVO0 @は再帰呼び出しで、Aは再帰の終了条件だね。
配列の中に配列があったときは@が呼ばれるようになってる。
再帰を一度じっくり勉強したほうがいいよ。誤字も含めて。
配列の中に配列があったときは@が呼ばれるようになってる。
再帰を一度じっくり勉強したほうがいいよ。誤字も含めて。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 【テレビ】元NHK解説委員が指摘 「敗戦国の日本は、生意気言うなというのが中国の立場」「腕まくりは意味がない」 [冬月記者★]
- バイク事故で入院ゆたぼん、見舞金「1円」振り込みの名義に衝撃「悲しい人ですね」「こういう人がいるから…」 [muffin★]
- 【画像】消えた美人女優 上原多香子さん(42)、沖縄で目撃される [牛丼★]
