!extend::vvvvv:1000:512
!extend::vvvvv:1000:512
!extend::vvvvv:1000:512
★スレ立て時 ↑ が3行以上になるようコピペ
PHPに関する質問スレです
前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 11
https://mevius.5ch.net/test/read.cgi/tech/1591334726/
次スレは>>980以降
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
探検
【PHP】下らねぇ質問はここに書き込みやがれ 12
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ f6ad-UoZY)
2021/04/29(木) 12:39:39.75ID:P0iZ4CYt0402デフォルトの名無しさん (スフッ Sd4a-Sdyw)
2021/07/05(月) 11:03:40.35ID:fHx0Uh9Wd403デフォルトの名無しさん (ワッチョイ 9ebb-DUKI)
2021/07/05(月) 11:09:11.53ID:W/ubV+NK0 >>399
要件を整理すると「特定の範囲内の数値を正とする」ってことだと思うので、filter_input()使うのが楽だと思う
要件を整理すると「特定の範囲内の数値を正とする」ってことだと思うので、filter_input()使うのが楽だと思う
404デフォルトの名無しさん (ワッチョイ bb63-kf3V)
2021/07/05(月) 11:55:59.13ID:Fmkhs1Zc0 必要桁の数値による正規表現が簡単だぞ
405デフォルトの名無しさん (ワッチョイ 2f08-c9XW)
2021/07/05(月) 12:18:25.72ID:kyq5FLmC0 >>394
strpos()で「〜を含む」という処理を書きたいならこう書くこと
※理由はPHPマニュアルに書いてある筈
×:strpos($now_url, $res_url)
○:strpos($now_url, $res_url) !== false
極めつけはこれ
×:$match_responsive = true
○:$match_responsive ==== TRUE
$match_responsiveに true を入れてるのだから、結果は常に真になるぞ?
strpos()で「〜を含む」という処理を書きたいならこう書くこと
※理由はPHPマニュアルに書いてある筈
×:strpos($now_url, $res_url)
○:strpos($now_url, $res_url) !== false
極めつけはこれ
×:$match_responsive = true
○:$match_responsive ==== TRUE
$match_responsiveに true を入れてるのだから、結果は常に真になるぞ?
406デフォルトの名無しさん (ワッチョイ 2f08-c9XW)
2021/07/05(月) 12:19:27.72ID:kyq5FLmC0 >>399
>>402
色々間違ってる
・$_POST['te'] が null(未定義) だった場合にそのコードはエラーになる(もしエラーにならないならエラー設定を見直すこと)
・半角数字の入力を期待しているのだから、使うのは mb_strlen() ではなく strlen()
・書くなら !mb_strlen($_POST['te']) == 8 ではなくて mb_strlen($_POST['te']) !== 8
・== ではなく === で問題なく動くコードを書くくせを付けた方がいい
・省略しただけかもしれないが、$err をきちんと初期化しよう
以上を修正したサンプル
https://paiza.io/projects/9C1pkzuMh9Q3ao3M7q6pCA
エラー設定のやり方
https://qiita.com/fallout/items/31f793708b243033fab1
>>402
色々間違ってる
・$_POST['te'] が null(未定義) だった場合にそのコードはエラーになる(もしエラーにならないならエラー設定を見直すこと)
・半角数字の入力を期待しているのだから、使うのは mb_strlen() ではなく strlen()
・書くなら !mb_strlen($_POST['te']) == 8 ではなくて mb_strlen($_POST['te']) !== 8
・== ではなく === で問題なく動くコードを書くくせを付けた方がいい
・省略しただけかもしれないが、$err をきちんと初期化しよう
以上を修正したサンプル
https://paiza.io/projects/9C1pkzuMh9Q3ao3M7q6pCA
エラー設定のやり方
https://qiita.com/fallout/items/31f793708b243033fab1
407デフォルトの名無しさん (ワッチョイ 2f08-c9XW)
2021/07/05(月) 12:20:57.53ID:kyq5FLmC0408デフォルトの名無しさん (オッペケ Sr23-x1uT)
2021/07/06(火) 14:16:58.59ID:K/Yz4VXdr //ここにメイン部分のコードを記述 ループしないので <php if (have_posts()) : the_post(); >
<!--クラスつきのタイトルを追加-->
<h3><php the_title(); ></h3>
<!--クラスつきの日付けを追加-->
<div class="posted_date">
<php echo get_the_date(); ?> </div>
<!--リンククラス付きのカテゴリーを追加-->
<php
$categories = get_the_category();
if ( $categories ) {
echo '<ul>';
foreach ( $categories as $category ) {
echo '<li class="cat2"'.$category->slug.'"><a href="'.esc_url(get_category_link($category->term_id)).'">'.$category->name.'</a></li>';
}
echo '</ul>';
} ?>
<!--リンククラス付きのコメント数を追加-->
<php $num_comments = get_comments_number();
if ( $num_comments == 0 ) {
$comments = __('No Comments'); // 댓글이 없을 경우
} elseif ( $num_comments > 1 ) {
$comments = $num_comments . __(' Comments'); // 댓글이 2개 이상일 경우
} else {
$comments = __('1 Comment'); // 댓글이 1개일 경우
}
$write_comments = '<span class="singlecomments2"><a href="' . get_comments_link() .'">'. $comments.'</a></span>';
echo $write_comments;?>
<!--クラス付きの内容を追加-->
<div class="posted_content">
<php echo the_content(); > </div>
<php
endif;?> で出力してるんですが<!--クラス付きの内容を追加-->の部分のみ繰り返し出力する場合どうすればいいんでしょうか?
<!--クラスつきのタイトルを追加-->
<h3><php the_title(); ></h3>
<!--クラスつきの日付けを追加-->
<div class="posted_date">
<php echo get_the_date(); ?> </div>
<!--リンククラス付きのカテゴリーを追加-->
<php
$categories = get_the_category();
if ( $categories ) {
echo '<ul>';
foreach ( $categories as $category ) {
echo '<li class="cat2"'.$category->slug.'"><a href="'.esc_url(get_category_link($category->term_id)).'">'.$category->name.'</a></li>';
}
echo '</ul>';
} ?>
<!--リンククラス付きのコメント数を追加-->
<php $num_comments = get_comments_number();
if ( $num_comments == 0 ) {
$comments = __('No Comments'); // 댓글이 없을 경우
} elseif ( $num_comments > 1 ) {
$comments = $num_comments . __(' Comments'); // 댓글이 2개 이상일 경우
} else {
$comments = __('1 Comment'); // 댓글이 1개일 경우
}
$write_comments = '<span class="singlecomments2"><a href="' . get_comments_link() .'">'. $comments.'</a></span>';
echo $write_comments;?>
<!--クラス付きの内容を追加-->
<div class="posted_content">
<php echo the_content(); > </div>
<php
endif;?> で出力してるんですが<!--クラス付きの内容を追加-->の部分のみ繰り返し出力する場合どうすればいいんでしょうか?
409デフォルトの名無しさん (ワッチョイ 1e10-GLL6)
2021/07/06(火) 14:57:40.96ID:EJPu27Tj0 暇つぶしに過去作っていたプログラムを改修していたのですが、
関数ばかりのライブラリが、わりと使い勝って良くて軽量だったりします。
セキュリティを考慮すること無く、CRUD程度の操作なら
フレームワーク使わなくても良いと思ったりしたのですが、
みなさんはやっぱり自作の物は使わないようにしてますか?
関数ばかりのライブラリが、わりと使い勝って良くて軽量だったりします。
セキュリティを考慮すること無く、CRUD程度の操作なら
フレームワーク使わなくても良いと思ったりしたのですが、
みなさんはやっぱり自作の物は使わないようにしてますか?
410デフォルトの名無しさん (ワッチョイ ab2c-Ijop)
2021/07/07(水) 01:26:08.59ID:bUHYGk470 Ruby のERB(埋め込みRuby)みたいに、
文字列をつなげて、HTML を作るのではなく、
逆に、HTML中に、Rubyの式を埋め込めば?
<%= 〜 %> は出力される。
<% 〜 %> は出力されない
<table border="1" cellpadding="4">
<% @items.each do |fruit, price| %>
<tr>
<th><%= fruit %></th>
<td><%= price %>円</td>
</tr>
<% end %>
</table>
文字列をつなげて、HTML を作るのではなく、
逆に、HTML中に、Rubyの式を埋め込めば?
<%= 〜 %> は出力される。
<% 〜 %> は出力されない
<table border="1" cellpadding="4">
<% @items.each do |fruit, price| %>
<tr>
<th><%= fruit %></th>
<td><%= price %>円</td>
</tr>
<% end %>
</table>
411デフォルトの名無しさん (ワッチョイ 8aa9-Q9JX)
2021/07/07(水) 01:32:32.70ID:7x6smrJ30412デフォルトの名無しさん (ワッチョイ 2f08-c9XW)
2021/07/07(水) 14:02:49.29ID:Mv2t2pQw0413410 (ワッチョイ ab2c-Ijop)
2021/07/07(水) 21:21:40.74ID:bUHYGk470 趣味・遊びなら、好きにすればよい
プロ・仕事なら、Ruby on Rails
プロ・仕事なら、Ruby on Rails
414デフォルトの名無しさん (ワッチョイ ca7c-U8JP)
2021/07/08(木) 08:53:13.93ID:Yr3Bg0Mz0 本当のプロならPHPのスレで他の言語を推したりしないw
本当のプロならRuby(笑)なんて採用しないw
本当のプロならRuby(笑)なんて採用しないw
415デフォルトの名無しさん (ワッチョイ 2f08-c9XW)
2021/07/08(木) 19:06:14.53ID:yX5z+H5y0 相手にしなさんな
416デフォルトの名無しさん (オッペケ Sra1-AlcT)
2021/07/09(金) 18:15:18.49ID:KkNlGqxZr <php $args = array('posts_per_page' => 2,
'orderby' => 'date',);$posts_array = get_posts( $args );if (!empty($posts)):>
<php foreach($posts_array as $post):setup_postdata($posts_array);>
<a href="<php echo get_permalink();>"><div class="img-wrap">
画像
<php if ( has_post_thumbnail()){
//存在
the_post_thumbnail();}
else {
//存在しない
echo '<img src="noimage.jpg">';}></div>
タイトル
<h2><php the_title(); ></h2>
日付け
<php the_time('Y/m/d');>
カテゴリー
<php $categories = get_the_category();if ( $categories ) {echo '<ul>';
foreach ( $categories as $category ) {echo '<li class="cat1"'.$category->slug.'"><a href="'.esc_url(get_category_link($category->term_id)).'">'.$category->name.'</a></li>';}
echo '</ul>';}>
コメント数
<php $num_comments = get_comments_number();if ( $num_comments == 0 ) {$comments = __('No Comments');
} elseif ( $num_comments > 1 ) {$comments = $num_comments . __(' Comments'); } else {$comments = __('1 Comment');
$write_comments = '<span class="singlecomments"><a href="' . get_comments_link() .'">'. $comments.'</a></span>';echo $write_comments;>
コメントの抜粋
<php the_excerpt();>
記事を読む
<a href="<php the_permalink();>">記事を読む</a> <php endforeach;>
<php else:>
<div class="newarrival_nodata"><p>記事</p></div>
<php endif;wp_reset_postdata();>
ページナビを実装したいんですが、$nextpostと$prevpostを使って2ページ目を表示させる場合どういうコードを書けばよいのでしょうか?
'orderby' => 'date',);$posts_array = get_posts( $args );if (!empty($posts)):>
<php foreach($posts_array as $post):setup_postdata($posts_array);>
<a href="<php echo get_permalink();>"><div class="img-wrap">
画像
<php if ( has_post_thumbnail()){
//存在
the_post_thumbnail();}
else {
//存在しない
echo '<img src="noimage.jpg">';}></div>
タイトル
<h2><php the_title(); ></h2>
日付け
<php the_time('Y/m/d');>
カテゴリー
<php $categories = get_the_category();if ( $categories ) {echo '<ul>';
foreach ( $categories as $category ) {echo '<li class="cat1"'.$category->slug.'"><a href="'.esc_url(get_category_link($category->term_id)).'">'.$category->name.'</a></li>';}
echo '</ul>';}>
コメント数
<php $num_comments = get_comments_number();if ( $num_comments == 0 ) {$comments = __('No Comments');
} elseif ( $num_comments > 1 ) {$comments = $num_comments . __(' Comments'); } else {$comments = __('1 Comment');
$write_comments = '<span class="singlecomments"><a href="' . get_comments_link() .'">'. $comments.'</a></span>';echo $write_comments;>
コメントの抜粋
<php the_excerpt();>
記事を読む
<a href="<php the_permalink();>">記事を読む</a> <php endforeach;>
<php else:>
<div class="newarrival_nodata"><p>記事</p></div>
<php endif;wp_reset_postdata();>
ページナビを実装したいんですが、$nextpostと$prevpostを使って2ページ目を表示させる場合どういうコードを書けばよいのでしょうか?
417デフォルトの名無しさん (ワッチョイ 1bad-zc28)
2021/07/09(金) 18:28:51.80ID:Bz949MzB0 wordpressの話はwordpressスレへ
418デフォルトの名無しさん (オッペケ Sra1-4x/S)
2021/07/09(金) 19:09:49.46ID:KkNlGqxZr >>417
向こうで聞いても教えて貰えなくて…
向こうで聞いても教えて貰えなくて…
419デフォルトの名無しさん (ワッチョイ 2302-K8O7)
2021/07/09(金) 19:23:26.52ID:aS/fIL1f0 >>418
ナビに関係ないコードばかりだし
ブロックに波括弧とコロンが混在してて見づらいし
$nextpostと$prevpostを使ってとか言いながら、$nextpostと$prevpostがそもそもコード内に存在しないし
質問の仕方が悪い
ナビに関係ないコードばかりだし
ブロックに波括弧とコロンが混在してて見づらいし
$nextpostと$prevpostを使ってとか言いながら、$nextpostと$prevpostがそもそもコード内に存在しないし
質問の仕方が悪い
420デフォルトの名無しさん (オッペケ Sra1-4x/S)
2021/07/09(金) 20:07:03.69ID:KkNlGqxZr421デフォルトの名無しさん (オッペケ Sra1-AlcT)
2021/07/09(金) 20:18:24.64ID:KkNlGqxZr https://codepen.io/sadsfff/pen/bGWeOOo
このコードを書くとエラーが出ます。どこが間違っているのでしょうか?
syntax error, unexpected end of file, expecting elseif (T_ELSEIF) or else (T_ELSE) or endif (T_ENDIF)
このコードを書くとエラーが出ます。どこが間違っているのでしょうか?
syntax error, unexpected end of file, expecting elseif (T_ELSEIF) or else (T_ELSE) or endif (T_ENDIF)
422410 (ワッチョイ 852c-xNKK)
2021/07/09(金) 20:57:16.85ID:TIX9j1Dy0 >>410
に書いたみたいに、HTML 内に、PHP の構文を埋め込めば?
逆に、PHPで文字列をつなげて、HTMLを作ると分かりにくい
Ruby on Rails では、全部そう。
HTML内に、Rubyの式を埋め込む
<%= 〜 %> は、HTMLに出力される。
<% 〜 %> は出力されない
Rubyで文字列をつなげて、HTMLを作らない
なぜかと言うと、パーシャル・部分テンプレートにして、
その部分だけを別ファイルにして切り出せないから
それに文字列でつなげて、HTMLを作ると、
SQL インジェクションみたいに、
相手が情報を抜くような命令を入れてくるので、超危険!
だから、Railsでは、a.html.erb みたいに、
ERB(埋め込みRuby)で書いて、それをHTMLにする
に書いたみたいに、HTML 内に、PHP の構文を埋め込めば?
逆に、PHPで文字列をつなげて、HTMLを作ると分かりにくい
Ruby on Rails では、全部そう。
HTML内に、Rubyの式を埋め込む
<%= 〜 %> は、HTMLに出力される。
<% 〜 %> は出力されない
Rubyで文字列をつなげて、HTMLを作らない
なぜかと言うと、パーシャル・部分テンプレートにして、
その部分だけを別ファイルにして切り出せないから
それに文字列でつなげて、HTMLを作ると、
SQL インジェクションみたいに、
相手が情報を抜くような命令を入れてくるので、超危険!
だから、Railsでは、a.html.erb みたいに、
ERB(埋め込みRuby)で書いて、それをHTMLにする
423デフォルトの名無しさん (ワッチョイ 2302-K8O7)
2021/07/09(金) 21:46:12.63ID:aS/fIL1f0 >>421
そもそも動かないコードとかさぁ
仮にナビができたとしても動かないじゃん
エラーの内容IFのタグの問題だよね
タグが合わないのはRSSの時に、タグ統一して不要な部分一旦コメントするなりして流れを追えって言われたよね?
何も進歩してないな、やれやれ…
そもそも動かないコードとかさぁ
仮にナビができたとしても動かないじゃん
エラーの内容IFのタグの問題だよね
タグが合わないのはRSSの時に、タグ統一して不要な部分一旦コメントするなりして流れを追えって言われたよね?
何も進歩してないな、やれやれ…
424デフォルトの名無しさん (アウアウウー Sa09-4x/S)
2021/07/09(金) 22:34:16.27ID:SqCApkwQa425デフォルトの名無しさん (ワッチョイ a563-0sKs)
2021/07/09(金) 22:39:05.83ID:nNC4f6Lr0 文法エラーくらいは自分で見つけられないと
426デフォルトの名無しさん (ワッチョイ 2302-K8O7)
2021/07/09(金) 23:06:03.20ID:aS/fIL1f0 >>424
if やら foreach やらのブロック開始終了タグが波括弧だったりコロンだったりってのを直していくってことね
wordpress触る以上埋め込みが混在するコードを追う能力は必須になるから、この程度のこと自力で解決できないならwordpress触るの諦めたほうがいいよ
if やら foreach やらのブロック開始終了タグが波括弧だったりコロンだったりってのを直していくってことね
wordpress触る以上埋め込みが混在するコードを追う能力は必須になるから、この程度のこと自力で解決できないならwordpress触るの諦めたほうがいいよ
427デフォルトの名無しさん (ワッチョイ 852c-xNKK)
2021/07/09(金) 23:58:42.15ID:TIX9j1Dy0 Web制作管理板のWordPress のスレで、やってるみたい
5ch ではマルチポストは禁止だから、このスレでは話を続けない方がよい。
向こうのスレで議論してください!
1つのスレだけにしないと、答える人も同じ事を調べたりするので、無駄
5ch ではマルチポストは禁止だから、このスレでは話を続けない方がよい。
向こうのスレで議論してください!
1つのスレだけにしないと、答える人も同じ事を調べたりするので、無駄
428デフォルトの名無しさん (ワッチョイ 6352-Q14N)
2021/07/10(土) 02:46:38.45ID:gwvQHAgv0 Rubyバカが自分を棚にあげて何か言ってる
429デフォルトの名無しさん (ワッチョイ 15c5-jjVx)
2021/07/10(土) 02:53:56.58ID:etRC44er0430デフォルトの名無しさん (ワッチョイ cbbb-NBD7)
2021/07/10(土) 06:01:14.33ID:BwwaALiC0431デフォルトの名無しさん (ワッチョイ 234f-jjVx)
2021/07/10(土) 08:21:25.24ID:l5rpHYDO0432デフォルトの名無しさん (ワッチョイ a563-0sKs)
2021/07/10(土) 10:30:31.94ID:BPX48WFJ0 同じ質問を至るところでして、回答者がいても返信すらしないというのはよくある事
書き捨てする様な質問には誰も答えないし、迷惑千万
書き捨てする様な質問には誰も答えないし、迷惑千万
433デフォルトの名無しさん (ワッチョイ e35c-jjVx)
2021/07/10(土) 12:57:51.58ID:B4xS3BY90 俺はヒールに徹するルビー君が結構好きだったんだけど
常識を語るようになったら終わりだね
常識を語るようになったら終わりだね
434デフォルトの名無しさん (テテンテンテン MMcb-2LG+)
2021/07/10(土) 13:45:53.05ID:npYW/9LsM >>431
マルチポストの定義すら分からんのか
マルチポストの定義すら分からんのか
435デフォルトの名無しさん (ワッチョイ 239f-jjVx)
2021/07/10(土) 17:15:08.23ID:xuQr++Bu0 >>434
お前がな
お前がな
436デフォルトの名無しさん (オッペケ Sra1-AlcT)
2021/07/10(土) 23:37:27.16ID:L/F3nxmer 原因が少しわかりました
get_posts()は取得した投稿データを配列として返すのに対し、WP_Queryクラスを利用した場合は、データベース検索の条件やその結果がデータとして保持されるため、ループ内での条件分岐など、より高度なサブループの制御が可能です。
昨日書いたコードは$args = array()を2度分けて書いていたこと、
$posts_array = get_posts( $args );で投稿内容の取得をしているのに対し、
$the_query = new WP_Query( $args );でページナビの内容を取得しているので、
ひもずけされておらずページ番号と内容がマッチしておらず2ページ目をクリックしても内容のリロードができてませんでした。
一つ聞きたいのは、
WP_Queryとget_postsの違いは何でしょうか?
投稿内容をページナビ付きで表示する場合WP_Query() get_thumnailとかで投稿画像など取得できるのでしょうか?
get_posts()は取得した投稿データを配列として返すのに対し、WP_Queryクラスを利用した場合は、データベース検索の条件やその結果がデータとして保持されるため、ループ内での条件分岐など、より高度なサブループの制御が可能です。
昨日書いたコードは$args = array()を2度分けて書いていたこと、
$posts_array = get_posts( $args );で投稿内容の取得をしているのに対し、
$the_query = new WP_Query( $args );でページナビの内容を取得しているので、
ひもずけされておらずページ番号と内容がマッチしておらず2ページ目をクリックしても内容のリロードができてませんでした。
一つ聞きたいのは、
WP_Queryとget_postsの違いは何でしょうか?
投稿内容をページナビ付きで表示する場合WP_Query() get_thumnailとかで投稿画像など取得できるのでしょうか?
437デフォルトの名無しさん (ワッチョイ 852c-KGMb)
2021/07/11(日) 02:17:32.48ID:lZiRxAj00 WordPress の質問ですか?
WordPressの事なら、Web制作管理板のWordPressのスレに書き込んでください!
5ch はマルチポスト禁止だから、
同じ質問を、複数のスレに書くのは禁止!
このスレではなく、WordPressのスレの方で聞く方がよい
WordPressの事なら、Web制作管理板のWordPressのスレに書き込んでください!
5ch はマルチポスト禁止だから、
同じ質問を、複数のスレに書くのは禁止!
このスレではなく、WordPressのスレの方で聞く方がよい
438デフォルトの名無しさん (オッペケ Sra1-AlcT)
2021/07/12(月) 01:09:59.12ID:cRbCoWRWr439デフォルトの名無しさん (ワッチョイ 8d54-8NFQ)
2021/07/12(月) 16:45:41.95ID:ihSDWtOf0 Po@「
440デフォルトの名無しさん (ワッチョイ fd1d-6Mb1)
2021/07/12(月) 17:49:52.30ID:ZPBMd6Y/0 >>439
コラコラ
コラコラ
441デフォルトの名無しさん (スププ Sd43-pM4a)
2021/07/12(月) 22:17:47.32ID:SYagZpGJd アップロードされた画像をconstで定義されてるパス先に移動させたいんですが上手く出来ないので教えてください
move_uploaded_file($upload_file['tmp_name'],DIR_IMG.$new_file_name);
DIR_IMGには相対パスが入ってます('../img/など)
move_uploaded_file($upload_file['tmp_name'],DIR_IMG.$new_file_name);
DIR_IMGには相対パスが入ってます('../img/など)
442デフォルトの名無しさん (ワッチョイ a37c-C4NE)
2021/07/13(火) 13:02:35.06ID:I15vJP3h0 そもそもアップロードされたファイルなのかどうか
is_uploaded_file()でチェック出来る
そうじゃないならrename()使え
その相対パスあってる?
realpath()で確認してみる
相対パスがあってたとして、パーミッションチェックした?
is_uploaded_file()でチェック出来る
そうじゃないならrename()使え
その相対パスあってる?
realpath()で確認してみる
相対パスがあってたとして、パーミッションチェックした?
443デフォルトの名無しさん (ワッチョイ 2342-6Mb1)
2021/07/14(水) 19:07:13.52ID:dWCeWde70 $fruits = array(
'banana' => 'yellow',
'apple' => 'red',
);
$coffee = 'cocacolla:geogia';
function morning($fruits,$coffee) {
$fruits['strawberry'] = 'red';
$coffee = 'suntory=boss';
return $fruits;
}
$fruits = morning($fruits,$coffee);
var_dump($morning);
echo '<br>'.$coffee;
?>
すいません。
phpでは、他の言語のように、関数外で定義された変数も
関数内では有効ではないのですね。。
で、関数外で定義された変数は、引数で受け取り、
returnで返すと、有効になることもわかりました。
=という認識であっていますか?
では、更新したい変数が2つあった場合どのようにすればいいでしょうか?
たとえば、上でいうところの$coffeeを更新したいのです。
'banana' => 'yellow',
'apple' => 'red',
);
$coffee = 'cocacolla:geogia';
function morning($fruits,$coffee) {
$fruits['strawberry'] = 'red';
$coffee = 'suntory=boss';
return $fruits;
}
$fruits = morning($fruits,$coffee);
var_dump($morning);
echo '<br>'.$coffee;
?>
すいません。
phpでは、他の言語のように、関数外で定義された変数も
関数内では有効ではないのですね。。
で、関数外で定義された変数は、引数で受け取り、
returnで返すと、有効になることもわかりました。
=という認識であっていますか?
では、更新したい変数が2つあった場合どのようにすればいいでしょうか?
たとえば、上でいうところの$coffeeを更新したいのです。
444デフォルトの名無しさん (ワッチョイ 2342-6Mb1)
2021/07/14(水) 19:09:54.91ID:dWCeWde70 訂正::すいません。
×var_dump($morning);
〇var_dump($fruits);
×var_dump($morning);
〇var_dump($fruits);
445デフォルトの名無しさん (ワッチョイ a37c-C4NE)
2021/07/14(水) 19:40:05.21ID:b60WN8TB0 グローバル変数なら別にスコープ関係無い筈だがそれ前提は設計的にどうかと思うので
以下の方法のどちらかを使う方が良いだろう
参照で渡す
function test(&$a) {
$aへの代入は関数で渡した変数に及ぶ
別にreturnする必要は無い
}
複数の結果をリターンする
function test2()
{
return [1,2];
}
list($a,$b) = test();
$aと$bに結果が入る
以下の方法のどちらかを使う方が良いだろう
参照で渡す
function test(&$a) {
$aへの代入は関数で渡した変数に及ぶ
別にreturnする必要は無い
}
複数の結果をリターンする
function test2()
{
return [1,2];
}
list($a,$b) = test();
$aと$bに結果が入る
446デフォルトの名無しさん (ワッチョイ 2342-6Mb1)
2021/07/14(水) 20:25:55.80ID:dWCeWde70 よくわかりました。
関数外に変数を定義したからといって、
global変数になるわけじゃないんですね。
ありがとございました。
参照渡しか、global変数の定義か、どちらかでやっていきます。
関数外に変数を定義したからといって、
global変数になるわけじゃないんですね。
ありがとございました。
参照渡しか、global変数の定義か、どちらかでやっていきます。
447デフォルトの名無しさん (ワッチョイ 852c-KGMb)
2021/07/15(木) 00:16:59.54ID:gFOIdhYR0 Ruby も珍しく、厳格な関数スコープ。
関数外の変数を、関数内で参照できない
引数渡しか、クラス・モジュール化して使うなどする
関数外の変数を、関数内で参照できない
引数渡しか、クラス・モジュール化して使うなどする
448デフォルトの名無しさん (ワッチョイ 0d08-6wWl)
2021/07/15(木) 14:33:47.08ID:Hy5PN9MF0 >>446
まず「スコープ」という概念について勉強しよう
https://www.php.net/manual/ja/language.variables.scope.php
それが理解できたら次は「グローバル空間」について
https://www.php.net/manual/ja/language.namespaces.global.php
それが理解できたら次は「名前空間」について
https://www.php.net/manual/ja/language.namespaces.php
今は野球のルールを知らないのに野球やってる状態
PHPマニュアルは優秀だから大抵の事は書いてある
最低限のルールは覚えよう
まず「スコープ」という概念について勉強しよう
https://www.php.net/manual/ja/language.variables.scope.php
それが理解できたら次は「グローバル空間」について
https://www.php.net/manual/ja/language.namespaces.global.php
それが理解できたら次は「名前空間」について
https://www.php.net/manual/ja/language.namespaces.php
今は野球のルールを知らないのに野球やってる状態
PHPマニュアルは優秀だから大抵の事は書いてある
最低限のルールは覚えよう
449デフォルトの名無しさん (ワッチョイ 0d08-6wWl)
2021/07/15(木) 14:39:40.15ID:Hy5PN9MF0 >>441
その質問には超能力者しか答えられない
とりあえず、以下を参考にエラーを出力させよう
https://qiita.com/fallout/items/31f793708b243033fab1
次に、そのエラー内容をきちんと読もう
中学レベルの英語力で読めるので
そのエラーを読んでも意味が理解できないなら、エラー内容を転載して質問
俺らはエスパーじゃないw
その質問には超能力者しか答えられない
とりあえず、以下を参考にエラーを出力させよう
https://qiita.com/fallout/items/31f793708b243033fab1
次に、そのエラー内容をきちんと読もう
中学レベルの英語力で読めるので
そのエラーを読んでも意味が理解できないなら、エラー内容を転載して質問
俺らはエスパーじゃないw
450デフォルトの名無しさん (ワッチョイ e3a7-wTJ1)
2021/07/15(木) 20:53:46.77ID:jGrj3A7F0 >>443
なんとなく設計がよくない気がする
$fruits、$coffeeは、別々の関数で処理させて、returnはそれぞれ1つの方がよいと思う
無理にまとめると関数の独立性を損ねるし、それに参照渡しもlist関数も直感的でなく可読性が落ちる
なんとなく設計がよくない気がする
$fruits、$coffeeは、別々の関数で処理させて、returnはそれぞれ1つの方がよいと思う
無理にまとめると関数の独立性を損ねるし、それに参照渡しもlist関数も直感的でなく可読性が落ちる
451デフォルトの名無しさん (ワッチョイ 5a42-E0YB)
2021/07/17(土) 05:15:45.31ID:YBqRFemK0453デフォルトの名無しさん (オッペケ Sr75-VsZy)
2021/07/17(土) 18:21:09.31ID:ohkviaGsr 指定画像を出力したうえでメニューを作りたい
<php
header('Content-Type: image/jpg');
readfile('uploads/2021/07/7mgpH3K.jpg');
>
で画像の取得はできたのですが、
html文を続けて出力するとエラー
php文を続けても画像しか表示されません。
おそらく器しかなく受け皿のhtmlがないので画像ファイルとして認識されてしまっているのが原因だと思います。
<php
header('Content-Type: image/jpg');
readfile('wp-content/uploads/2021/07/7mgpH3K.jpg');
>
のあとに続けて画像 画像 メニュー 画像とへっだーナビ風に<table>にしたい場合どうすればよいでしょうか?
<php
header('Content-Type: image/jpg');
readfile('uploads/2021/07/7mgpH3K.jpg');
>
で画像の取得はできたのですが、
html文を続けて出力するとエラー
php文を続けても画像しか表示されません。
おそらく器しかなく受け皿のhtmlがないので画像ファイルとして認識されてしまっているのが原因だと思います。
<php
header('Content-Type: image/jpg');
readfile('wp-content/uploads/2021/07/7mgpH3K.jpg');
>
のあとに続けて画像 画像 メニュー 画像とへっだーナビ風に<table>にしたい場合どうすればよいでしょうか?
454デフォルトの名無しさん (オッペケ Sr75-VsZy)
2021/07/17(土) 18:25:44.28ID:ohkviaGsr 画像が画面いっぱいに表示されるということは別のファイルに出力するということですかね、
複数表示してcssを付与するのはどうすればよいのでしょうか?
複数表示してcssを付与するのはどうすればよいのでしょうか?
455蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdfa-rTLR)
2021/07/17(土) 18:54:11.12ID:UtbSZ1Qtd htmlの中にtable出力、その中でimg要素をsrc属性を付けて複数指定する。ブラウザはsrc属性付きのimgのイメージを自動的に読み込む。
456デフォルトの名無しさん (オッペケ Sr75-VsZy)
2021/07/17(土) 20:16:21.59ID:ohkviaGsr >>455
すみません、過去の質問を頼りに画像出力について検索したのですが、https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1344620588
PHPで画像データを読み込んで出力する場合は、IMGタグを
<IMG src="ooo.php?img=gazou.png">
PHPは
if($_GET['img']){
print file_get_contents($_GET['img']);
exit();
}
のようにします。
とありますが、<img src="img.php?img=uploads/2021/07/7mgpH3K.jpg">で
img.phpの中のuploads/2021/07/7mgpH3K.jpgを出力するとしても画像が出力できません。
何が原因でしょうか?
すみません、過去の質問を頼りに画像出力について検索したのですが、https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1344620588
PHPで画像データを読み込んで出力する場合は、IMGタグを
<IMG src="ooo.php?img=gazou.png">
PHPは
if($_GET['img']){
print file_get_contents($_GET['img']);
exit();
}
のようにします。
とありますが、<img src="img.php?img=uploads/2021/07/7mgpH3K.jpg">で
img.phpの中のuploads/2021/07/7mgpH3K.jpgを出力するとしても画像が出力できません。
何が原因でしょうか?
457蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdfa-rTLR)
2021/07/17(土) 21:00:58.68ID:UtbSZ1Qtd >>456
スラッシュをエスケープするにしてもその書き方は任意のパス名を受け入れるから危険だよ。
スラッシュをエスケープするにしてもその書き方は任意のパス名を受け入れるから危険だよ。
458デフォルトの名無しさん (アウアウクー MM35-VsZy)
2021/07/17(土) 21:34:37.90ID:OaBiTcJcM >>457
画像を呼び出す場合<img src="/header_image.php">のようにphpスクリプトを呼び出して、そのphpスクリプトが画像データを返すようにすべきです。
と言われたのですがほかに方法はあるのでしょうか?
画像を呼び出す場合<img src="/header_image.php">のようにphpスクリプトを呼び出して、そのphpスクリプトが画像データを返すようにすべきです。
と言われたのですがほかに方法はあるのでしょうか?
459デフォルトの名無しさん (ワッチョイ 552c-0PSu)
2021/07/17(土) 21:38:04.55ID:xmQE+uIu0 <img src="img.php?img=uploads/2021/07/7mgpH3K.jpg">
じゃなくて、
<img src="uploads/2021/07/7mgpH3K.jpg">
じゃないの?
まあでも、ユーザーから送られたものを、チェック無しに、そのまま使うのは危険!
そこに、色々なファイルパス・命令などを入れてくる
じゃなくて、
<img src="uploads/2021/07/7mgpH3K.jpg">
じゃないの?
まあでも、ユーザーから送られたものを、チェック無しに、そのまま使うのは危険!
そこに、色々なファイルパス・命令などを入れてくる
460蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdfa-rTLR)
2021/07/17(土) 22:23:28.15ID:UtbSZ1Qtd パス名じゃなくてもっと制限された情報を渡す。
461デフォルトの名無しさん (オッペケ Sr75-VsZy)
2021/07/18(日) 12:58:29.71ID:VnC3iq6Ar462デフォルトの名無しさん (ワッチョイ 0563-kbnc)
2021/07/18(日) 13:23:08.70ID:A0aXocf00 HTMLでアクセス可能なPathなら、だが
ハッキングされそうで怖いな
ハッキングされそうで怖いな
463デフォルトの名無しさん (ワッチョイ 9a7c-xL6t)
2021/07/18(日) 14:04:59.57ID:fBmvBk7Y0 そもそもアップロード先フォルダだとしてそれをそのまま公開するのは頭がおかしい
PHP以前の問題
本来ならアップロードした時点でファイルを調べて、それでOKであれば
(例えばちゃんと画像ファイルなのかどうか等)
公開フォルダへコピーするなりするべきじゃね?
PHP以前の問題
本来ならアップロードした時点でファイルを調べて、それでOKであれば
(例えばちゃんと画像ファイルなのかどうか等)
公開フォルダへコピーするなりするべきじゃね?
464デフォルトの名無しさん (ワッチョイ 5a84-fEvS)
2021/07/18(日) 15:55:22.55ID:Th1fsKvf0 アホばっかりw
465デフォルトの名無しさん (アウアウウー Sa39-hwij)
2021/07/18(日) 16:44:58.59ID:UQ3hWlPAa セキュリティ的に危ないという理由を教えてください
一度サーバーのフォルダにアップしたものを公開するのは危ないのでしょうか?
一度サーバーのフォルダにアップしたものを公開するのは危ないのでしょうか?
466デフォルトの名無しさん (ワッチョイ f6bb-YmP5)
2021/07/18(日) 17:23:13.71ID:ca/UjVuI0 >>465
セキュリティはちゃんと体系的な知識を身につけたほうが良いですよ
一応アップロード系の用語がそれなりに出てくる記事をリンクしておきます
https://qiita.com/mpyw/items/939964377766a54d4682
記事中の実装は、今となっては古すぎなので参考になりませんが、用語レベルでは網羅されているかと
入り口の記事として読んでください
外部からアクセスできる場所にアクセス・実行できるファイルを一個置かれただけで、かなりのことができるようになります
セキュリティはちゃんと体系的な知識を身につけたほうが良いですよ
一応アップロード系の用語がそれなりに出てくる記事をリンクしておきます
https://qiita.com/mpyw/items/939964377766a54d4682
記事中の実装は、今となっては古すぎなので参考になりませんが、用語レベルでは網羅されているかと
入り口の記事として読んでください
外部からアクセスできる場所にアクセス・実行できるファイルを一個置かれただけで、かなりのことができるようになります
467デフォルトの名無しさん (ワッチョイ 5a02-UKwf)
2021/07/18(日) 19:10:00.86ID:NSPuFPL00 RubyガイジとWPガイジはスルー推奨
468デフォルトの名無しさん (ワッチョイ fa5c-fEvS)
2021/07/18(日) 19:37:42.84ID:gO2R7Orx0469デフォルトの名無しさん (ワッチョイ 552c-NvNM)
2021/07/18(日) 21:08:39.36ID:H/NN8O820 セキュリティーは、膨大な種類ある
だから皆、Ruby on Rails などのフレームワークを使う。
素の言語では、一生やっても作れない
Rails では、サーバーへプロフィール画像をアップロードする、機能がよく出てくる。
画像ファイルの縦横幅の制限、容量の制限、
中身にウイルスがうめこまれていないかチェックするなど、
色々なセキュリティー対策をしないといけない
さらにレスポンシブ対応で、様々なサイズに拡大縮小するなど、
OSS のモジュールを使わないと作れない
一々、自分で作っていては、一生掛かる。
Railsなどのフレームワークの勉強をしていない人は、絶対にシステムを作れない
他にも、マスアサインメント・SQL インジェクションとか、
セキュリティーには膨大な種類ある
だから、PHP のサイトばかり攻撃されるのは、
セキュリティーを知らない人が作っているから、情報を取りやすい
だから皆、Ruby on Rails などのフレームワークを使う。
素の言語では、一生やっても作れない
Rails では、サーバーへプロフィール画像をアップロードする、機能がよく出てくる。
画像ファイルの縦横幅の制限、容量の制限、
中身にウイルスがうめこまれていないかチェックするなど、
色々なセキュリティー対策をしないといけない
さらにレスポンシブ対応で、様々なサイズに拡大縮小するなど、
OSS のモジュールを使わないと作れない
一々、自分で作っていては、一生掛かる。
Railsなどのフレームワークの勉強をしていない人は、絶対にシステムを作れない
他にも、マスアサインメント・SQL インジェクションとか、
セキュリティーには膨大な種類ある
だから、PHP のサイトばかり攻撃されるのは、
セキュリティーを知らない人が作っているから、情報を取りやすい
470デフォルトの名無しさん (アウアウクー MM35-B/F3)
2021/07/18(日) 21:53:44.27ID:6mAUoTwKM PHPのフレームワーク使うならLaravelだね
471デフォルトの名無しさん (ワッチョイ 016e-fEvS)
2021/07/18(日) 22:51:51.23ID:adePGcGm0 マルチポストには激おこするルビー君
472デフォルトの名無しさん (ワッチョイ 691d-E0YB)
2021/07/18(日) 23:11:24.32ID:g0bWf1Ea0 激おこなんていうJK用語をナチュラルに使いこなしているのがすごい
473デフォルトの名無しさん (ワッチョイ 0563-kbnc)
2021/07/18(日) 23:42:29.55ID:A0aXocf00 JK用語なの?
おじさん、普通に使ってた
おじさん、普通に使ってた
474デフォルトの名無しさん (ワッチョイ 691d-E0YB)
2021/07/20(火) 01:13:58.90ID:kSAF0CCr0 アラフォーだけど、使うって感じじゃなくて…
ジェネレーションギャップかも
ジェネレーションギャップかも
475デフォルトの名無しさん (アウアウクー MM35-VsZy)
2021/07/20(火) 17:18:42.82ID:IgegoDKDM 以前質問させていただいた画像を直接上げてはいけない原因を調べたところ、
誰からもWebサーバを介してファイルにアクセスできないようにしておいて、ファイルの表示はプログラムを使ってアクセス制御をしながら表示する
つまり通常Webで画像を表示する場合、imgのsrc属性に画像が置いてあるURLを指定するというのが一般的だと思います。
しかし、画像を置いてあるURLを指定するというのは、画像を表示するためにはそのURLにアクセスできるということを表しています。
そこで画像をbase64化
画像をHTMLやCSSに埋め込める(直接記入出来る)ようにする為に、画像をbase64にエンコードします
<php $img = base64_encode(file_get_contents('画像URL')); ?>
<img src="data:image/png;base64,<php echo $img; ?>">
参考URL
https://www.tmp1024.com/php-image-showing/
https://9-bb.com/?p=3591
これで大丈夫でしょうか?画像は表示されました。
誰からもWebサーバを介してファイルにアクセスできないようにしておいて、ファイルの表示はプログラムを使ってアクセス制御をしながら表示する
つまり通常Webで画像を表示する場合、imgのsrc属性に画像が置いてあるURLを指定するというのが一般的だと思います。
しかし、画像を置いてあるURLを指定するというのは、画像を表示するためにはそのURLにアクセスできるということを表しています。
そこで画像をbase64化
画像をHTMLやCSSに埋め込める(直接記入出来る)ようにする為に、画像をbase64にエンコードします
<php $img = base64_encode(file_get_contents('画像URL')); ?>
<img src="data:image/png;base64,<php echo $img; ?>">
参考URL
https://www.tmp1024.com/php-image-showing/
https://9-bb.com/?p=3591
これで大丈夫でしょうか?画像は表示されました。
476デフォルトの名無しさん (ワッチョイ 058c-p0fO)
2021/07/22(木) 13:17:48.55ID:pnEPB7fm0 質問お願いします。
環境はWindows10でXAMPP7.4.21です。
exec('ipconfig', $message);
上記のPHPに、ブラウザからアクセスした場合、$message[1]が
「Windows IP 構成」と、日本語ですが、
Batファイルで、「c:\xampp\php\php.exe d:\www\test.php」で実行した場合、$message[1]が
「Windows IP Configuration」と、英語です。
PHPが5の時はどちらも日本語だったのですが、XAMPPのアップデートでPHPが7になったらこの現象が起きました。
Batの時にも日本語にするためには、なにをしたら良いでしょうか。
どうぞよろしくお願いいたします。
環境はWindows10でXAMPP7.4.21です。
exec('ipconfig', $message);
上記のPHPに、ブラウザからアクセスした場合、$message[1]が
「Windows IP 構成」と、日本語ですが、
Batファイルで、「c:\xampp\php\php.exe d:\www\test.php」で実行した場合、$message[1]が
「Windows IP Configuration」と、英語です。
PHPが5の時はどちらも日本語だったのですが、XAMPPのアップデートでPHPが7になったらこの現象が起きました。
Batの時にも日本語にするためには、なにをしたら良いでしょうか。
どうぞよろしくお願いいたします。
477デフォルトの名無しさん (アウアウクー MM35-Hsms)
2021/07/22(木) 15:43:09.09ID:b8/cFbDKM >>463
言ってる意味がおおよそ理解できたのですが。
・暗号化
可逆な存在
=複合することができる
=変換方式が決まっているため、だれでも復元(decode)できる。
可逆な存在といえば「Base64」
エンコード(暗号化)も出来るし、デコード(複合化)もできる。
(でもね、厳密には暗号化=エンコードとは言えないんだよ…)
(詳しくはもう少し下で…)
逆に、不可逆な存在といえば「SHA-1」
こっちは複合化することが出来ない。
画像をハッシュ関数化してそれをもとに画像を表示させる方法がわからないんですが、
phpで可能なんでしょうか?
言ってる意味がおおよそ理解できたのですが。
・暗号化
可逆な存在
=複合することができる
=変換方式が決まっているため、だれでも復元(decode)できる。
可逆な存在といえば「Base64」
エンコード(暗号化)も出来るし、デコード(複合化)もできる。
(でもね、厳密には暗号化=エンコードとは言えないんだよ…)
(詳しくはもう少し下で…)
逆に、不可逆な存在といえば「SHA-1」
こっちは複合化することが出来ない。
画像をハッシュ関数化してそれをもとに画像を表示させる方法がわからないんですが、
phpで可能なんでしょうか?
478デフォルトの名無しさん (アウアウクー MM05-jkzO)
2021/07/24(土) 10:11:35.97ID:CXOLw81IM 暗号化と符号化の違いがわからなかった時期が俺にもあったなぁ
479デフォルトの名無しさん (ワッチョイ 1389-1sa8)
2021/07/26(月) 09:39:33.21ID:nRSOkyaR0 質問です。
JSONファイルを読み込もうとしたのですがうまくいきません。
$url = "https://f.irbank.net/files/8700/fy-profit-and-loss.json";
$json = file_get_contents($url);
$json = mb_convert_encoding($json, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN');
$arr = json_decode($json, true);
JSONファイルを読み込もうとしたのですがうまくいきません。
$url = "https://f.irbank.net/files/8700/fy-profit-and-loss.json";
$json = file_get_contents($url);
$json = mb_convert_encoding($json, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN');
$arr = json_decode($json, true);
480デフォルトの名無しさん (ワッチョイ 519b-Hgw+)
2021/07/26(月) 09:43:24.61ID:UUQ7nGaW0 うちはできてる
481デフォルトの名無しさん (ワッチョイ 1389-1sa8)
2021/07/26(月) 09:51:26.23ID:nRSOkyaR0 うう…マジか
XAMPPのローカル環境だから上手く行かないのだろうか?
XAMPPのローカル環境だから上手く行かないのだろうか?
482デフォルトの名無しさん (ワッチョイ 7bad-0CkY)
2021/07/26(月) 10:38:53.43ID:rdRO2HTr0 せめてエラーログくらい貼りなよ
483デフォルトの名無しさん (ワッチョイ 532c-MYQi)
2021/07/26(月) 11:26:45.16ID:DTdYSzy80 全く読めない
このファイルは、UTF-8 ではない?
このファイルは、UTF-8 ではない?
484デフォルトの名無しさん (ワッチョイ 7bad-0CkY)
2021/07/26(月) 11:43:48.93ID:rdRO2HTr0 >>479
レスポンスがbrotliで圧縮されてる
そのままブラウザに出力したいだけならContent-Encodingを設定しておくだけ
header('Content-Encoding: br');
jsonとして読み込みたいならbrotliのエクステンションをインストールしてからデコードした上でjsonにデコードする
レスポンスがbrotliで圧縮されてる
そのままブラウザに出力したいだけならContent-Encodingを設定しておくだけ
header('Content-Encoding: br');
jsonとして読み込みたいならbrotliのエクステンションをインストールしてからデコードした上でjsonにデコードする
485デフォルトの名無しさん (アウアウクー MM05-KMlg)
2021/07/26(月) 20:20:23.98ID:BzqZLuZJM 1つ聞きたいんですが画像ファイルのセキュリティについてです。
自分の調べた聞いて理解した範囲では画像を<img src="画像URL">で表示するのは、
画像を表示するためにそのURLにアクセスできるので危険
↓
画像をbase64にエンコードします
デコード(複合化)もできるので意味がほぼないです
↓
サイズとMIMEチェックをして画像を表示させる前に、画像ファイルである事を確認する
必要ならサイズやビット深度を変更する
https://teratail.com/questions/350744で聞くと,
ファイルをアップロードするのは「サイト運営側」だけであれば問題ありません。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13246474913で聞くと、
mineチェックとサイズ変更しなさい、
できればアップロード時のファイル名を元のものから変更する、自サイトのページ内に配置された画像としてしかアクセスを禁止するなどしなさい
結局どれが正解なんでしょうか?
自分の調べた聞いて理解した範囲では画像を<img src="画像URL">で表示するのは、
画像を表示するためにそのURLにアクセスできるので危険
↓
画像をbase64にエンコードします
デコード(複合化)もできるので意味がほぼないです
↓
サイズとMIMEチェックをして画像を表示させる前に、画像ファイルである事を確認する
必要ならサイズやビット深度を変更する
https://teratail.com/questions/350744で聞くと,
ファイルをアップロードするのは「サイト運営側」だけであれば問題ありません。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13246474913で聞くと、
mineチェックとサイズ変更しなさい、
できればアップロード時のファイル名を元のものから変更する、自サイトのページ内に配置された画像としてしかアクセスを禁止するなどしなさい
結局どれが正解なんでしょうか?
486デフォルトの名無しさん (ワッチョイ 8bbb-OwHR)
2021/07/26(月) 20:26:04.88ID:B9v6ZV500487デフォルトの名無しさん (ワッチョイ 1302-/zz1)
2021/07/26(月) 20:31:09.20ID:7+uo32oc0488デフォルトの名無しさん (ワッチョイ 8bbb-OwHR)
2021/07/26(月) 21:10:41.62ID:B9v6ZV500489デフォルトの名無しさん (ワッチョイ 1302-/zz1)
2021/07/26(月) 22:18:00.65ID:7+uo32oc0 >>488
俺に気をはれと言われましてもw
俺に気をはれと言われましてもw
490デフォルトの名無しさん (オッペケ Sr85-KMlg)
2021/07/26(月) 22:31:24.99ID:nQwBFtLMr >>487
wordpress以外でも同じでしょ?
それに管理画面からじゃなくフォルダのディレクトリに置いたファイルの話なんで画像限定じゃないですね
phpやcssのファイルでも同様かどうか知りたいです
wordpress以外でも同じでしょ?
それに管理画面からじゃなくフォルダのディレクトリに置いたファイルの話なんで画像限定じゃないですね
phpやcssのファイルでも同様かどうか知りたいです
491デフォルトの名無しさん (オッペケ Sr85-KMlg)
2021/07/26(月) 22:44:03.71ID:nQwBFtLMr 画像ファイルのアップロードの時のセキュリティはwordpress関係なく同じでしょ
492デフォルトの名無しさん (ワッチョイ 1302-/zz1)
2021/07/26(月) 22:56:31.97ID:7+uo32oc0 >>491
WPインストールしたらアップロード周りのソース全部読んでセキュリティホール無いことを確認するの?
WPで画像表示する時は表示用PHP作ってbase64変換かますの?
そして、アップロードする時は常に気をはるの?
WPインストールしたらアップロード周りのソース全部読んでセキュリティホール無いことを確認するの?
WPで画像表示する時は表示用PHP作ってbase64変換かますの?
そして、アップロードする時は常に気をはるの?
493デフォルトの名無しさん (アウアウウー Sa5d-XNQa)
2021/07/27(火) 00:25:56.73ID:eUxCT57wa >>492
そんなことはしませんが、最低限のセキュリティは同じでしょ?
base64じゃセキュリティにならないからファイルを関数化して複雑なファイル名にする
それプラス最低限のセキュリティ、今回は画像なのでMIMEチェック
もし自分以外のユーザーが画像を上げるなら
自サイトのページ内に配置された画像としてしかアクセスを禁止する
word pressだからセキュリティは要らないっていうのはおかしいでしょ
そんなことはしませんが、最低限のセキュリティは同じでしょ?
base64じゃセキュリティにならないからファイルを関数化して複雑なファイル名にする
それプラス最低限のセキュリティ、今回は画像なのでMIMEチェック
もし自分以外のユーザーが画像を上げるなら
自サイトのページ内に配置された画像としてしかアクセスを禁止する
word pressだからセキュリティは要らないっていうのはおかしいでしょ
494デフォルトの名無しさん (ワッチョイ 1302-/zz1)
2021/07/27(火) 01:30:32.63ID:7P6684PB0495デフォルトの名無しさん (ワッチョイ b963-3Z6B)
2021/07/27(火) 01:51:04.21ID:sIvc9ZAG0 ここはPHPの質問をするスレ
WPの質問なら移動してください
WPの質問なら移動してください
496デフォルトの名無しさん (ワッチョイ 532c-MYQi)
2021/07/27(火) 04:39:04.62ID:x4yitIm80 Word Press の質問は、web制作管理板のスレの方へ移動してください!
Laravel のスレも、この板に立てている香具師がいる。
Laravelの質問は、WEBプログラミング板の方へ!
Laravel のスレも、この板に立てている香具師がいる。
Laravelの質問は、WEBプログラミング板の方へ!
497デフォルトの名無しさん (ワッチョイ d352-DMdn)
2021/07/27(火) 06:50:44.81ID:L674X5NC0498デフォルトの名無しさん (アウアウクー MM05-Cd1h)
2021/07/27(火) 07:09:26.40ID:CFpUohJoM WPスレにいる者だが絶対こっち来るなよ
ガイジ過ぎて手に負えんわ
ガイジ過ぎて手に負えんわ
499デフォルトの名無しさん (ワッチョイ 7bad-USot)
2021/07/27(火) 08:14:32.01ID:SyBbAbx40500デフォルトの名無しさん (ワッチョイ 2954-p8kO)
2021/07/27(火) 09:02:44.68ID:opDlelu60 るびースレに行ってもらえば万事解決するんじゃないかな
501デフォルトの名無しさん (ワッチョイ 1302-/zz1)
2021/07/27(火) 09:30:06.62ID:7P6684PB0 >>458 の質問者は少し前のWPのページネーションの奴だし、そいつは更に前のRSSの奴でもある
ってことでこのスレに住み着いてるWPガイジであることは確定なんですわw
何が気に食わないのか知らんけど残念だったねwww
https://teratail.com/users/homepage-site#question
ってことでこのスレに住み着いてるWPガイジであることは確定なんですわw
何が気に食わないのか知らんけど残念だったねwww
https://teratail.com/users/homepage-site#question
502デフォルトの名無しさん (ワッチョイ b37d-5SC8)
2021/07/27(火) 10:01:53.85ID:DZV4D5nN0 >>493
セキュリティと権限をごっちゃにしてそう
セキュリティと権限をごっちゃにしてそう
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 中国高官と話す外務省局長の表情、やばい [175344491]
- 【悲報】あまりにも高市早苗の頭が悪過ぎて「これは確かに野党が配慮して質問するべきだったのでは」と結論が出てしまう [517791167]
- 【正論】木原官房長官「高市さんの答弁は従来の政府の立場を変えるものではない。撤回には応じられない」特定野党を完全論破 [519511584]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 中国と戦争になったら高市早苗が外患誘致で死刑になるの? [809488867]
- 【悲報】安倍晋三と高市早苗、どっちがヤベーの🤔 [616817505]
