PHPに関する質問スレです
前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 8
http://mevius.5ch.net/test/read.cgi/tech/1489506082/
次スレは>>980以降
本文の1行目に以下を追加すること
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
探検
【PHP】下らねぇ質問はここに 9
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 538a-od5V)
2017/12/20(水) 18:00:20.28ID:1xaO/YRR0573570 (ワッチョイ 2ad0-wF79)
2018/08/29(水) 18:04:53.37ID:Fy8w4QmX0574デフォルトの名無しさん (ワッチョイ a3d0-J7KC)
2018/08/30(木) 19:30:03.21ID:GwaNatXn0 >>570の$toって直書きすると外部から参照されたりするん?
そこらへん うちも勉強不足だわ
そこらへん うちも勉強不足だわ
575デフォルトの名無しさん (ワッチョイ 0b81-tpL7)
2018/08/30(木) 19:32:18.17ID:Ut/QgXMd0 外部からってどういう意味?
宛先見せないと配達できないでしょ?
そういうことじゃなくて?
宛先見せないと配達できないでしょ?
そういうことじゃなくて?
576デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/08/30(木) 19:44:52.34ID:EWk4rtO80 web公開ディレクトリに置かないのが基本なんだよ。
hdocs/index.html
lib/php/config.ini
hdocs/index.html
lib/php/config.ini
577デフォルトの名無しさん (オイコラミネオ MM21-SMhC)
2018/08/30(木) 20:10:41.63ID:b1WMdnEwM 共用のレンタルサーバーだと、
Permissionを0604にするのもありだな。
最初の0は気にしない。
次の6は自分の読み書き権限
次の0は同居してるユーザーに権限剥奪
最後の4はApacheに読み取り権限
Permissionを0604にするのもありだな。
最初の0は気にしない。
次の6は自分の読み書き権限
次の0は同居してるユーザーに権限剥奪
最後の4はApacheに読み取り権限
578デフォルトの名無しさん (ワッチョイ 0b81-tpL7)
2018/08/30(木) 20:37:32.95ID:Ut/QgXMd0579デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/08/30(木) 20:58:13.62ID:EWk4rtO80 ほとんどの共用レンタルサーバーは、
webユーザーは同一グループに所属するから、
xx0xで引っ掛けて拒否させるんだよ。
最後の4は付けないとApacheが読めない。
https://www.xserver.ne.jp/manual/man_server_permission.php
グループ設計がどうなってるかとか、
PHPの実行ユーザーが誰になるかとか、
事前に確認しないといけないな。
suEXEC、FastCGIなんかで変わってくる場合もあるし。
webユーザーは同一グループに所属するから、
xx0xで引っ掛けて拒否させるんだよ。
最後の4は付けないとApacheが読めない。
https://www.xserver.ne.jp/manual/man_server_permission.php
グループ設計がどうなってるかとか、
PHPの実行ユーザーが誰になるかとか、
事前に確認しないといけないな。
suEXEC、FastCGIなんかで変わってくる場合もあるし。
580デフォルトの名無しさん (ワッチョイ a3d0-J7KC)
2018/09/01(土) 18:28:51.43ID:0yUv0G400 exit()
die()
(´・ω・`)?
die()
(´・ω・`)?
581デフォルトの名無しさん (ワッチョイ 0b81-tpL7)
2018/09/01(土) 18:34:59.89ID:5sir/CBW0 死ねって言われたいのかなあ
582デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/01(土) 19:17:45.13ID:/Rwrc1N80 >>580
ディエはエラーログに残る
ディエはエラーログに残る
583デフォルトの名無しさん (ワッチョイ 1d9f-GNu9)
2018/09/02(日) 10:08:19.04ID:ub6GWDzd0 ど素人です
質問させてください
cakephp3のwebroot以下にある.htaccessで、mod_rewriteの括弧外にrewritecondやrewriteruleが書かれているものを人様のサイトで拝見しました
括弧外に置かれても、機能するものなのでしょうか
質問させてください
cakephp3のwebroot以下にある.htaccessで、mod_rewriteの括弧外にrewritecondやrewriteruleが書かれているものを人様のサイトで拝見しました
括弧外に置かれても、機能するものなのでしょうか
584デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/02(日) 10:25:45.60ID:afimrVjB0 <IfModule mod_rewrite.c>
もしかしてこれ?
もしかしてこれ?
585デフォルトの名無しさん (ワッチョイ 1d9f-J7KC)
2018/09/02(日) 13:32:00.09ID:ub6GWDzd0 そうです
すみません、>>583は携帯から書き込んでいたので正確ではありませんでした
質問するにしても良くなかったですね
===================
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
===================
このようなものなのですが
すみません、>>583は携帯から書き込んでいたので正確ではありませんでした
質問するにしても良くなかったですね
===================
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
===================
このようなものなのですが
586デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/02(日) 15:33:48.84ID:afimrVjB0 それは、そのモジュールが有効化されていたら設定するって意味で、
何のモジュールのディレクティブなのか明確になる以外にメリットない。
だから書かない方が良い。
ifを書かなければ、モジュールが無効なら即500エラーで設定ミスに気付ける。
モジュールが無効なのにエラーにならず、
設定したつもりでいる方が危ないからね。
何のモジュールのディレクティブなのか明確になる以外にメリットない。
だから書かない方が良い。
ifを書かなければ、モジュールが無効なら即500エラーで設定ミスに気付ける。
モジュールが無効なのにエラーにならず、
設定したつもりでいる方が危ないからね。
587デフォルトの名無しさん (ワッチョイ a3d0-J7KC)
2018/09/02(日) 15:42:33.40ID:NagoJ+s80588デフォルトの名無しさん (ワッチョイ 1d9f-J7KC)
2018/09/02(日) 18:59:05.09ID:ub6GWDzd0 >>586
返答ありがとうございます
リファレンスにしていたものが、全てディレクティブを括弧内に書いていたのと
cakephpのインストール直後のプロジェクトに入っていた.htaccessでも
ディレクティブが<ifmodule>で囲まれていたので、
基本的には囲う必要があり、外に出る方がおかしいと思い込みがありました
まさにおっしゃられていた通り、apache2.confを見てみたら
Loadmoduleでmod_rewriteを有効化していたつもりで、実際にはコメントアウトされていたのですが
それにも気付いていませんでした
どうもありがとうございます
返答ありがとうございます
リファレンスにしていたものが、全てディレクティブを括弧内に書いていたのと
cakephpのインストール直後のプロジェクトに入っていた.htaccessでも
ディレクティブが<ifmodule>で囲まれていたので、
基本的には囲う必要があり、外に出る方がおかしいと思い込みがありました
まさにおっしゃられていた通り、apache2.confを見てみたら
Loadmoduleでmod_rewriteを有効化していたつもりで、実際にはコメントアウトされていたのですが
それにも気付いていませんでした
どうもありがとうございます
589デフォルトの名無しさん (ワッチョイ a3d0-J7KC)
2018/09/03(月) 09:54:20.75ID:0wOUtf7+0 読み返してたんだけど>>557の前者って使うことないものなの?
590デフォルトの名無しさん (ワッチョイ 955b-zBrR)
2018/09/03(月) 11:36:23.62ID:Shssq38w0 >>587
ネタにマジレスしとくと
dieの発音は「ディエ」じゃなく「ダイ」だし
exitとdieは等価なので、エラーログに残るとかは嘘
exitの方が一般的だとは思うが好きな方を使えばOK
あくまで予想だが、die()はperl言語出身者に配慮して作ったんじゃなかろうか
ネタにマジレスしとくと
dieの発音は「ディエ」じゃなく「ダイ」だし
exitとdieは等価なので、エラーログに残るとかは嘘
exitの方が一般的だとは思うが好きな方を使えばOK
あくまで予想だが、die()はperl言語出身者に配慮して作ったんじゃなかろうか
591デフォルトの名無しさん (スププ Sd43-Oaw6)
2018/09/03(月) 12:01:10.60ID:Nk9MF4uYd height
align
allow
deny
web系に関わってるのにこういう単語の読み方がおかしな人の言う事は疑ってかかった方がいいという経験則
align
allow
deny
web系に関わってるのにこういう単語の読み方がおかしな人の言う事は疑ってかかった方がいいという経験則
592デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/03(月) 12:08:27.54ID:lQhKIzFA0 >>590
すまん。perlの関数と勘違いしてた…
PHPにおいてはexitもdieも同じらしい。
dieの引数も標準出力されたw
プログラムは読み手に意図を伝えた方が良い場合もあるから、
exit(1)よりdieの方が致命的エラーなのかなと思わせることはできるかな。
しかし標準出力されるんじゃあ使えないな。
嘘こいてすまん。
すまん。perlの関数と勘違いしてた…
PHPにおいてはexitもdieも同じらしい。
dieの引数も標準出力されたw
プログラムは読み手に意図を伝えた方が良い場合もあるから、
exit(1)よりdieの方が致命的エラーなのかなと思わせることはできるかな。
しかし標準出力されるんじゃあ使えないな。
嘘こいてすまん。
593デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/03(月) 12:11:22.59ID:lQhKIzFA0594デフォルトの名無しさん (ワッチョイ 955b-zBrR)
2018/09/03(月) 12:27:19.50ID:Shssq38w0 >>591
ハイト
アライン
アラウ
ディナイ
どれも高校入試の時の発音問題頻出単語(要するに中学レベルの単語)だったような遠い20年以上前の記憶
うんざりする程しつこく教えてくれた当時の英語担任に感謝しないといかん
ハイト
アライン
アラウ
ディナイ
どれも高校入試の時の発音問題頻出単語(要するに中学レベルの単語)だったような遠い20年以上前の記憶
うんざりする程しつこく教えてくれた当時の英語担任に感謝しないといかん
595デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/03(月) 12:40:39.44ID:lQhKIzFA0 アラウか…
何かそこだけ妙にネイティブだな。
アローですまん…
何かそこだけ妙にネイティブだな。
アローですまん…
596デフォルトの名無しさん (ワッチョイ 0b81-tpL7)
2018/09/03(月) 12:41:40.31ID:wBpew+1c0 本来ネイティブの発音に合わせて読むべきなんだろうけど、
アラウやディナイと発音しても、日本人相手だと通じなかったりする
アラウやディナイと発音しても、日本人相手だと通じなかったりする
597デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/03(月) 12:44:28.91ID:lQhKIzFA0 アラウはちょっとなあ…
それ言い出すとonlyはオウンリイだし。
日頃はカタカナ英語でいいです。
それ言い出すとonlyはオウンリイだし。
日頃はカタカナ英語でいいです。
598デフォルトの名無しさん (スププ Sd43-Oaw6)
2018/09/03(月) 12:55:17.57ID:Nk9MF4uYd ネタなのかマジなのかわからなくなってきたけど正解はもちろん>>594
allow,denyをアローデニーと読んでいた自称サーバー管理者が設定したウンコみたいなサーバーに泣かされて以来トラウマです
そして今なおallow,denyという単語を目にするという事はそれ即ち、去年末にサポートが終わったApache2.2系をまだ使い続けてるというトラウマの再来になる可能性がががが
allow,denyをアローデニーと読んでいた自称サーバー管理者が設定したウンコみたいなサーバーに泣かされて以来トラウマです
そして今なおallow,denyという単語を目にするという事はそれ即ち、去年末にサポートが終わったApache2.2系をまだ使い続けてるというトラウマの再来になる可能性がががが
599デフォルトの名無しさん (オイコラミネオ MM21-Ngx2)
2018/09/03(月) 13:42:47.41ID:Q3fOl+JcM warning はどうよ
600デフォルトの名無しさん (ワッチョイ 955b-zBrR)
2018/09/03(月) 14:06:21.30ID:Shssq38w0 ウォーニング
まぁ会社によって方言みたいなのはあるよね
内心そうじゃないだろ…(ため息)と思いつつ相手に合わせる事も大事
まぁ会社によって方言みたいなのはあるよね
内心そうじゃないだろ…(ため息)と思いつつ相手に合わせる事も大事
601デフォルトの名無しさん (ワッチョイ 5de9-zBrR)
2018/09/03(月) 14:10:12.54ID:fNzMywLO0 今の所全問正解っぽくて安心した
falseをファルスと読む人を見る度に
パルスのファルシのルシがコクーンでパージを思い出す
falseをファルスと読む人を見る度に
パルスのファルシのルシがコクーンでパージを思い出す
602デフォルトの名無しさん (ワッチョイ 0bb8-Wsjv)
2018/09/03(月) 14:18:24.08ID:bh6+crPg0 アリグンとかデニーとかいってるならヘイグヒトぐらいにしないと
603デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/03(月) 14:53:06.39ID:lQhKIzFA0 あんまりこだわると意識高い系とか嫌味を言われそうだし、
まあわかればいいやね…
ここじゃないかもだかど、どっかのPHPスレで
エチョーと書いたらウケたよ。
まあわかればいいやね…
ここじゃないかもだかど、どっかのPHPスレで
エチョーと書いたらウケたよ。
604デフォルトの名無しさん (ワッチョイ 0b81-tpL7)
2018/09/03(月) 14:55:19.36ID:wBpew+1c0 >>603
コーヒー吹くとこだったぞ
コーヒー吹くとこだったぞ
605デフォルトの名無しさん (アウアウカー Sa61-lQkG)
2018/09/03(月) 15:27:39.33ID:/uGmskjCa allowというかau音はアゥからオゥに寄った側に聞こえるからカタカナ英語的にはアロゥはアリかなと思う
arrowと区別したいときはアラゥと言うべきだと思うけど
デニーとかアリグンは流石にねーなw
arrowと区別したいときはアラゥと言うべきだと思うけど
デニーとかアリグンは流石にねーなw
606デフォルトの名無しさん (ワッチョイ 23d2-6oUK)
2018/09/03(月) 16:58:16.51ID:MppWbPja0 ini → イニ? アイエヌアイ?
array → アレイ? アライ?
あと正直str系の関数が読めない
strlen strpos当たりはわかるけど
stripos strrpos strripos
あたり
array → アレイ? アライ?
あと正直str系の関数が読めない
strlen strpos当たりはわかるけど
stripos strrpos strripos
あたり
607デフォルトの名無しさん (ワッチョイ 955b-zBrR)
2018/09/03(月) 17:56:38.19ID:Shssq38w0 array:アレイ
ini:initializationの略
stripos:string case-insensitive postionの略だと勝手に思ってる
strrpos:string reverse positionの略だと勝手に思ってる
かっこよく読みたいなら元の単語を略さずに読めばいいんだろうが
実用的にはアルファベットをそのまま読めばいいじゃなかろうか
ini:initializationの略
stripos:string case-insensitive postionの略だと勝手に思ってる
strrpos:string reverse positionの略だと勝手に思ってる
かっこよく読みたいなら元の単語を略さずに読めばいいんだろうが
実用的にはアルファベットをそのまま読めばいいじゃなかろうか
608デフォルトの名無しさん (ワッチョイ b58a-zBrR)
2018/09/03(月) 19:06:04.00ID:w8msLsZZ0 if
イフ
then
ゼン?
else
エルス?
true
トゥルー?
false
フォールス?
try
トライ?
throw
スロー?
catch
キャッチ?
イフ
then
ゼン?
else
エルス?
true
トゥルー?
false
フォールス?
try
トライ?
throw
スロー?
catch
キャッチ?
609デフォルトの名無しさん (ワッチョイ 1d9f-J7KC)
2018/09/04(火) 00:34:18.87ID:3EnQXiZU0610デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/04(火) 11:43:27.54ID:2slzjYMb0 routes.phpとかは?
アプリのリダイレクトなのか、
apacheのリダイレクトなのか切り分けていくと良いのでは。
アプリのリダイレクトなのか、
apacheのリダイレクトなのか切り分けていくと良いのでは。
611デフォルトの名無しさん (ワッチョイ db9e-J7KC)
2018/09/04(火) 21:34:32.07ID:8BTVVQRQ0612デフォルトの名無しさん (ワッチョイ 0b80-4Jnz)
2018/09/04(火) 22:55:22.87ID:JkSql3w10 >include('/path/file.txt');
/ から始まっているから、何かからの絶対パスかな?
プロジェクトルートか、公開サイトのルートからの絶対パスかな?
/ から始まっているから、何かからの絶対パスかな?
プロジェクトルートか、公開サイトのルートからの絶対パスかな?
613デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/04(火) 23:04:14.00ID:2slzjYMb0 上のは言ってみればfile://になるんじゃないの? 違う?
614デフォルトの名無しさん (ワッチョイ a3d0-hHnA)
2018/09/05(水) 16:46:47.73ID:dwWFM3zt0 公式のmail()とmb_send_mail()のページを見ていたのですが、
mail()のsubjectは表題、messageはメッセージ、
mb_send_mail()のsubjectは件名、messageは本文となっていました。
これは何かが違うということでしょうか。
くだらない質問と思いますが、よろしくお願いします。
mail()のsubjectは表題、messageはメッセージ、
mb_send_mail()のsubjectは件名、messageは本文となっていました。
これは何かが違うということでしょうか。
くだらない質問と思いますが、よろしくお願いします。
615デフォルトの名無しさん (ワッチョイ 0be8-Bzg2)
2018/09/05(水) 17:13:31.91ID:eC5bTWUj0 全く同じ意味ですが異なります
この事に気をつけて厳密に取捨選択し、
どっちでもいいから適当に使いましょう
この事に気をつけて厳密に取捨選択し、
どっちでもいいから適当に使いましょう
616デフォルトの名無しさん (ワッチョイ 5b9f-SMhC)
2018/09/05(水) 17:23:40.98ID:HJ2kcLma0 mailはエンコードしてくれないから自分でしてから呼び出す。
mbはエンコードしてくれる。
というか、ググれよ!
mbはエンコードしてくれる。
というか、ググれよ!
617デフォルトの名無しさん (ワッチョイ 65b3-zBrR)
2018/09/05(水) 17:28:21.76ID:+CD9GwZX0 どっちの関数も直接使うには勝手が悪いので、さっさと基礎理解してライブラリ使うようにしましょう。
618デフォルトの名無しさん (ワッチョイ a3d0-hHnA)
2018/09/05(水) 17:46:40.68ID:dwWFM3zt0 アドバイスありがとうございました。
619デフォルトの名無しさん (ワッチョイ 969e-O+me)
2018/09/06(木) 17:01:57.65ID:kzkzi/Yy0 <form method="get" でsubmitした場合、
$_GETを使うのが普通だと思うのですが
$_POSTでも値が取れるのですが、そういうもんですか?
$_GETを使うのが普通だと思うのですが
$_POSTでも値が取れるのですが、そういうもんですか?
620デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/06(木) 17:39:08.61ID:bmlthp5L0 普通だけど普通じゃなくなって来たから、filter_input使う。
このスレの上の方にも出てる。
このスレの上の方にも出てる。
621デフォルトの名無しさん (ワッチョイ ae81-7GfT)
2018/09/06(木) 19:14:57.47ID:xdo6cDUj0622デフォルトの名無しさん (ワッチョイ 969e-O+me)
2018/09/06(木) 20:05:38.46ID:kzkzi/Yy0623デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/06(木) 20:59:34.70ID:bmlthp5L0 GETとPOSTと両方送ってるとかじゃないの…w
624デフォルトの名無しさん (ワッチョイ 8b80-f65Y)
2018/09/06(木) 21:15:35.52ID:64ZwjQvb0 methodをgetでサブミットしてるなら
HTTPプロトコルではcontent bodyの部分は空になる
そういう仕様だからな
つまり通常postで取得できる部分はからっぽ
methodをpostでサブミットしてるなら
そういう状況はHTTPプロトコルでも十分にありえる
uriにurlエンコードされた文字列が含まれる状況でpostしたケースならありえるということになる
ちなみにオレはスクリプトの変数にその値がどう格納されるかは知らない
質問してるヤツは
getでサブミットしてんのになんでそんなことがおきんの?
というのが質問の主旨と理解した
低学歴知恵遅れがその質問をどう解釈したかは知らない
HTTPプロトコルではcontent bodyの部分は空になる
そういう仕様だからな
つまり通常postで取得できる部分はからっぽ
methodをpostでサブミットしてるなら
そういう状況はHTTPプロトコルでも十分にありえる
uriにurlエンコードされた文字列が含まれる状況でpostしたケースならありえるということになる
ちなみにオレはスクリプトの変数にその値がどう格納されるかは知らない
質問してるヤツは
getでサブミットしてんのになんでそんなことがおきんの?
というのが質問の主旨と理解した
低学歴知恵遅れがその質問をどう解釈したかは知らない
625デフォルトの名無しさん (ワッチョイ ae81-7GfT)
2018/09/06(木) 21:39:08.51ID:xdo6cDUj0626デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/06(木) 22:24:24.23ID:bmlthp5L0627デフォルトの名無しさん (ワッチョイ 8b80-f65Y)
2018/09/06(木) 22:27:25.22ID:64ZwjQvb0 はい低学歴知恵遅れ図星
ごまかそうとしても
もうバレてるからな
分かりやすいわ。。。
ごまかそうとしても
もうバレてるからな
分かりやすいわ。。。
628デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/06(木) 22:52:05.75ID:bmlthp5L0 正解です。でも知恵遅れはないよ。
629デフォルトの名無しさん (ワッチョイ ae81-7GfT)
2018/09/06(木) 22:55:48.48ID:xdo6cDUj0 冗談は冗談が通じる相手にしないと
この質問者はPOSTとGETについて理解できていないんだから
冗談だとは受けとってないと思うぞ
この質問者はPOSTとGETについて理解できていないんだから
冗談だとは受けとってないと思うぞ
630デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/06(木) 22:59:57.65ID:bmlthp5L0 冗談とは言え、とりあえずパケットキャプチャしてみたら?に行き着いて欲しかったんだけどな。
その後、フレームワークなりの変数の検査するとか。
やり方を切り分けて絞り込んでいかないといけない。
その後、フレームワークなりの変数の検査するとか。
やり方を切り分けて絞り込んでいかないといけない。
631デフォルトの名無しさん (ワッチョイ 7ad0-O+me)
2018/09/07(金) 09:44:56.47ID:9ghtkfrV0 PHPを始めたのですが分からないことがあるので教えてください。
https://qiita.com/mpyw/items/2f9955db1c02eeef43ea
上記ウェブサイトに次のコードがあるのですが、配列?を使用する理由を教えてください。
if (!isset($_POST['email'])) {
$errors[] = 'Eメールアドレスが送信されていません';
} elseif ($_POST['email'] === '') {
$errors[] = 'Eメールアドレスが入力されていません';
}
よろしくお願いします。
https://qiita.com/mpyw/items/2f9955db1c02eeef43ea
上記ウェブサイトに次のコードがあるのですが、配列?を使用する理由を教えてください。
if (!isset($_POST['email'])) {
$errors[] = 'Eメールアドレスが送信されていません';
} elseif ($_POST['email'] === '') {
$errors[] = 'Eメールアドレスが入力されていません';
}
よろしくお願いします。
632デフォルトの名無しさん (ワッチョイ bbb3-fTNn)
2018/09/07(金) 10:03:27.93ID:0+aYiLfb0 >>631
この例文の中では特に意味はない。post したページに戻る際、エラーをまとめて送る時に使う。
この例文の中では特に意味はない。post したページに戻る際、エラーをまとめて送る時に使う。
633631 (ワッチョイ 7ad0-O+me)
2018/09/07(金) 10:16:38.86ID:9ghtkfrV0634デフォルトの名無しさん (ワッチョイ 7ad0-O+me)
2018/09/09(日) 16:54:11.51ID:kcIkPUJb0 HTMLとPHPを使ってメールを送信するため、次のように書いたのですが、良いか悪いか判断ができません。
右も左も分からないため、どのようなことでも構いませんのでアドバイスをください。
メールは【入力】→【確認】→【送信】の流れで送信されます。
どうか、よろしくお願いします。
【input.php】
https://ideone.com/cEGHAA
↓
【check.php】
https://ideone.com/R9GueN
↓
【thanks.php】
https://ideone.com/R2mR1b
右も左も分からないため、どのようなことでも構いませんのでアドバイスをください。
メールは【入力】→【確認】→【送信】の流れで送信されます。
どうか、よろしくお願いします。
【input.php】
https://ideone.com/cEGHAA
↓
【check.php】
https://ideone.com/R9GueN
↓
【thanks.php】
https://ideone.com/R2mR1b
635デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/10(月) 09:10:57.34ID:LEZi3nV80 form.php
confirm.php
send.php
こうすると良いと思う
confirm.php
send.php
こうすると良いと思う
636634 (ワッチョイ 7ad0-O+me)
2018/09/10(月) 14:59:46.15ID:Jh3v7l2E0637デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/10(月) 20:03:31.22ID:LEZi3nV80 ネタにマジレスしてるんで、仕方ないからチラ見してみた。
このスレのダメな例の集大成みたいだな。
受け取った値の長さに制限を掛けて、巨大データを受け入れないようにする。
HTML側でもmaxlengthやtype="email"やrequiredを使うと気休めになるかも。
PHP側でも長さをチェックする。
filter_inputの使い方が違う。
受け取った価をあえて$_SESSIONに入れてどうする?
それは使わずに$subjectとかに代入する。
mail関数に入れるデータはエンコードするか、mb_send_mailを使う。
あとは動いてるならいいんじゃない?
このスレのダメな例の集大成みたいだな。
受け取った値の長さに制限を掛けて、巨大データを受け入れないようにする。
HTML側でもmaxlengthやtype="email"やrequiredを使うと気休めになるかも。
PHP側でも長さをチェックする。
filter_inputの使い方が違う。
受け取った価をあえて$_SESSIONに入れてどうする?
それは使わずに$subjectとかに代入する。
mail関数に入れるデータはエンコードするか、mb_send_mailを使う。
あとは動いてるならいいんじゃない?
638デフォルトの名無しさん (オイコラミネオ MM53-eFvF)
2018/09/10(月) 21:25:32.24ID:AQjUY5xrM 勉強のためならいいけどガチでサービスに導入とかはしない方がいいと思うよ
既存のサービス使った方が絶対に安全
既存のサービス使った方が絶対に安全
639デフォルトの名無しさん (ワッチョイ 532a-5rD0)
2018/09/11(火) 12:49:51.36ID:swAVBRLl0 class内のプロパティに関数って指定できないでしょうか?
class Test {
public $date = date("Y-m-d");
}
というイメージです。これを記述しても
Parse error: syntax error, unexpected '(', expecting ',' or ';'
というエラーが出るので無理だと思っているのですが、
できる方法があれば教えてください。
class Test {
public $date = date("Y-m-d");
}
というイメージです。これを記述しても
Parse error: syntax error, unexpected '(', expecting ',' or ';'
というエラーが出るので無理だと思っているのですが、
できる方法があれば教えてください。
640デフォルトの名無しさん (ワッチョイ 8723-eFvF)
2018/09/11(火) 13:07:18.10ID:B2tEflKb0 やり方はいろいろあるが、一般的にはコンストラクタの中で代入するんじゃないかな
641デフォルトの名無しさん (オイコラミネオ MM53-eFvF)
2018/09/11(火) 13:07:35.88ID:7DNsPvsqM やり方はいろいろあるが、一般的にはコンストラクタの中で代入するんじゃないかな
642634 (ワッチョイ 7ad0-O+me)
2018/09/11(火) 17:53:48.50ID:sA/7deNB0 >>637
アドバイスありがとうございます。
次を課題に学習を進めたいと思います。
・HTMLとPHPで値の長さに制限を掛ける
・filter_inputの使い方を理解する
mail関数に関してもmb_send_mail関数と合わせて考え直します。
セッション変数については入力されたデータを持ちまわる体で使用しようと考えているのですが、type="hidden"の方が良いのでしょうか。
今は自身の理解が不足しているので、もう一度最初から取り組みます。
アドバイスありがとうございました。
>>638
アドバイスありがとうございます。
やはり既存のサービスの方が安全ですか。
今は自身のために勉強したいと思います。
アドバイスありがとうございました。
アドバイスありがとうございます。
次を課題に学習を進めたいと思います。
・HTMLとPHPで値の長さに制限を掛ける
・filter_inputの使い方を理解する
mail関数に関してもmb_send_mail関数と合わせて考え直します。
セッション変数については入力されたデータを持ちまわる体で使用しようと考えているのですが、type="hidden"の方が良いのでしょうか。
今は自身の理解が不足しているので、もう一度最初から取り組みます。
アドバイスありがとうございました。
>>638
アドバイスありがとうございます。
やはり既存のサービスの方が安全ですか。
今は自身のために勉強したいと思います。
アドバイスありがとうございました。
643デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/11(火) 19:04:42.02ID:Of5zYKw20644デフォルトの名無しさん (ワッチョイ 96d5-tygy)
2018/09/11(火) 20:24:28.80ID:NY6FXi0j0 このくらいのフォームなら hidden の方がいいんじゃね。
セッションでなんかメリットある?
セッションでなんかメリットある?
645デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/11(火) 21:33:19.08ID:Of5zYKw20 使い方を間違えてるから正した方が良いと思っただけ
646634 (ワッチョイ 7ad0-O+me)
2018/09/12(水) 08:16:38.34ID:uWMSldyR0647デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/12(水) 08:31:17.86ID:t1WfAWi+0 >>646
う、うん。
でも一番はそこじゃないんだな。
スーパーグローバル変数を書き換えるべきではないのに、
そらをしてしまっているところね。
そもそもスーパーグローバルを使わないためのfilter_inputだから。
最初は誰でもそんなもんだから頑張ってね。
う、うん。
でも一番はそこじゃないんだな。
スーパーグローバル変数を書き換えるべきではないのに、
そらをしてしまっているところね。
そもそもスーパーグローバルを使わないためのfilter_inputだから。
最初は誰でもそんなもんだから頑張ってね。
648634 (ワッチョイ 7ad0-O+me)
2018/09/12(水) 08:36:21.52ID:uWMSldyR0649デフォルトの名無しさん (ワッチョイ 5e92-fTNn)
2018/09/12(水) 11:26:01.33ID:/jhmkHwQ0 どうしてもわからないので質問お願いします。
私はWindows7でxamppを使いPHPを動かしています。
類似画像の比較のため「libpuzzle」というライブラリを使いたいのですが、インストールのやり方がわかりません。
インストールが簡単とのことで下記のページを参考にしようと思っているのですが、何をやっているのかわかりません。
https://fei-yen.jp/maya/wordpress/blog/2011/05/05/php%E3%81%A7%E7%94%BB%E5%83%8F%E3%81%AE%E9%A1%9E%E4%BC%BC%E5%BA%A6%E5%88%A4%E5%AE%9A%E3%81%AE%E3%81%A7%E3%81%8D%E3%82%8B%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA/
ひとまず「libpuzzle-0.11.tar.bz2」はダウンロードしました。
私はWindows7でxamppを使いPHPを動かしています。
類似画像の比較のため「libpuzzle」というライブラリを使いたいのですが、インストールのやり方がわかりません。
インストールが簡単とのことで下記のページを参考にしようと思っているのですが、何をやっているのかわかりません。
https://fei-yen.jp/maya/wordpress/blog/2011/05/05/php%E3%81%A7%E7%94%BB%E5%83%8F%E3%81%AE%E9%A1%9E%E4%BC%BC%E5%BA%A6%E5%88%A4%E5%AE%9A%E3%81%AE%E3%81%A7%E3%81%8D%E3%82%8B%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA/
ひとまず「libpuzzle-0.11.tar.bz2」はダウンロードしました。
650デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/12(水) 12:09:08.51ID:t1WfAWi+0 そのURLを見たけど、tarファイルを展開してLinuxでコンパイルしてるよね。
この時点でWindowsはまったく該当しないので見てもわかるわけない。
Windows用のコンパイル済みバイナリをインストールするのが正解かと。
それか、そのファイルをWindowsで自前コンパイルするか。
この時点でWindowsはまったく該当しないので見てもわかるわけない。
Windows用のコンパイル済みバイナリをインストールするのが正解かと。
それか、そのファイルをWindowsで自前コンパイルするか。
651デフォルトの名無しさん (ワッチョイ 5e92-fTNn)
2018/09/12(水) 12:24:56.89ID:/jhmkHwQ0 ありがとうございます。
いくつか調べてlibpuzzleがC言語で作られているはわかりました。
Windowsだとsoファイルではなくdllファイルで動かすみたいだから
libpuzzle.cをコンパイルしてdllにする、という感じなのでしょうか?
いくつか調べてlibpuzzleがC言語で作られているはわかりました。
Windowsだとsoファイルではなくdllファイルで動かすみたいだから
libpuzzle.cをコンパイルしてdllにする、という感じなのでしょうか?
652デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/12(水) 12:36:07.34ID:t1WfAWi+0 はい。恐らく…
653デフォルトの名無しさん (ワッチョイ 5e92-fTNn)
2018/09/12(水) 14:11:08.65ID:/jhmkHwQ0 C言語は…、ちょっというかさっぱりわからないですね…。
GitHubでlibpuzzleの解凍されたフォルダが有りました。
https://github.com/jedisct1/libpuzzle
もし参考になれば
GitHubでlibpuzzleの解凍されたフォルダが有りました。
https://github.com/jedisct1/libpuzzle
もし参考になれば
654デフォルトの名無しさん (ワッチョイ 96d5-tygy)
2018/09/12(水) 16:38:39.22ID:bjh9HqnE0 >>647
そこで言ってるスーパーグローバルの書き換えって $_SESSION のこと?
そこで言ってるスーパーグローバルの書き換えって $_SESSION のこと?
655デフォルトの名無しさん (ワッチョイ 569f-vdZN)
2018/09/12(水) 19:23:24.37ID:t1WfAWi+0 >>654
そう。
言われてハッとしたんだが、もしかして俺すげー嘘ついてる?
フレームワーク無しなら$_SESSIONに代入せざるを得ないか?
何かもう忘れたわ。
適当な記憶でたまに嘘ぶっこくから少し自重する。
そう。
言われてハッとしたんだが、もしかして俺すげー嘘ついてる?
フレームワーク無しなら$_SESSIONに代入せざるを得ないか?
何かもう忘れたわ。
適当な記憶でたまに嘘ぶっこくから少し自重する。
656デフォルトの名無しさん (ワッチョイ ae81-7GfT)
2018/09/12(水) 19:28:11.72ID:WDc70fCa0 面白い議論だと思ってたんだけど
できれば続けてくださいな
セッションは使用禁止にすべきかどうかまで
できれば続けてくださいな
セッションは使用禁止にすべきかどうかまで
657デフォルトの名無しさん (ワッチョイ 96d5-tygy)
2018/09/12(水) 21:31:55.13ID:bjh9HqnE0658デフォルトの名無しさん (ワッチョイ 5e92-fTNn)
2018/09/12(水) 23:14:04.91ID:/jhmkHwQ0 libpuzzleはインストールが困難と判断したので、
他のものを調べたところ、Perceptual Hashが良さそうだったので変更しました。
コンポーザーをダンロードして、インストールはできました。
ですが、実行すると「Uncaught Error: Class 'Jenssegers\ImageHash\ImageHash' not found」といったように認識されません。
Windows7のXAMPPだとuseの書き方が違うのでしょうか?
ソースは以下の通りです。
use Jenssegers\ImageHash\ImageHash;
use Jenssegers\ImageHash\Implementations\DifferenceHash;
$hasher = new ImageHash(new DifferenceHash());
$hash = $hasher->hash('path/to/image.jpg');
echo $hash;
// or
echo $hash->toHex();
他のものを調べたところ、Perceptual Hashが良さそうだったので変更しました。
コンポーザーをダンロードして、インストールはできました。
ですが、実行すると「Uncaught Error: Class 'Jenssegers\ImageHash\ImageHash' not found」といったように認識されません。
Windows7のXAMPPだとuseの書き方が違うのでしょうか?
ソースは以下の通りです。
use Jenssegers\ImageHash\ImageHash;
use Jenssegers\ImageHash\Implementations\DifferenceHash;
$hasher = new ImageHash(new DifferenceHash());
$hash = $hasher->hash('path/to/image.jpg');
echo $hash;
// or
echo $hash->toHex();
659デフォルトの名無しさん (ワッチョイ 5e92-fTNn)
2018/09/12(水) 23:14:32.81ID:/jhmkHwQ0660デフォルトの名無しさん (ワッチョイ 9776-ebpV)
2018/09/13(木) 00:39:50.34ID:Mmakf2Wk0 ちゃんとautoload.phpをrequireしてるか?
661デフォルトの名無しさん (ワッチョイ bf9f-ID1G)
2018/09/13(木) 07:41:47.23ID:WElsz8IU0662デフォルトの名無しさん (ワッチョイ 17b3-+ow7)
2018/09/13(木) 08:13:46.95ID:1dHQYyj40 投稿フォームは、確認画面なくすと session 使う必要がなくて、スマートな実装になるよ。
そもそも確認が必要な内容かどうか検討してみると良いです。
確認が必須なら、モーダルで一旦表示させて投稿させると UX も向上して happy。
ただ、画面はちょっとややこしくなるけどねぇ。。。
そもそも確認が必要な内容かどうか検討してみると良いです。
確認が必須なら、モーダルで一旦表示させて投稿させると UX も向上して happy。
ただ、画面はちょっとややこしくなるけどねぇ。。。
663デフォルトの名無しさん (ワッチョイ 7f92-+ow7)
2018/09/13(木) 09:25:37.97ID:Rrxby3/D0664デフォルトの名無しさん (ワッチョイ 9fd0-cC+K)
2018/09/13(木) 17:07:19.50ID:yxnhKk7t0 >>634のfilter_inputって使い方間違ってるん?(´・ω・`)
665デフォルトの名無しさん (ワッチョイ bf9f-ID1G)
2018/09/13(木) 18:13:28.78ID:WElsz8IU0 美しさはともかく、間違ってはいない。
勘違いしていたのは俺…
申し訳ないです。
勘違いしていたのは俺…
申し訳ないです。
666デフォルトの名無しさん (スッップ Sdbf-t6RF)
2018/09/14(金) 11:13:27.37ID:LYVyvVvXd 提唱者が逃げ出したから、
こういう時にどう使ったら良いか
教えてくれない
こういう時にどう使ったら良いか
教えてくれない
667デフォルトの名無しさん (ワッチョイ 9fd0-cC+K)
2018/09/15(土) 11:16:20.77ID:h4tGgfju0 ユーザー入力を画面上に表示する場合、どんな時でもhtmlspecialchars関数を使った方がいいんですか !?
668デフォルトの名無しさん (ワッチョイ 17b3-+ow7)
2018/09/15(土) 11:29:57.48ID:4K9/kzuG0 >>667
個人的にはここの説明が納得しやすかった
https://qiita.com/mpyw/items/19e6fed835ccdbcb0d6d
画面表示で Content-Type: text/plain の時は、当然だけど必要無い。
text/html な中で、text/plain はちょっと思いつかなかった。
だれかフォローよろしくw
個人的にはここの説明が納得しやすかった
https://qiita.com/mpyw/items/19e6fed835ccdbcb0d6d
画面表示で Content-Type: text/plain の時は、当然だけど必要無い。
text/html な中で、text/plain はちょっと思いつかなかった。
だれかフォローよろしくw
669デフォルトの名無しさん (ワッチョイ 97b8-Moip)
2018/09/16(日) 09:00:18.99ID:yeSA5Nar0 考えられるパターンとしては
1.入力値の検証はせずそのまま出力する
2.入力値の検証はせずhtmlspecialcharsを使う
3.入力値の検証→問題はないのでそのまま出力
4.入力値の検証→問題なのでhtmlspecialcharsを使う
5.入力値の検証→問題はないがhtmlspecialcharsを使う
6.入力値を出力前に無害化してそのまま出力
1は当然やっちゃだめ
6は元の入力値と異なる可能性が生まれるので使うなら重要でない箇所限定(非推奨)
5は冗長だが5が一番おすすめ
1.入力値の検証はせずそのまま出力する
2.入力値の検証はせずhtmlspecialcharsを使う
3.入力値の検証→問題はないのでそのまま出力
4.入力値の検証→問題なのでhtmlspecialcharsを使う
5.入力値の検証→問題はないがhtmlspecialcharsを使う
6.入力値を出力前に無害化してそのまま出力
1は当然やっちゃだめ
6は元の入力値と異なる可能性が生まれるので使うなら重要でない箇所限定(非推奨)
5は冗長だが5が一番おすすめ
670デフォルトの名無しさん (ワッチョイ 9f80-bWaM)
2018/09/16(日) 19:43:02.43ID:Fs79WbqO0 phpの質問じゃないかもしれないんだけど
URLから指定のディレクトリにアクセスした時に
ファイル名が何だろうと指定のファイルを参照させることって出来ますか?
hoge.com/rand/test.txt
hoge.com/rand/aaa.jpg
randディレクトリにアクセスしたら
ファイルの有無に関わらず
hoge.com/rand/index.phpを参照させて
test.txtやaaa.jpgのURL文字列に応じて
phpが振る舞いを変えてコンテンツを表示させたいです
そんなこと可能でしょうか?
URLから指定のディレクトリにアクセスした時に
ファイル名が何だろうと指定のファイルを参照させることって出来ますか?
hoge.com/rand/test.txt
hoge.com/rand/aaa.jpg
randディレクトリにアクセスしたら
ファイルの有無に関わらず
hoge.com/rand/index.phpを参照させて
test.txtやaaa.jpgのURL文字列に応じて
phpが振る舞いを変えてコンテンツを表示させたいです
そんなこと可能でしょうか?
671デフォルトの名無しさん (ワッチョイ 9f80-bWaM)
2018/09/16(日) 19:57:17.91ID:Fs79WbqO0 要するに
hoge.com/rand/aaa.jpg
を見てるつもりで
hoge.com/rand/index.php?q=aaa.jpg
で内部的に処理して返したいってことです
hoge.com/rand/aaa.jpg
を見てるつもりで
hoge.com/rand/index.php?q=aaa.jpg
で内部的に処理して返したいってことです
672デフォルトの名無しさん (ワッチョイ 9776-ebpV)
2018/09/16(日) 20:17:40.26ID:xrMzIoGe0 mod_rewrite使うとか
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- 「偽サッチャー」「自滅的」「時代遅れ」 高市首相の経済政策を海外メディアが酷評 [蚤の市★]
- 【ド軍】山本由伸、WBC出場を決断!ドジャースが本人の意向を尊重、佐々木朗希はチームが故障歴を懸念で不参加 [鉄チーズ烏★]
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 【未確認生ハメ情報】安倍晋三が高市早苗氏とチョメチョメしていたという噂が囁かれる。 [928194223]
- キ...キャ...キャ...キャン...
- 標準化は他人にさせるもの 属人化は自らするもの
- 賞与!賞与!賞与!賞与!賞与!
- 【悲報】女さん「ハローワークで仕事を探してる3-40代の中年男性いるでしょ。あれ何?」 [483447288]
- バンドリのポピパのメンバーの中で誰か一人と抱き合ってベロチューしろと言われたら?
