!extend::vvvvv:1000:512
!extend::vvvvv:1000:512
★スレ立て時 ↑ が3行以上になるようコピペ
PHPに関する質問スレです
前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 13
https://mevius.5ch.net/test/read.cgi/tech/1631147923/
次スレは>>980以降
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
【PHP】下らねぇ質問はここに書き込みやがれ 14
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0f97-W3aP)
2022/09/20(火) 16:46:23.39ID:Sb2Kpzh+010397 (ワッチョイ 0fbb-BCAW)
2022/10/19(水) 11:21:48.30ID:+5kcU5m20 phpで制限してるやつ思い出したんで書き込んどく
https://github.com/bcit-ci/CodeIgniter
CodeIgniter3系で各ファイルの先頭に
defined('BASEPATH') OR exit('No direct script access allowed');
があってスクリプト以外から読めないようにしてた
フォルダにも空ディレクトリ用にindex.html用意してたりして、昔のインフラ対応を一所懸命にやってた感じ
https://github.com/bcit-ci/CodeIgniter/tree/develop/application/controllers
https://github.com/bcit-ci/CodeIgniter
CodeIgniter3系で各ファイルの先頭に
defined('BASEPATH') OR exit('No direct script access allowed');
があってスクリプト以外から読めないようにしてた
フォルダにも空ディレクトリ用にindex.html用意してたりして、昔のインフラ対応を一所懸命にやってた感じ
https://github.com/bcit-ci/CodeIgniter/tree/develop/application/controllers
104デフォルトの名無しさん (オッペケ Sr0f-yNwf)
2022/10/19(水) 11:26:05.56ID:FPDvrmQDr 下手にWebhttp通そうとしないで、社内とかで相談したほうがいいと思うわ
インフラ関係させたほうが、後々責任とるハメにならないよ
インフラ関係させたほうが、後々責任とるハメにならないよ
105デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/19(水) 13:52:22.97ID:Js5Cj1j50 >>103
wikiによると2006からあるらしいけど、当時ですらその方式はナンセンスだよね。
上の階層には.htaccess置いてるし、ソフト403でいいのか?だし。
そもそもPHPではサーバーレス的な構成はほぼ無いので、諦めて普通に癒着させた方が綺麗だった気がする。
wikiによると2006からあるらしいけど、当時ですらその方式はナンセンスだよね。
上の階層には.htaccess置いてるし、ソフト403でいいのか?だし。
そもそもPHPではサーバーレス的な構成はほぼ無いので、諦めて普通に癒着させた方が綺麗だった気がする。
106デフォルトの名無しさん (ワッチョイ 0fbb-BCAW)
2022/10/19(水) 14:06:52.57ID:+5kcU5m20 >>105
んなこたぁないと思うよ
あの頃のレンサバの開放ディレクトリってフラットだったから
あと、レンサバ以外でnginxがはやりつつあったからフールプルーフでしょ
まぁ、あんまりきれいでないことは同意w
んなこたぁないと思うよ
あの頃のレンサバの開放ディレクトリってフラットだったから
あと、レンサバ以外でnginxがはやりつつあったからフールプルーフでしょ
まぁ、あんまりきれいでないことは同意w
107デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/19(水) 15:41:31.30ID:Js5Cj1j50 >>106
当時の仕様は知らんが、今と変わりなければ、
nginxでは.htaccessは使えないし、ディレクトリインデックスはデフォでオフだから、まるで意味無いよ。
> If a request ends with a slash, NGINX treats it as a request for a directory and tries to find an index file in the directory. The index directive defines the index file’s name (the default value is index.html). To continue with the example, if the request URI is /images/some/path/, NGINX delivers the file /www/data/images/some/path/index.html if it exists. If it does not, NGINX returns HTTP code 404 (Not Found) by default. To configure NGINX to return an automatically generated directory listing instead, include the on parameter to the autoindex directive:
> https://docs.nginx.com/nginx/admin-guide/web-server/serving-static-content/#:~:text=The%20index%20directive%20defines%20the%20index%20file%E2%80%99s%20name,returns%20HTTP%20code%20404%20%28Not%20Found%29%20by%20default.
フールプルーフを目指すなら、Apacheとnginxの両方の設定ファイルもちゃんと用意しておけばいいだけ。
.htaccess置くのなら、Options でディレクトリインデックスも切れるはずだし、グダグダすぎる。
まあ歴史は長いようだから、大抵何らかの理由があるものではあるけど、
見た目、単なる技量不足(鯖を知らないだけ)で、初心者的なコーディングをしてしまったように見える。
そうでなければ、鯖がグダグダ過ぎて設定してもまともに動かなかったのでPHP側で対応した、てなところだろう。
当時の仕様は知らんが、今と変わりなければ、
nginxでは.htaccessは使えないし、ディレクトリインデックスはデフォでオフだから、まるで意味無いよ。
> If a request ends with a slash, NGINX treats it as a request for a directory and tries to find an index file in the directory. The index directive defines the index file’s name (the default value is index.html). To continue with the example, if the request URI is /images/some/path/, NGINX delivers the file /www/data/images/some/path/index.html if it exists. If it does not, NGINX returns HTTP code 404 (Not Found) by default. To configure NGINX to return an automatically generated directory listing instead, include the on parameter to the autoindex directive:
> https://docs.nginx.com/nginx/admin-guide/web-server/serving-static-content/#:~:text=The%20index%20directive%20defines%20the%20index%20file%E2%80%99s%20name,returns%20HTTP%20code%20404%20%28Not%20Found%29%20by%20default.
フールプルーフを目指すなら、Apacheとnginxの両方の設定ファイルもちゃんと用意しておけばいいだけ。
.htaccess置くのなら、Options でディレクトリインデックスも切れるはずだし、グダグダすぎる。
まあ歴史は長いようだから、大抵何らかの理由があるものではあるけど、
見た目、単なる技量不足(鯖を知らないだけ)で、初心者的なコーディングをしてしまったように見える。
そうでなければ、鯖がグダグダ過ぎて設定してもまともに動かなかったのでPHP側で対応した、てなところだろう。
108デフォルトの名無しさん (ワッチョイ 0fbb-BCAW)
2022/10/19(水) 17:33:25.58ID:+5kcU5m20 >>107
基本古いレンサバ仕様で動くように作ってあったのよ
で、その頃ディレクトリの中丸見えじゃん問題ってのがそこそこ話題にされてたんで、index.htmlを用意するってのはそれ対策かと
nginxの設定テンプレートは、そこいらの野良blogとか記憶が確かならnginxの公式でも配布してたと思う
ただ、野良の方はかなり程度が低いのも多かったから、できる範囲で対応をとってたって感じかなぁ(多分w)
exit()がこっちの対策だね
なんせcomposerインストールとかも野良な時代だからねぇ
色々大変だった
ところで、apache/nginx用の設定ファイルを同梱ってありえるの?
.htaccessを突っ込んでるのは見るけど、設定ファイルを配布してるのは見たことないんだけど
基本古いレンサバ仕様で動くように作ってあったのよ
で、その頃ディレクトリの中丸見えじゃん問題ってのがそこそこ話題にされてたんで、index.htmlを用意するってのはそれ対策かと
nginxの設定テンプレートは、そこいらの野良blogとか記憶が確かならnginxの公式でも配布してたと思う
ただ、野良の方はかなり程度が低いのも多かったから、できる範囲で対応をとってたって感じかなぁ(多分w)
exit()がこっちの対策だね
なんせcomposerインストールとかも野良な時代だからねぇ
色々大変だった
ところで、apache/nginx用の設定ファイルを同梱ってありえるの?
.htaccessを突っ込んでるのは見るけど、設定ファイルを配布してるのは見たことないんだけど
109デフォルトの名無しさん (ワッチョイ cb09-w/5w)
2022/10/19(水) 19:27:01.72ID:vYLhahcn0 PHP技術者認定試験って難しい?
110デフォルトの名無しさん (ワッチョイ 0f97-ZPbQ)
2022/10/19(水) 19:35:32.95ID:yzq3WDoT0 ありがとうございます。
まさか盛り上がる案件だとは。
個人で借りたレンタルサーバーの研究サイトなのです。
心配させてスイマセン。
htaccessで整えてみます。
まさか盛り上がる案件だとは。
個人で借りたレンタルサーバーの研究サイトなのです。
心配させてスイマセン。
htaccessで整えてみます。
111デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/19(水) 20:27:01.24ID:Js5Cj1j50 >>108
> ところで、apache/nginx用の設定ファイルを同梱ってありえるの?
知らん。けど、技術的に出来ない理由はないだろ。
もっとも、nginxのは.htaccessから変換して作るものらしいし、.htaccessがあれば何とかなるんだろう。
(と思って公式のrewriteちょっと見てみたが、手動ならさておき、自動では厳しいなこれは)
レンサバ+PHPにはnginxは向かなかったのかもね。
上げたら見えるほうが分かりやすいし、
大量の静的ファイルを捌くだけの元々の鯖の使い方だとその方がいいし、
apacheのデフォがそうだからnginxレンサバもそうしたら、
鯖単位でしか設定出来ないのだから丸見えになってしまう。
無理にapacheに合わせず、nginx本来の設定で使えばよかっただけだね。
つってもnginxレンサバがapacheに合わせたのは商業的な理由だろうし、
結果、その歪みのしわ寄せがフレームワーク側に残ってる、間抜けだがありがちな状況に見えるよ。
しかし今も更新してるんだから直せばいいのにとも思うが。コントリビュートするならどうぞ。
最上位の階層の.htaccessに一行、
Options -Indexes
と書けばそれ以下のソフト403なindex.htmlは全部削除出来るはず。以下参考
> https://www.javadrive.jp/apache/ini/index24.html
> https://httpd.apache.org/docs/2.4/ja/mod/core.html#options
> ところで、apache/nginx用の設定ファイルを同梱ってありえるの?
知らん。けど、技術的に出来ない理由はないだろ。
もっとも、nginxのは.htaccessから変換して作るものらしいし、.htaccessがあれば何とかなるんだろう。
(と思って公式のrewriteちょっと見てみたが、手動ならさておき、自動では厳しいなこれは)
レンサバ+PHPにはnginxは向かなかったのかもね。
上げたら見えるほうが分かりやすいし、
大量の静的ファイルを捌くだけの元々の鯖の使い方だとその方がいいし、
apacheのデフォがそうだからnginxレンサバもそうしたら、
鯖単位でしか設定出来ないのだから丸見えになってしまう。
無理にapacheに合わせず、nginx本来の設定で使えばよかっただけだね。
つってもnginxレンサバがapacheに合わせたのは商業的な理由だろうし、
結果、その歪みのしわ寄せがフレームワーク側に残ってる、間抜けだがありがちな状況に見えるよ。
しかし今も更新してるんだから直せばいいのにとも思うが。コントリビュートするならどうぞ。
最上位の階層の.htaccessに一行、
Options -Indexes
と書けばそれ以下のソフト403なindex.htmlは全部削除出来るはず。以下参考
> https://www.javadrive.jp/apache/ini/index24.html
> https://httpd.apache.org/docs/2.4/ja/mod/core.html#options
112デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/19(水) 20:40:24.15ID:Js5Cj1j50 >>110
個人で研究するなら好き勝手にやるべきだが、一応
> 一般的に、サーバの主設定ファイルにアクセスできない場合を除いて、 .htaccess ファイルの使用は極力避けてください。
> 世の中には、例えば、ユーザ認証は常に .htaccess ファイルで 行なわなければならない、という誤解が広まっていますが、
> まったくそんなことは ありません。ユーザ認証の設定はサーバ主設定ファイルに書くことができ、 実際、その方がより良い設定方法です。
> https://httpd.apache.org/docs/2.4/ja/howto/htaccess.html
まあサーバの設定ファイルもほぼ同じ書式なのでhtaccessの書き方を確認するのも悪くはないが、
そもそもhtaccessなんて無くても動くように作るべきだよ。
(それがCodeIgniterでやってる事だと言われればそうなのだが)
個人で研究するなら好き勝手にやるべきだが、一応
> 一般的に、サーバの主設定ファイルにアクセスできない場合を除いて、 .htaccess ファイルの使用は極力避けてください。
> 世の中には、例えば、ユーザ認証は常に .htaccess ファイルで 行なわなければならない、という誤解が広まっていますが、
> まったくそんなことは ありません。ユーザ認証の設定はサーバ主設定ファイルに書くことができ、 実際、その方がより良い設定方法です。
> https://httpd.apache.org/docs/2.4/ja/howto/htaccess.html
まあサーバの設定ファイルもほぼ同じ書式なのでhtaccessの書き方を確認するのも悪くはないが、
そもそもhtaccessなんて無くても動くように作るべきだよ。
(それがCodeIgniterでやってる事だと言われればそうなのだが)
113デフォルトの名無しさん (ワッチョイ 0fbb-BCAW)
2022/10/19(水) 20:49:06.23ID:+5kcU5m20 >>111
> 知らん
まぁそうやんな。俺も知らんw
ちょっと誤解させたかもしれないけど、nginx使ってたのは自前サバとかVPSとかで、レンサバのnginxは無かったと思う
余談だけど、CodeIgniter4だとどうなってるか見てみた。
ちゃんとcomposer install にも対応してて、随分モダンになってたわ(当たりまえだけど)
でも、index.htmlは残っててちょっと笑ったw
久しぶりに週末にでも使ってみようかと思う
> 知らん
まぁそうやんな。俺も知らんw
ちょっと誤解させたかもしれないけど、nginx使ってたのは自前サバとかVPSとかで、レンサバのnginxは無かったと思う
余談だけど、CodeIgniter4だとどうなってるか見てみた。
ちゃんとcomposer install にも対応してて、随分モダンになってたわ(当たりまえだけど)
でも、index.htmlは残っててちょっと笑ったw
久しぶりに週末にでも使ってみようかと思う
114デフォルトの名無しさん (ワッチョイ 0fbb-BCAW)
2022/10/19(水) 21:00:01.66ID:+5kcU5m20115デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/19(水) 22:21:11.99ID:Js5Cj1j50 >>113
> nginx使ってたのは自前サバとかVPSとかで、レンサバのnginxは無かったと思う
ならセルフ開示じゃないですか~。
それなら、nginx登場の2004はxhrがajaxとして再発見される2005より前なので、
nginxは当初は(wiki読む限り今もらしいが)静的ファイルの高速配信向けで、
おそらくデフォでApacheと同じくディレクトリインデックス有りで、
しかも.htaccessが効かないから事故りまくったのだろう。
んで、動的サイトの増加に伴い、デフォでディレクトリインデックス無しに仕様変更したのではないかと。
>>114
まあ参考にすべきは最近最高に使われてるソースであって、PHPならLaravelなのは確か。
ただ俺はWeb系でもないのでさっぱり知らないし、実際どう配置して使うのかも知らないが、publicには転がってる。
https://github.com/laravel/laravel/blob/9.x/public/.htaccess
robots.txtもあるから、おそらく外から見えるディレクトリなのだろうとは思う。
ただ、PHPの場合、構造的に最低限のrewriteはサーバーにやって貰うしかない。
他言語みたいにURL文字列を引数として関数コールして貰えれば鯖と完全分離出来るが、
そうではないので、諦めて片足突っ込んだ状態で行くのが一番ましだと思うよ。
Laravelは Options -MultiViews -Indexes と rewrite だけだから、最小限に留めてる。これが多分ベスト。
CodeIgniterはこのOptionsの一行をケチった結果index.htmlが大量に必要になってるわけだが、
htaccess見たところアク禁指定だけでrewriteが無いので、rewriteしないつもりなら鯖と完全分離出来る。
が、現実的にrewrite無しの動的鯖って厳しい気が。
とはいえ、ユーザーに直接クエリ文字列を書いてもらえるのなら有りなので、フレームワークとしてはこれでいいのかも?
> nginx使ってたのは自前サバとかVPSとかで、レンサバのnginxは無かったと思う
ならセルフ開示じゃないですか~。
それなら、nginx登場の2004はxhrがajaxとして再発見される2005より前なので、
nginxは当初は(wiki読む限り今もらしいが)静的ファイルの高速配信向けで、
おそらくデフォでApacheと同じくディレクトリインデックス有りで、
しかも.htaccessが効かないから事故りまくったのだろう。
んで、動的サイトの増加に伴い、デフォでディレクトリインデックス無しに仕様変更したのではないかと。
>>114
まあ参考にすべきは最近最高に使われてるソースであって、PHPならLaravelなのは確か。
ただ俺はWeb系でもないのでさっぱり知らないし、実際どう配置して使うのかも知らないが、publicには転がってる。
https://github.com/laravel/laravel/blob/9.x/public/.htaccess
robots.txtもあるから、おそらく外から見えるディレクトリなのだろうとは思う。
ただ、PHPの場合、構造的に最低限のrewriteはサーバーにやって貰うしかない。
他言語みたいにURL文字列を引数として関数コールして貰えれば鯖と完全分離出来るが、
そうではないので、諦めて片足突っ込んだ状態で行くのが一番ましだと思うよ。
Laravelは Options -MultiViews -Indexes と rewrite だけだから、最小限に留めてる。これが多分ベスト。
CodeIgniterはこのOptionsの一行をケチった結果index.htmlが大量に必要になってるわけだが、
htaccess見たところアク禁指定だけでrewriteが無いので、rewriteしないつもりなら鯖と完全分離出来る。
が、現実的にrewrite無しの動的鯖って厳しい気が。
とはいえ、ユーザーに直接クエリ文字列を書いてもらえるのなら有りなので、フレームワークとしてはこれでいいのかも?
116デフォルトの名無しさん (ワッチョイ 9f63-y3r4)
2022/10/19(水) 22:26:04.73ID:o5dUZxuy0 レンサバって、ユーザーにて医今日してくれる場所は、ユーザーのHOMEディレクトリで、
その配下にpublic_htmlがあるんだよね?
その隣にディレクトリ作れば、Webからはアクセス出来ないでしょう
その配下にpublic_htmlがあるんだよね?
その隣にディレクトリ作れば、Webからはアクセス出来ないでしょう
117デフォルトの名無しさん (ワッチョイ 9f63-y3r4)
2022/10/19(水) 22:26:46.26ID:o5dUZxuy0 × て医今日
○ 提供
なんて変換だよ・・・
○ 提供
なんて変換だよ・・・
118デフォルトの名無しさん (ワッチョイ 0f97-ZPbQ)
2022/10/20(木) 00:52:50.25ID:JdSscN+80 >116
おっしゃるとおりです。
ですが、いろいろと理由がありドキュメントルート配下に、
ブラウザからアクセスさせないディレクトリを作りたいと思ったのですが。
それが、こんなにイレギュラーなことかとは思わなかったです。。
ベーシック認証やIP制限などで、htaccessは何度か弄ったことはありますが、
そもそもこのファイルなんぞやとは思っていました。
htaccessとかの学習は、サーバー関連の学習で得られますでしょうか?
Linuxとかの基礎本とか読んでみたのですが、コレジャナイ感がしてます。
「htaccessとは?」という基礎レベルから理解したいのですが。。
おっしゃるとおりです。
ですが、いろいろと理由がありドキュメントルート配下に、
ブラウザからアクセスさせないディレクトリを作りたいと思ったのですが。
それが、こんなにイレギュラーなことかとは思わなかったです。。
ベーシック認証やIP制限などで、htaccessは何度か弄ったことはありますが、
そもそもこのファイルなんぞやとは思っていました。
htaccessとかの学習は、サーバー関連の学習で得られますでしょうか?
Linuxとかの基礎本とか読んでみたのですが、コレジャナイ感がしてます。
「htaccessとは?」という基礎レベルから理解したいのですが。。
119デフォルトの名無しさん (ワッチョイ 9f7c-y3r4)
2022/10/20(木) 01:50:07.83ID:kET4P9rE0 今時レンタルサーバーでPHPを動かすという需要がWPぐらいしか無い気がするんだよね
だからLaravelみたいなのを使う場合はレンタルサーバーなんかで動かせられないし
(データベースなども必要だし)
AWSの無料枠とかでやった方が良いのでは無いかと思うのだけどね
さくらのクラウドとか安いサービスもあるし、選択肢は結構ある筈だけどね
だからLaravelみたいなのを使う場合はレンタルサーバーなんかで動かせられないし
(データベースなども必要だし)
AWSの無料枠とかでやった方が良いのでは無いかと思うのだけどね
さくらのクラウドとか安いサービスもあるし、選択肢は結構ある筈だけどね
120デフォルトの名無しさん (オッペケ Sr0f-s5qW)
2022/10/20(木) 08:21:45.81ID:MwzDpM35r AWSは無料枠にハメられて高額になるからレンサバ使えるならレンサバがコスト的にいい
121デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/20(木) 08:36:09.51ID:Y6zWMSoX0 >>118
言うほどイレギュラーでもない。
ただ、レンタルサーバーでもドキュメントルートは変更出来るだろうから、ディレクトリ作って下にずらせばいいだけではある。
htaccessは知っておけばいいものでわざわざ学習する物ではない。
とりあえず公式全部読めば何となく分かるだろうし、その程度でいい。1~2日程度。(8~16時間程度)
それでも意味不明ならググれば何とかなる。
https://httpd.apache.org/docs/2.4/ja/
https://httpd.apache.org/docs/2.4/ja/howto/htaccess.html
機能一覧なら以下。
https://httpd.apache.org/docs/2.4/ja/mod/quickreference.html
逆に言えばここに挙げられていることしかできないから、この中にやりたい事がなければhtaccessでは実現出来ない。
見れば分かるがサーバーの設定であり、PHP的に必要な物はほぼ無い。(当たり前だが)
ぶっちゃけ、今の君の理解でも大して問題ないと思う。
ただ、その場合、例えばCodeIgniterみたいに(あれは意図的だと思うけど)、
それhtaccessに書けば一行で済むよ?みたいな事になる可能性があるだけ。とはいえ、それでも問題ないのも事実。
言うほどイレギュラーでもない。
ただ、レンタルサーバーでもドキュメントルートは変更出来るだろうから、ディレクトリ作って下にずらせばいいだけではある。
htaccessは知っておけばいいものでわざわざ学習する物ではない。
とりあえず公式全部読めば何となく分かるだろうし、その程度でいい。1~2日程度。(8~16時間程度)
それでも意味不明ならググれば何とかなる。
https://httpd.apache.org/docs/2.4/ja/
https://httpd.apache.org/docs/2.4/ja/howto/htaccess.html
機能一覧なら以下。
https://httpd.apache.org/docs/2.4/ja/mod/quickreference.html
逆に言えばここに挙げられていることしかできないから、この中にやりたい事がなければhtaccessでは実現出来ない。
見れば分かるがサーバーの設定であり、PHP的に必要な物はほぼ無い。(当たり前だが)
ぶっちゃけ、今の君の理解でも大して問題ないと思う。
ただ、その場合、例えばCodeIgniterみたいに(あれは意図的だと思うけど)、
それhtaccessに書けば一行で済むよ?みたいな事になる可能性があるだけ。とはいえ、それでも問題ないのも事実。
122デフォルトの名無しさん (ワッチョイ eb7b-1jHB)
2022/10/20(木) 08:40:25.19ID:Y6zWMSoX0 >>119
今時無料レンタルサーバーでもMySQL使えるよ。
https://www.star.ne.jp/free/functions.php
もっとも、初心者がPHPをわざわざ書く必要は無くなってきてて、最終的にWPかNoCodeになる気はするが。
今時無料レンタルサーバーでもMySQL使えるよ。
https://www.star.ne.jp/free/functions.php
もっとも、初心者がPHPをわざわざ書く必要は無くなってきてて、最終的にWPかNoCodeになる気はするが。
123デフォルトの名無しさん (ワッチョイ 0ff8-NQ2R)
2022/10/20(木) 17:37:46.33ID:CBxQXJka0 laravelインストールできなかったり、
MySQLがwindow関数使えないVerだったり
半端なレンサバのほうが何故か多い印象
なんでMySQLは5止めが多いんだ?
MySQLがwindow関数使えないVerだったり
半端なレンサバのほうが何故か多い印象
なんでMySQLは5止めが多いんだ?
124デフォルトの名無しさん (JP 0H4f-2/eE)
2022/10/20(木) 18:53:20.55ID:zfdkX5sTH レンサバは極端な話WPだけ出来ればいいしって設計が多い
さくらとかも
さくらとかも
125デフォルトの名無しさん (ワッチョイ d193-++Yg)
2022/10/25(火) 13:00:09.47ID:S5n6e8jb0 PHPやりはじめてます。
ソースを修正するたびにサーバーにアップロードしてWebで試しているんですが
アップロードを何回も連続で繰り返してるとプロバイダから何か異常なアクセスしていると思われて
突然使用禁止とかになってしまうこととかはないんでしょうか?
ソースを修正するたびにサーバーにアップロードしてWebで試しているんですが
アップロードを何回も連続で繰り返してるとプロバイダから何か異常なアクセスしていると思われて
突然使用禁止とかになってしまうこととかはないんでしょうか?
126デフォルトの名無しさん (ワッチョイ 6ebb-7TT9)
2022/10/25(火) 13:07:11.70ID:SJXXwtKb0 ないです
127デフォルトの名無しさん (ワッチョイ 0549-yrTQ)
2022/10/25(火) 14:52:36.86ID:7auWfLY00 めっちゃ高速に大量に頻繁にbot並にやるなら思われるかもね
128デフォルトの名無しさん (ワッチョイ 8263-UuoP)
2022/10/25(火) 15:49:08.68ID:Em+AyBVc0 アップロードの時は回線速度超える事はないし
よっぽどアクセス集中していない限り、処理が破綻することはないと思う
使用禁止にするかはサーバーの利用規約と管理者の裁量
よっぽどアクセス集中していない限り、処理が破綻することはないと思う
使用禁止にするかはサーバーの利用規約と管理者の裁量
129デフォルトの名無しさん (ワッチョイ 427c-UuoP)
2022/10/25(火) 20:40:23.57ID:nojkBjJF0 何故ローカルで開発環境を作ってそこで試さないのか・・・
130デフォルトの名無しさん (ワッチョイ 21da-80Lh)
2022/10/26(水) 09:34:23.26ID:coiJgjfP0 サーバの構築はPHPの学習の本質ではないからですね
131デフォルトの名無しさん (ワッチョイ 3901-80Lh)
2022/10/26(水) 09:36:02.91ID:gnI45ZOc0132デフォルトの名無しさん (ワッチョイ 21da-80Lh)
2022/10/26(水) 10:08:24.28ID:coiJgjfP0 >>131
xdebugを使えばリモートでトレースデバッグできるのでお勧めですね
xdebugを使えばリモートでトレースデバッグできるのでお勧めですね
133デフォルトの名無しさん (ワッチョイ 427c-UuoP)
2022/10/26(水) 10:50:27.55ID:s5FmrwgX0 >>130
いやいやwwww
開発環境を作れないような奴は開発する以前の問題
個人でやるだけなら別に好きにやればいいけど
仕事で開発環境も作れませんは流石に無いわw
xamppとかサルでも出来るようなのもあるし、docker等も先に学習しておいた方がいい
いやいやwwww
開発環境を作れないような奴は開発する以前の問題
個人でやるだけなら別に好きにやればいいけど
仕事で開発環境も作れませんは流石に無いわw
xamppとかサルでも出来るようなのもあるし、docker等も先に学習しておいた方がいい
134デフォルトの名無しさん (ワッチョイ 8263-UuoP)
2022/10/26(水) 10:59:19.37ID:b6oRD2LO0 学習するなら、本番と(なるべく)同じ環境でやるのが良いと思う
135デフォルトの名無しさん (ワッチョイ eef8-B2ja)
2022/10/26(水) 15:45:27.26ID:NvEAaUGj0 APIの接続制限してるのだと実験しにくい
レンサバのIPアドレスは登録してるけど、
ローカルサバからAPIが使えなくて
こゆときどうしてる?
相手先にローカルサバにも解放してもらう?
レンサバのIPアドレスは登録してるけど、
ローカルサバからAPIが使えなくて
こゆときどうしてる?
相手先にローカルサバにも解放してもらう?
136デフォルトの名無しさん (ワッチョイ 71ac-yrTQ)
2022/10/27(木) 00:39:49.92ID:vwkoq2WA0 日本語でおけ
137デフォルトの名無しさん (ワッチョイ 427c-UuoP)
2022/10/27(木) 01:29:49.29ID:rsMc68LB0 AというサーバーのAPIを使いたいけど、Bのレンタルサーバーからのアクセスは許可しているが
ローカル(自宅か会社?)のIPからは許可されてないから使えないって事?
どっちにしてもPHP全く関係ないけどw
ローカル(自宅か会社?)のIPからは許可されてないから使えないって事?
どっちにしてもPHP全く関係ないけどw
138デフォルトの名無しさん (ワッチョイ f99a-NpS5)
2022/10/31(月) 19:22:50.72ID:4ZX07akh0 PHPのSQLのサンプルで次のようなデータの登録と読み出しはうまくいきました。
DB書き込み送信側
$stmt=$pdo->query('CREATE TABLE test_table (id text, name text)');
$stmt=$pdo->query("INSERT INTO test_table (id, name) VALUES ('abc', 'def')");
DB読み込み受信側
$stmt=$pdo->query('OPEN test_table (id text, name text)');
$result_rows = $pdo->query('SELECT * FROM test_table');
foreach ( $result_rows as $row ) {
echo "id: {$row['id']}"."<br>";
echo "name: {$row['name']}"."<br>";
}
結果表示:abc def
この項目名idや nameを別の文字にするとうまく機能しなくなります。
idや nameが必須項目なのかと思い、3つ目に独自の名前の項目を追加してもだめでした。
この項目名は決められた名前しか使えないのでしょうか?
独自の名前を追加するにはどうすればいいのでしょうか?
DB書き込み送信側
$stmt=$pdo->query('CREATE TABLE test_table (id text, name text)');
$stmt=$pdo->query("INSERT INTO test_table (id, name) VALUES ('abc', 'def')");
DB読み込み受信側
$stmt=$pdo->query('OPEN test_table (id text, name text)');
$result_rows = $pdo->query('SELECT * FROM test_table');
foreach ( $result_rows as $row ) {
echo "id: {$row['id']}"."<br>";
echo "name: {$row['name']}"."<br>";
}
結果表示:abc def
この項目名idや nameを別の文字にするとうまく機能しなくなります。
idや nameが必須項目なのかと思い、3つ目に独自の名前の項目を追加してもだめでした。
この項目名は決められた名前しか使えないのでしょうか?
独自の名前を追加するにはどうすればいいのでしょうか?
139デフォルトの名無しさん (ワッチョイ 937c-HLP5)
2022/10/31(月) 19:41:02.63ID:CaQ/+DOQ0 PHP以前にSQLを理解しているか?
mysql workbenchなどでSQLを入力してどんな挙動をするかを先に勉強した方が良いのでは?
mysql workbenchなどでSQLを入力してどんな挙動をするかを先に勉強した方が良いのでは?
140デフォルトの名無しさん (ワッチョイ 1361-4kdC)
2022/10/31(月) 21:26:35.07ID:DaaCK8GW0 >>138
同じ名前で再度CREATEしてもテーブル再作成されたりしないのよ?
同じ名前で再度CREATEしてもテーブル再作成されたりしないのよ?
141デフォルトの名無しさん (ワッチョイ f99a-NpS5)
2022/10/31(月) 21:48:21.38ID:4ZX07akh0 そこは書くの省いてますが毎回テーブル消去しての実行になってます
142デフォルトの名無しさん (ワッチョイ 0902-Ha3M)
2022/10/31(月) 21:53:29.34ID:h9jqxmjM0 何で毎回テーブル消すのかが分からん
143デフォルトの名無しさん (ワッチョイ 1302-ee5o)
2022/10/31(月) 23:20:50.12ID:bH7L5hyf0 何をやったのか詳しく書いた方がいいと思う
長くなってもかまわないから
エラーメッセージも
情報が少なすぎて何がなんだかわからない
teratail とかの質問のフォーマットが参考に
なるかもしれない
長くなってもかまわないから
エラーメッセージも
情報が少なすぎて何がなんだかわからない
teratail とかの質問のフォーマットが参考に
なるかもしれない
144デフォルトの名無しさん (ワッチョイ 8bbb-/OGx)
2022/10/31(月) 23:26:53.75ID:KoRc+sfH0 OPENって初めてみたわ
コレってDB何?
コレってDB何?
145デフォルトの名無しさん (ブーイモ MM33-gcVw)
2022/11/01(火) 14:46:59.98ID:CRXHeHIYM >>144
mysqlかpostgresqlだと思う
mysqlかpostgresqlだと思う
146デフォルトの名無しさん (ワッチョイ 1363-HLP5)
2022/11/01(火) 15:42:59.29ID:hGXBrabD0 OPENと言うステートメントはある事はあるが、カーソル操作だな
>>138の記述は変だと思う
>>138の記述は変だと思う
147デフォルトの名無しさん (ワッチョイ f934-NpS5)
2022/11/03(木) 22:09:25.88ID:xQnCuP5H0 質問
Webのurl下のファイルって表面上見えなくてもある方法でダウンロードしようと思えばできますよね?
ということはPHPのソースはまんま見られてしまうのでしょうか?
見られると簡単に解析されていいように弄られてしまう可能性も高いんでしょうか?
Webのurl下のファイルって表面上見えなくてもある方法でダウンロードしようと思えばできますよね?
ということはPHPのソースはまんま見られてしまうのでしょうか?
見られると簡単に解析されていいように弄られてしまう可能性も高いんでしょうか?
148デフォルトの名無しさん (ワッチョイ 3909-DL5s)
2022/11/03(木) 22:29:30.25ID:ROsFLORr0 >>147
できません
できません
149デフォルトの名無しさん (ワッチョイ 8bbb-/OGx)
2022/11/03(木) 22:53:58.13ID:WOBTUDvw0 >>147
Webサーバの設定ミスで見えてしまうケースはあります
また、外部入力の取り扱いが不適切なサイトで意図しないソースをダウンロードしたり表示したりすることが可能となるケースもあります
手法はいくつもありますがディレクトリトラバーサルを使用した攻撃は観測しやすいので調査してみると良いでしょう
ソースを見られると解析は可能ですが、解析されても問題がないようにするためのナレッジも色々あるので調べてみると良いです
Webサーバの設定ミスで見えてしまうケースはあります
また、外部入力の取り扱いが不適切なサイトで意図しないソースをダウンロードしたり表示したりすることが可能となるケースもあります
手法はいくつもありますがディレクトリトラバーサルを使用した攻撃は観測しやすいので調査してみると良いでしょう
ソースを見られると解析は可能ですが、解析されても問題がないようにするためのナレッジも色々あるので調べてみると良いです
150デフォルトの名無しさん (ワッチョイ a95f-eCT5)
2022/11/03(木) 23:17:12.77ID:RxtPrKwp0 Web APIのアクセストークンとかどこに置くのが良いんだろ
151デフォルトの名無しさん (ワッチョイ fbe7-Tk+f)
2022/11/04(金) 10:03:40.02ID:fjW+y4zq0 >>150
index.php と同じところにおいてください
index.php と同じところにおいてください
152デフォルトの名無しさん (ワッチョイ 8bbb-/OGx)
2022/11/04(金) 10:34:34.64ID:7HgZbeW40 >>150
cookieとlocalstorageのどちらか?って議論なら、JWTの議論が参考になると思う
phperなら徳丸さんの日記あたりを漁るとなんかあった気がする
ただ、時期によって推奨が変わってきてるんで、直近の議論じゃなければ新しい議論を探したほうがいい
cookieとlocalstorageのどちらか?って議論なら、JWTの議論が参考になると思う
phperなら徳丸さんの日記あたりを漁るとなんかあった気がする
ただ、時期によって推奨が変わってきてるんで、直近の議論じゃなければ新しい議論を探したほうがいい
153デフォルトの名無しさん (ワッチョイ 1363-HLP5)
2022/11/04(金) 10:39:08.02ID:QCeBmW6M0 議論が変わると言うことは、まだ枯れてないんだろうな
154デフォルトの名無しさん (ワッチョイ 8bbb-/OGx)
2022/11/04(金) 10:53:31.17ID:7HgZbeW40 結論が時期によって変わるのは、ブラウザの進化と各種Webフレームワークのデフォルト状態がその時々で変化しているせいですね
ただ、どの時期でも大きく変わらないのは「実態としてはどちらも大差ない」「XSSがあればどっちも危険」ってとこです
なので、その時々の推奨と言っても僅差ですね
ただ、どの時期でも大きく変わらないのは「実態としてはどちらも大差ない」「XSSがあればどっちも危険」ってとこです
なので、その時々の推奨と言っても僅差ですね
155デフォルトの名無しさん (JP 0H8d-eCT5)
2022/11/04(金) 13:02:42.65ID:1sxu7itbH 適当にまとめちゃうと「どこでも危険なのは変わりないから大して変わらない」で落ち着くのかな
156デフォルトの名無しさん (ワッチョイ 0b97-ofdD)
2022/11/04(金) 18:23:18.46ID:mo/2hjrh0 fopenのモードの語源
r はread
wはwirte
で。。
aは、append? add? どっちですか。
r はread
wはwirte
で。。
aは、append? add? どっちですか。
157デフォルトの名無しさん (ワッチョイ 937c-Tk+f)
2022/11/04(金) 20:43:22.06ID:mATgUcp20 appendかと(追記モードみたいな意味合いだし)
158デフォルトの名無しさん (ワッチョイ 368c-Cw2/)
2022/11/08(火) 07:48:23.75ID:c6RTZORh0 jpegの画像を読み込んで、画面全体を50%の透明度にしてpngで保存するにはどうしたらいいですか?
imagecopymergeで完全に透明な画像を50%で合成しても無理でした。
imagecopymergeで完全に透明な画像を50%で合成しても無理でした。
159デフォルトの名無しさん (ワッチョイ b19f-Ee8s)
2022/11/08(火) 11:12:12.94ID:6dXM39fN0 www.php.net/manual/ja/book.imagick.php
160デフォルトの名無しさん (ワッチョイ 368c-Cw2/)
2022/11/08(火) 17:14:26.31ID:c6ryzee70 自己解決しました
imagecoloratとimagesetpixelで1pxずつコピーすればよし
imagecoloratとimagesetpixelで1pxずつコピーすればよし
161デフォルトの名無しさん (テテンテンテン MM96-8gy9)
2022/11/09(水) 17:37:16.27ID:jregjzg7M PHPて複数の人が同時に同じPHPのアドレスにアクセスするとやっぱり
そのPHPが同時に実行されるんですかね?
同時であっても問題が起こらないように記述しとかないといけないんですかね?ファイルアクセスとか
特に気にしなくても問題になるようなことはほとんどないんでしょうか?
そのPHPが同時に実行されるんですかね?
同時であっても問題が起こらないように記述しとかないといけないんですかね?ファイルアクセスとか
特に気にしなくても問題になるようなことはほとんどないんでしょうか?
162デフォルトの名無しさん (ワッチョイ 9263-zlm6)
2022/11/09(水) 18:12:02.46ID:v9YRsbRp0 問題が起きるかどうかはロジック次第
ネットショップで残りあと1つの商品を
複数の客が取り合ったときどうなるかな
ネットショップで残りあと1つの商品を
複数の客が取り合ったときどうなるかな
163デフォルトの名無しさん (ワッチョイ 9e97-Cw2/)
2022/11/09(水) 22:21:42.93ID:B8ttDfTq0 複数の<input>タグがあり、その<input>要素が何番目か、またその<input>の状態のデータ(flag)を送りたい。
<input>で送れる情報は、name属性が$_POST[]のKeyとなり、データ自体はvalue属性となるが。
これでは、送れる情報は一つだけになってしまう。
inputのtypeはボタンを予定していて、valueの値に対して背景色などの装飾を設定したい。flagの状態はデータベースで管理したいと思っています。
ボタンを押したとき、そのボタンは@何番目の<input>か?そのボタンはAどんなステータスなのか?
を送る一般的な方法ありますか?
<input>で送れる情報は、name属性が$_POST[]のKeyとなり、データ自体はvalue属性となるが。
これでは、送れる情報は一つだけになってしまう。
inputのtypeはボタンを予定していて、valueの値に対して背景色などの装飾を設定したい。flagの状態はデータベースで管理したいと思っています。
ボタンを押したとき、そのボタンは@何番目の<input>か?そのボタンはAどんなステータスなのか?
を送る一般的な方法ありますか?
164デフォルトの名無しさん (ワッチョイ 527c-zlm6)
2022/11/09(水) 23:19:53.18ID:N3jhnMoZ0 ん?別にnameを被らないようにすればいいだけでは?
165デフォルトの名無しさん (ワッチョイ 515f-2wsz)
2022/11/09(水) 23:25:54.31ID:qkSO7igA0 nameって被って良いんだっけ?
166デフォルトの名無しさん (ワッチョイ 9263-zlm6)
2022/11/09(水) 23:26:13.49ID:v9YRsbRp0 ボタンのステータスって押されてるかどうかなの?
複数ボタンがあって、それをマウスで選択し同時に押して、
さらにサブミットする訳かな?
複数ボタンがあって、それをマウスで選択し同時に押して、
さらにサブミットする訳かな?
167デフォルトの名無しさん (ワッチョイ 79ac-pJTy)
2022/11/10(木) 00:03:46.62ID:OiyyiqKZ0 もうJavaScriptでやればいいじゃない
168デフォルトの名無しさん (ワッチョイ 9e97-Cw2/)
2022/11/10(木) 02:59:06.05ID:9rsfrZ3t0169デフォルトの名無しさん (ワッチョイ b161-Rq8s)
2022/11/10(木) 03:12:39.55ID:D1e6h/yW0 phpはname="hoge[]"みたいに[]付けると配列、name="hoge[hage]"みたいにすると連想配列で値取れるよ
170デフォルトの名無しさん (ワッチョイ 9e97-Cw2/)
2022/11/10(木) 03:31:30.79ID:9rsfrZ3t0 ありがとうございます。
いま。環境がないので確かめられないのですが。
POSTで受け取ったときは、こんなかんじで値が取得できますかね。。
明日チャレンジしてみます。
foreach($_POST['hoge'] as $flag){
echo $i;
echo $flag;
$i++;
}
いま。環境がないので確かめられないのですが。
POSTで受け取ったときは、こんなかんじで値が取得できますかね。。
明日チャレンジしてみます。
foreach($_POST['hoge'] as $flag){
echo $i;
echo $flag;
$i++;
}
171デフォルトの名無しさん (ワッチョイ 527c-zlm6)
2022/11/10(木) 15:22:36.26ID:yzcqKQgo0172デフォルトの名無しさん (ワッチョイ 0509-+KET)
2022/11/12(土) 09:26:14.24ID:6XR5KbEP0 >>161
共有メモリのこと?
共有メモリのこと?
173デフォルトの名無しさん (ワッチョイ a5da-gPc0)
2022/11/12(土) 17:51:55.77ID:X6RVlC/X0 >>172
URIのことだと思うよ
URIのことだと思うよ
174デフォルトの名無しさん (ワッチョイ ff97-zuBb)
2022/12/01(木) 15:52:23.45ID:vegZ2o8T0 https://kanda-it-school-kensyu.com/php-intro-contents/pi_ch04/pi_0404/
この処理ってどういうこと。
phpはサーバーで処理してhtmlタグに変換するものだし。
クライアント側は、そりゃブラウザで上からタグを読むので当然なんだが。
この処理ってどういうこと。
phpはサーバーで処理してhtmlタグに変換するものだし。
クライアント側は、そりゃブラウザで上からタグを読むので当然なんだが。
175デフォルトの名無しさん (ワッチョイ bfe7-Z2Iz)
2022/12/01(木) 16:20:11.56ID:d04ep7qN0176デフォルトの名無しさん (ワッチョイ d74f-bR+H)
2022/12/01(木) 20:16:53.86ID:REXaKPyC0 例えば、Ruby のERB では、上から順番に実行される
<p>あ</p> を読み込んで、
Ruby の式、<p><%= RUBY_VERSION %></p> を実行してから、
<p>い</p> を読み込む
require 'erb'
html =<<HTML
<p>あ</p>
<p><%= RUBY_VERSION %></p>
<p>い</p>
HTML
puts ERB.new( html, nil, "<>" ).result( binding )
出力
<p>あ</p>
<p>2.5.7</p>
<p>い</p>
<p>あ</p> を読み込んで、
Ruby の式、<p><%= RUBY_VERSION %></p> を実行してから、
<p>い</p> を読み込む
require 'erb'
html =<<HTML
<p>あ</p>
<p><%= RUBY_VERSION %></p>
<p>い</p>
HTML
puts ERB.new( html, nil, "<>" ).result( binding )
出力
<p>あ</p>
<p>2.5.7</p>
<p>い</p>
177デフォルトの名無しさん (ワッチョイ d75f-pQkX)
2022/12/01(木) 21:58:45.19ID:oIO2xTp30 PHPモード書くとエラー吐くんだな、このサーバー
178デフォルトの名無しさん (ワッチョイ d75f-zuBb)
2022/12/02(金) 17:29:48.09ID:PlsoFJv80 phpって数万行(一行10列程度)のCSV等を出力させるのってバッチ処理でもない限り無理だよね?
179デフォルトの名無しさん (ワッチョイ d75f-zuBb)
2022/12/02(金) 17:33:19.36ID:PlsoFJv80 一応phpのタイムアウト無制限にしたりメモリ上限上げたりとかしてみたけど3万行くらいで落ちる
なんかいい方法あればだれか教えて〜
なんかいい方法あればだれか教えて〜
180デフォルトの名無しさん (ワッチョイ 5701-Z2Iz)
2022/12/02(金) 17:50:40.60ID:Gp+8HXJF0 サーバにファイル作ってダウンロードさせる
他にはHTTPで圧縮かけるとか
他にはHTTPで圧縮かけるとか
181デフォルトの名無しさん (ワッチョイ bfe7-Z2Iz)
2022/12/02(金) 18:36:24.61ID:xWddkTKj0182デフォルトの名無しさん (ワッチョイ 577b-vOxd)
2022/12/02(金) 19:03:21.41ID:gLaIiOiZ0 >>178-179
俺はPHP詳しくないけど、まず何で落ちてるか正確に確認してるか?
タイムアウトは0、メモリは-1の指定で上限無しに出来ることになってるし、
落ちたらそう分かるメッセージが出るはずだが。
ちな、gc_collect_cycles()でGCも出来る。
https://www.php.net/manual/ja/features.gc.performance-considerations.php
ただ、吐き出すだけでメモリを食い尽くすのは余程プログラムの構造がおかしい限りありえない。
とりあえずmemory_get_peak_usageの値でも取ってみ?
https://www.php.net/manual/ja/function.memory-get-peak-usage.php
仮に5万行=50k行=1行100文字なら5MBだろ。メモリ上限はあり得ないと思うが。
これら以外で落ちてるのなら、その対策をしないと。
例えば、レンサバなら、長寿命のプロセスは自動的に切られる。
対策は、専用鯖にすること。
俺はPHP詳しくないけど、まず何で落ちてるか正確に確認してるか?
タイムアウトは0、メモリは-1の指定で上限無しに出来ることになってるし、
落ちたらそう分かるメッセージが出るはずだが。
ちな、gc_collect_cycles()でGCも出来る。
https://www.php.net/manual/ja/features.gc.performance-considerations.php
ただ、吐き出すだけでメモリを食い尽くすのは余程プログラムの構造がおかしい限りありえない。
とりあえずmemory_get_peak_usageの値でも取ってみ?
https://www.php.net/manual/ja/function.memory-get-peak-usage.php
仮に5万行=50k行=1行100文字なら5MBだろ。メモリ上限はあり得ないと思うが。
これら以外で落ちてるのなら、その対策をしないと。
例えば、レンサバなら、長寿命のプロセスは自動的に切られる。
対策は、専用鯖にすること。
183デフォルトの名無しさん (ワッチョイ d74f-bR+H)
2022/12/02(金) 19:05:57.07ID:R6aGvMSq0 CSV ファイルのサイズは、どれぐらい?
テキストファイルなら、zip/gzip などで圧縮できるかも
テキストファイルなら、zip/gzip などで圧縮できるかも
184デフォルトの名無しさん (ワッチョイ 9f7c-RPwI)
2022/12/02(金) 21:35:42.65ID:Ny0E8yV10 数万行ぐらい余裕じゃないかなぁ
100万行ぐらいのダウンロードやインポートとか普通にやってたけど
100万行ぐらいのダウンロードやインポートとか普通にやってたけど
185デフォルトの名無しさん (ワッチョイ ff63-RPwI)
2022/12/02(金) 22:49:13.60ID:V7r+YhBf0 数万行のデータがどの位のサイズになるか分からないが
1GB程度のファイルダウンロード処理などメモリ-使わず出来る
1GB程度のファイルダウンロード処理などメモリ-使わず出来る
186デフォルトの名無しさん (ワッチョイ e75f-Pxbt)
2022/12/03(土) 01:33:06.32ID:PlWN8Jgn0 エクスポートファイルがSJISとかだった場合、5C問題ってどうしてんの?
187デフォルトの名無しさん (ワッチョイ e75f-Pxbt)
2022/12/03(土) 01:33:54.05ID:PlWN8Jgn0 エクスポートしたCSVがSJISでPHPでインポートする場合か
188デフォルトの名無しさん (ワッチョイ 8b10-VVRZ)
2022/12/04(日) 23:02:03.15ID:APQ0RP7C0 事前にUTF-8に変換してから読み込めばいけそう
189デフォルトの名無しさん (ワッチョイ ac8b-BV3Z)
2022/12/07(水) 11:45:23.79ID:1fkWXeae0 同一ファイルへの連続書き込みについて
filewrite();
filewrite();
function filewrite() {
// 'w'の新規モードで同一ファイルへの書き込み
}
こういった感じで連続で書き込んだのですが
テキストファイルの出力結果が1回目が終わった末尾に次の書き込み
それも先頭部分ではない途中からの書き込みが重なってなされてるようでした。
関数は同期処理だと思うので途中で次に行ってるとも思えないですし
間にsleep(1);で1秒間を入れてみたのですが結果は変わらず、よくわからなくなりました。
PHPの設定はアップロードに反映まで時間間隔を入れないに設定しています。
それでも一回目の書き込みがまとめて反映されるまでやや間隔があって
2回目の反映と重なってしまってるのだろうか?と考えてもみました。
これはどうやれば1回ずつの書き込みはそのつど締められて正常に連続書き込みできるようになるのでしょうか?
PHPで同一ファイルに連続して書き込む際の注意点とかありますか?
filewrite();
filewrite();
function filewrite() {
// 'w'の新規モードで同一ファイルへの書き込み
}
こういった感じで連続で書き込んだのですが
テキストファイルの出力結果が1回目が終わった末尾に次の書き込み
それも先頭部分ではない途中からの書き込みが重なってなされてるようでした。
関数は同期処理だと思うので途中で次に行ってるとも思えないですし
間にsleep(1);で1秒間を入れてみたのですが結果は変わらず、よくわからなくなりました。
PHPの設定はアップロードに反映まで時間間隔を入れないに設定しています。
それでも一回目の書き込みがまとめて反映されるまでやや間隔があって
2回目の反映と重なってしまってるのだろうか?と考えてもみました。
これはどうやれば1回ずつの書き込みはそのつど締められて正常に連続書き込みできるようになるのでしょうか?
PHPで同一ファイルに連続して書き込む際の注意点とかありますか?
190デフォルトの名無しさん (ワッチョイ 91da-7kHv)
2022/12/07(水) 12:46:25.55ID:/vDZIDbT0 >>189
プログラムに問題が無いなら、プログラム以外に問題があんだろ
他のプロセスがいるとかな
sleep(30)とか入れて、初回書き込みのあと5秒おきに
テキストの内容および更新時刻を観察するといいよ
プログラムに問題が無いなら、プログラム以外に問題があんだろ
他のプロセスがいるとかな
sleep(30)とか入れて、初回書き込みのあと5秒おきに
テキストの内容および更新時刻を観察するといいよ
191デフォルトの名無しさん (ワッチョイ a27c-7kHv)
2022/12/07(水) 15:19:37.18ID:w780kgYS0 fclose()する前にfsync()でもしておけば同期はされるのでは?
192デフォルトの名無しさん (ワッチョイ ac8b-BV3Z)
2022/12/07(水) 15:31:04.93ID:1fkWXeae0 flock($fp,LOCK_SH); flock($fp,LOCK_UN); fflush($fp);
これらは付けてみました、しかしプログラムの方の問題だったようです
strcmp()===0の3つイコールの徹底化や改行コードの統一で正常に動くようになりました
これらは付けてみました、しかしプログラムの方の問題だったようです
strcmp()===0の3つイコールの徹底化や改行コードの統一で正常に動くようになりました
193デフォルトの名無しさん (ワッチョイ cf5f-vo7k)
2022/12/08(木) 10:49:14.78ID:yEj7mUL70 PHPUnitってデバッグしながら実行できます?
194デフォルトの名無しさん (ワッチョイ b6e7-7kHv)
2022/12/08(木) 11:16:07.17ID:FA1I/9HE0 できますん
195デフォルトの名無しさん (ワッチョイ f601-5e4C)
2022/12/08(木) 19:56:18.82ID:O25d6TKs0 xammpの環境ではexecが動くけど素のphp+apacheで動かないのって
やっぱhttpd.confかphp.iniの設定の違いかな?
phpからexecで自作のプログラム(音源出力、キー有力受付)を呼びたいんだけど、
xammpの環境からは正常に動作するんだけど、apache2.4+php7.4の環境だと
音源出力は動くけどキー入力が受け付けない。
タスクマネージャー上には存在するから呼び出しはされてるけどキー入力を受け付けて
無いみたいなんだよね。
なんか設定で怪しい項目ある?
safe_modeは一応offにしてある。
やっぱhttpd.confかphp.iniの設定の違いかな?
phpからexecで自作のプログラム(音源出力、キー有力受付)を呼びたいんだけど、
xammpの環境からは正常に動作するんだけど、apache2.4+php7.4の環境だと
音源出力は動くけどキー入力が受け付けない。
タスクマネージャー上には存在するから呼び出しはされてるけどキー入力を受け付けて
無いみたいなんだよね。
なんか設定で怪しい項目ある?
safe_modeは一応offにしてある。
196デフォルトの名無しさん (ワッチョイ 1a63-4FAg)
2022/12/08(木) 20:03:31.21ID:9104bOlZ0 何故キー入力が必要になるのか理解できないです
197デフォルトの名無しさん (ワッチョイ f601-5e4C)
2022/12/08(木) 20:15:01.79ID:O25d6TKs0198デフォルトの名無しさん (ワッチョイ f601-5e4C)
2022/12/08(木) 20:17:19.07ID:O25d6TKs0 ちなwin10環境ね
199デフォルトの名無しさん (ワッチョイ a27c-7kHv)
2022/12/08(木) 20:58:43.48ID:wvTxK2BR0 ん?
言っている事が分からんw
サーバー側もwindowsでそこでPHPからexeを動かす(コンソールアプリ?)
その動かしたexeでキー入力?
何の意味があるんだ・・・
もっと分かるように説明してくれ
言っている事が分からんw
サーバー側もwindowsでそこでPHPからexeを動かす(コンソールアプリ?)
その動かしたexeでキー入力?
何の意味があるんだ・・・
もっと分かるように説明してくれ
200デフォルトの名無しさん (ワッチョイ f601-5e4C)
2022/12/08(木) 21:23:04.49ID:O25d6TKs0 装置A(apache,php)にデバイス(キーボードとか)が繋がっている状態。
でユーザーは装置Aから音声ガイダンスが流れるからそれに従って
キー入力を行って、装置Aでどのキーが入力されたのかって
情報が欲しい。
でPHPからexceで自作のexe(C++で作成したもの)を呼び出して装置A上で
音声の再生、キー入力を受けつけたい。装置Aには画面が無い状態ね。
まぁ、普通にCSで作れってのはおいておいてw
何で装置にWebサーバーが入っているのかはhttp通信で外部からその
装置を制御したいから。
例えば俺のマシンから装置Aに対して、音声出してってPOSTすると
装置Aが音声を出すって感じ
でユーザーは装置Aから音声ガイダンスが流れるからそれに従って
キー入力を行って、装置Aでどのキーが入力されたのかって
情報が欲しい。
でPHPからexceで自作のexe(C++で作成したもの)を呼び出して装置A上で
音声の再生、キー入力を受けつけたい。装置Aには画面が無い状態ね。
まぁ、普通にCSで作れってのはおいておいてw
何で装置にWebサーバーが入っているのかはhttp通信で外部からその
装置を制御したいから。
例えば俺のマシンから装置Aに対して、音声出してってPOSTすると
装置Aが音声を出すって感じ
201デフォルトの名無しさん (ワッチョイ f601-5e4C)
2022/12/08(木) 21:31:46.95ID:O25d6TKs0 apache上で動いているPHPにそのマシンからのキー入力情報が
受け取れるなら別にexecで外部プログラムを呼ばなくてもいいけど、
他に方法があるなら教えてくれ。
Node.jsでjavascriptで受け取るってのはだめだったら試す。
受け取れるなら別にexecで外部プログラムを呼ばなくてもいいけど、
他に方法があるなら教えてくれ。
Node.jsでjavascriptで受け取るってのはだめだったら試す。
202デフォルトの名無しさん (ワッチョイ f601-5e4C)
2022/12/08(木) 21:39:10.00ID:O25d6TKs0 サーバー上で標準入力を受け取りたいんだけど
エンターボタンは無いからC++で書いてる。
エンターボタンは無いからC++で書いてる。
203デフォルトの名無しさん (ワッチョイ 8cbb-20rA)
2022/12/08(木) 21:56:41.92ID:yrpHKjJA0 xamppでは動いたんだよね?
だったらxamppでやけば良い気がするけど...
いくつか制限できる方法はあるのですぐ出てきたやつ貼っとく
https://www.php.net/manual/ja/ini.core.php#ini.disable-functions
レンサバなんかだと制限があったりするけど、デフォルトでは特に制限なかったと思うけどなぁ
だったらxamppでやけば良い気がするけど...
いくつか制限できる方法はあるのですぐ出てきたやつ貼っとく
https://www.php.net/manual/ja/ini.core.php#ini.disable-functions
レンサバなんかだと制限があったりするけど、デフォルトでは特に制限なかったと思うけどなぁ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
