【PHP】下らねぇ質問はここに書き込みやがれ 12

■ このスレッドは過去ログ倉庫に格納されています
2021/04/29(木) 12:39:39.75ID:P0iZ4CYt0
!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
2021/04/30(金) 12:01:11.72ID:6f1slJ3x0
NG推奨ワード: Ruby

この単語を含むレスは一切相手にしないように
3デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 13:04:54.03ID:wcP0w+UGr
https://codepen.io/sadsfff/pen/ExZBomX
記事によってサムネイルが表示されたりされなかったりするのですが、原因がわかりません。アドバイスお願いします。
4デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 13:12:28.57ID:wcP0w+UGr
どうやら記事にサムネイルがなかったようです。記事にサムネイルがない場合、代わりに画像を設定したいのですがどのコードを修正すればいいのでしょうか?
2021/05/01(土) 14:10:09.09ID:hhTcbcPJ0
「html 画像 タグ」で検索!

<img> 要素
6デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 14:23:28.88ID:wcP0w+UGr
https://codepen.io/sadsfff/pen/dyNBJLw
サムネイルが取得できない場合 代替えの画像を表示するコードを付け足したのですが構文エラーが出てしまいます。どこが間違っているのでしょうか?
?php if(empty($first_img)){
// 記事内で画像がなかったときのためのデフォルト画像を指定
$first_img = "/wp-content/uploads/2021/02/スクリーンショット-60.png";
}
return $first_img;
}
足したコードはこちらです。
7デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 14:31:24.78ID:wcP0w+UGr
>>5
htmlではなくphpの処理がわかりません。
8デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 16:40:35.24ID:wcP0w+UGr
RSSで出力元からサムネイルを取得してなければダミー画像を表示する方法がわかりません。functions.phpに処理を記載したいのですが、そもそも他人から取得するコードと自分のダミー画像を出力するコードをごちゃまぜにできないので困ってます。
9デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 16:56:15.41ID:wcP0w+UGr
記事中の1枚目の画像を取得 なければダミー画像を取得 
ifで条件が合ったときに画像を表示させたいのですが…
10デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 20:20:18.09ID:zdiXzYTRr
https://codepen.io/sadsfff/pen/oNBryGr
return $first_img;
<span class="thumbnail2"> この部分が連結できません。調べてもわからず、RSSで画像を引っ張ってきたときに画像がないものにダミー画像を使いたいのですが、何をどう調べればよいか教えてください。
2021/05/01(土) 21:02:01.19ID:womjwnFK0
https://www.php.net/manual/ja/function.return.php
2021/05/01(土) 21:27:54.33ID:k3UheK6C0
そもそもコードが無茶苦茶で論外ではあるのだが
更に言うとこれWordPressが入っている環境でしか動かないコードでは?
13デフォルトの名無しさん (ワッチョイ 67c9-zD6t)
垢版 |
2021/05/01(土) 21:33:04.20ID:HeWILf2Q0
笑った。aspの頃を思い出した笑
14デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 22:15:10.90ID:F9cq2G89r
<php // RSSフィードを取得
incloude_once(ABSPATH.WPINC.'/feed.php'); //オブジェクト取得
$rss=fetch_feed('http://~.com/rss/feed/goes/here');
$maxitems=0; if(is_wp_error($rss)){ //フィードのエラーチェック
$maxitems=$rss->get_item_quantity(2); //すべてのフィードから最新2つを出力
$rss_items=$rss->get_items(0,$maxitems); //0件から指定した件数まで配列を生成
}?>
15デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/01(土) 22:17:05.23ID:F9cq2G89r
<div class="grid-x grid-margin-y">
<php if (empty($maxitems)):?>
<php if ($maxitems==0) echo' <div class="celllarge-14"> //データがありませんでした。
</div>'; //取得できたRSSが0の場合「データがありません」と表示。
else foreach ($rss_items as $item):?> //RSSが1件以上あったときは繰り返し、$itemにあるデータであれば他のデータも表示させる。

ここまでは文法でおかしなところはないようです。
2021/05/01(土) 22:29:37.42ID:CNjeTyKed
>>14
incloudeって何? includeだよね。
2021/05/02(日) 02:55:22.64ID:eESL2rf00
なんでXAMPP環境だと、STDINはエラーになるのですか?
2021/05/02(日) 16:05:44.15ID:mGuGuO120
>>17
そもそも何がしたいの?
2021/05/02(日) 17:27:19.42ID:eESL2rf00
>>18
ユーザーから文字列を受け取り、コード内で使いたいです
2021/05/02(日) 18:02:00.71ID:mGuGuO120
入力?
https://www.php.net/manual/ja/reserved.variables.get.php
のようにGETで渡されたパラメータなら$_GETに入るのだが?
まさかとは思うが、サーバーが返したHTMLでリアルタイムで入力を受け取りたいとかだと
そもそもPHPは関係無いし、フロントのjavascriptでイベント処理するとかしないと無理だがw
https://developer.mozilla.org/ja/docs/Web/API/GlobalEventHandlers/onkeydown
2021/05/02(日) 22:55:09.90ID:eESL2rf00
>>20
ありがとうございます
まだよく理解出来ていないのでいろいろ調べてみようと思います
22デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 20:41:30.42ID:N1nfC+z1r
<span class="date2">
<php echo $item->get_date('Y.m.d');// 日付 ?>
</span> //書き方が多少おかしい

<div class="cell medium-7"><!-- 記事中の1枚目の画像を取得-->
<a href="<php echo $item->get_permalink(); ?>"> //サムネイル
<php
$first_img = '';
if ( preg_match( '/<img.+?src=[\'"]([^\'"]+?)[\'"].*?>/msi',
$item->get_content(), $matches )
) { $first_img = $matches[1]; } ?> //記事中の1枚目の画像を取得
23デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 20:55:59.41ID:N1nfC+z1r
>>11
原因は>return $first_img; の前に処理が続いてるのにreturnしているからとヤフー知恵袋で教えてもらいましたが、
<php if(empty($first_img)){ //Defines a default image
$first_img = "/images/default.jpg";
}
return $first_img;

の部分は後から別のコードを連結したためおかしくなってます。
本来は
<php if(empty($first_img)){ //Defines a default image
$first_img = "/images/default.jpg";
}
return $first_img;
}
で処理を閉じるのですが。
続きのコードまで処理が続いているため、<php endif; ?>がいらないとエラーが出ます。
仮の画像につなぐコードを維持しつつ<php endif; ?>につなぐには<span class="thumbnail2">
<img class="heit6" src="<php echo esc_attr( $first_img ); ?>" alt="" />
</span>
<php endif; ?>を書き換える必要があるのでしょうか?
24デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 21:03:01.51ID:N1nfC+z1r
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13242533143?notice_type=new_ans
これが全体のコードです。
25デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 21:58:18.17ID:N1nfC+z1r
すいませんどこを調べればよいのでしょうか?わかりません。
2021/05/03(月) 22:05:53.25ID:Cpgqkk+d0
>>23
そのreturnは一体どこで受け取るの?
マニュアル理解できないのか、そもそも読んでないのか知らんが、wordpress弄る前に基本的な学習が足りてない
27デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 22:13:12.99ID:N1nfC+z1r
しらべてみましたが、他サイトのRSSを表示する際にサムネイルがない記事に自身のサイトの画像を設定することは無理なようです。
28デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 22:19:25.42ID:N1nfC+z1r
>>26
調べるとfunctionに書くパターンと直接かくコードがあり。自身のサイトから発信する場合はfunctionに書いてそれを表示したいphpファイルから呼び出すよう書いてました。
自分の場合 相手方のサイトからRSSを取得してそれにアイキャッチや抜粋の情報を取得するので、直接コードを書いてますがその場合サムネイルがついてない記事も読み込んでしまいます。
そこでサムネイルがない記事に自身のサイトの画像を表示させたかったのですが、どのサイトにもその処理は乗ってませんでした。
29デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 22:25:10.28ID:N1nfC+z1r
自分の見解では相手方のサイトのRSSからそもそも画像のついてない記事をはじいて、サムネイルのついている記事のみ収集して表示するという考えになったんですが。
そんなことはphpで可能なのでしょうか?
2021/05/03(月) 22:39:39.80ID:Cpgqkk+d0
>>28
functions.phpから直接returnして一体どこでどうその値が扱われるの?
先のことがわからないコード貼って動きませんは無いでしょ

yahooに上げたのが最新だとすると、return $first_img;の後ブロック閉じてないし、閉じたとするとその5行下のendiの開始が見つからない
あとブロックが波括弧とコロンが混在してるし

安易に他人のコード切り貼りするからこう言うことになる


どこで画像取得してるか調べて、調べたら無い場合の処理を書く
これだけのことなんだから、ちゃんと動く段階のもの用意して一からやり直してみたらどうですかね?
2021/05/03(月) 22:41:00.86ID:+oXrxKHu0
やりたい事はPHPで普通に出来るが
そもそも質問するならpaiza等で動くコードを提示しないとね
wordpressが前提のようなものは、そういう前提部分が無いコードに書き換えるなりしないと
わざわざその環境を作って試してくれるような人なんて居ないしどうしょうもないかと
32デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/03(月) 22:51:45.18ID:N1nfC+z1r
https://oku-log.com/blog/post-thumbnails/
このコードのダミー部分と
https://midorinz.com/app/2018/05/20/wordpress%E3%81%A7%E5%A4%96%E9%83%A8rss%E3%82%92%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%93%E3%81%A7%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/
このコードを合わせたので変になってます。
もとはこうなってました。{ $first_img = $matches[1]; } ?> <php if ( !empty( $first_img ) ) : ?>
33デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/03(月) 23:01:59.87ID:HTxVkaL2M
endiタグはそもそも上のコードと連結していたものです。なので自分がやってることは本来完結してる文に句読点をつけて同じ処理を書いてるのだと思います。
エラーにかけるとreturn $first_img;の後ブロック閉じるとしたのendiタグはいらないといわれます。
しかし消してしまうと<span></span>の内容は表示されません。なぜなら上の文と合わせてphpが完結していたのに、自分が加えた余計なコードでphp処理が完結してしまうため後の処理が消えてしまうせいです。

functionに書くやり方ですとreturnをかいて別のphpファイルに書いてますが、そもそも他サイトから情報をもらってRSSを表示するならfunctionを通さないはずです。
2021/05/04(火) 00:05:26.78ID:q/VBEoPh0
じゃんけんをするスクリプトを、htmlファイルとphpファイルに分けて書き、
XSS対策としてhtmlspecilschars関数を使いたいのですが、
以下のphpファイルのどこに使えばよいでしょうか?
https://pastebin.com/8VBzn7PB

入力値は12行目の$_POST['handnum']で受け取っています
2021/05/04(火) 00:13:57.09ID:yFx0moer0
>>33
>本来完結してる文に句読点をつけて同じ処理を書いてるのだと思います。

>>32 前者のコードはfunctions.php内の関数内の処理なのだからreturnで値返すよね
それを後者の関数では無いプラグインの処理をベースにしてreturnするって、おかしいと思わない?

後者のコードでempty($first_img)で判別してるんだから、ある場合と無い場合でそれぞれ処理して終わる話では?(あくまでプラグイン作ってるとしたらの話)
2021/05/04(火) 00:47:59.15ID:yFx0moer0
>>34
filter_inputを使ってみてはどうか?

$handnum = filter_input(INPUT_POST, 'handnum', FILTER_SANITIZE_NUMBER_INT);
$player_hand = intval($handnum);
2021/05/04(火) 01:37:39.10ID:q/VBEoPh0
>>36
ありがとうございます
あとは特徴とか自分で調べてみようと思います
2021/05/04(火) 01:40:40.07ID:i9uz7Z8I0
>>34
そのスクリプトではXSSの問題はおきない
よってhtmlspecialcharsは不要
htmlspecialcharsは外から入ってきた変数を直接出力するようなときに使う
例えば echo "こんにちは{$_POST['name']}さん" は使わないとだめ

ちなみにintvalは"A"は0になるし"1A2"は1になるので
「0・1・2のいずれかの数字を半角で入力して下さい」なんて言うのであるならば
こんな適当な関数は使ってはだめ
そこは普通にstrで受けていいしhandtypeにもstr渡せばいいだけ
んでhandtypeで"0"〜"2"じゃなかったときにfalseでも返して
handtypeからfalseが返ってきたらexitすりゃいい
39デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 01:43:50.15ID:qBuN3ovAM
>>35
このコードではプラグインは使ってません。simplepieでRSSを取得しているようです。
まず記事のサムネイルを取得します。それがない場合1番目の画像を代わりに取得します。
自分がこれに付け加えたいのは、その1番目の画像がない場合にサムネイルを自分で取り付けることです。
勉強不足で申し訳ないのですが、具体的にどのコードを書き換えてどのような修正が必要なのでしょうか?
40デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 01:45:49.53ID:qBuN3ovAM
なんとかコードを完成させたい気持ちはありますし。途中で投げ出す気もありません。
2021/05/04(火) 01:58:27.33ID:q/VBEoPh0
>>38
助言ありがとうございます

handtype関数はコンピュータの手(int型)にも利用するので
引数はint型にしたんですが…


intval()を使う所で、(int)とキャストするのは悪手ですか?
どっちにするか少し迷ったんですが
2021/05/04(火) 02:58:16.62ID:yFx0moer0
>>39
>どのような修正が必要なのでしょうか?

ぶっちゃけ全部

functions.phpに処理を加えたいならfunctions.phpの作法を最低限勉強しないと

https://www.google.com/search?q=wordpress+functions.php+%E6%9B%B8%E3%81%8D%E6%96%B9
43デフォルトの名無しさん (アウアウクー MM5b-FYM5)
垢版 |
2021/05/04(火) 04:27:30.04ID:blbvBx1gM
>>42
すみません… つまり画像がある記事とない記事の処理を分けてRSSで召集するのが早いってことですかね?
44デフォルトの名無しさん (アウアウクー MM5b-FYM5)
垢版 |
2021/05/04(火) 04:32:49.84ID:blbvBx1gM
エンジニアの方が書いてるブログがありましたが、処理を分けるのはかなり難しいとありました。
やはり画像がないサイトとは提携しないのが良いのでしょうか…
45デフォルトの名無しさん (アウアウクー MM5b-FYM5)
垢版 |
2021/05/04(火) 04:48:08.45ID:blbvBx1gM
知恵袋の回答者さんが答えてくれたコードは自分でも考えついたのですが、
<php
if(empty($first_img)) $first_img = "/images/default.jpg";
?>

結局<span class="thumbnail2"> <img class="heit6" src="<php echo esc_attr( $first_img ); ?>" alt="" /> </span> <php endif; ?>
このphp endifまでで1番が一括りになってるので途中で画像に別のサムネイルをつけるという処理をオプションでつけられません。
おそらくA(サムネイル画像)or B(サムネイルがなく1番目の画像を使ったもの) or C(A & Bに当てはまらない画像がそもそもないもの) に分類されて。
endifまでにif文でAに属するもの→Bに属するもの→3番目の処理をendifのあとに書くのではないかと思ってます。
46デフォルトの名無しさん (アウアウクー MM5b-FYM5)
垢版 |
2021/05/04(火) 04:48:44.92ID:blbvBx1gM
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13242533143?notice_type=new_ans
2021/05/04(火) 04:54:00.37ID:i9uz7Z8I0
>>41
> handtype関数はコンピュータの手(int型)にも利用するので
> 引数はint型にしたんですが…
逆にそっちをstrにキャストすればいいだけでは?(string)rand(0,2)

intキャストしたところでintvalと結果は同じだから>>38の問題はなおらないよ
適当なの入力してグーになるのは想定してない文字を入力するお前が悪い!
ってなら別にそれでもいいけど普通はバグとみなされる
2021/05/04(火) 05:34:11.51ID:yFx0moer0
>>43
functions.phpはそう言う垂れ流しコードを書く場所じゃないってこと

それでも敢えて書くなら、まずHTML取り払って、ブロックを波括弧で統一して、流れを追えるようにする
2021/05/04(火) 05:55:37.74ID:yFx0moer0
>>45
define('NO_IMAGE', '/images/default.jpg');

include_once(ABSPATH . WPINC . '/feed.php');
$rss = fetch_feed('https://adgene.net/feed/');
if (!is_wp_error($rss)) {
$maxitems = $rss->get_item_quantity(2);
$rss_items = $rss->get_items(0, $maxitems);
}
if (!empty($maxitems)) {
if ($maxitems == 0) {
echo 'データがありませんでした.' . '<br>';
} else {
foreach ($rss_items as $item) {
echo $item->get_date('Y.m.d') . '<br>';
echo $item->get_permalink() . '<br>';
$first_img = '';
if (preg_match('/<img.+?src=[\'"]([^\'"]+?)[\'"].*?>/msi', $item->get_content(), $matches)) {
$first_img = $matches[1];
} else {
$first_img = NO_IMAGE;
}
echo esc_attr($first_img) . '<br>';
echo $item->get_permalink() . '<br>';
echo $item->get_title() . '<br>';
}
}
}
2021/05/04(火) 12:55:40.74ID:q/VBEoPh0
>>47
ありがとうございます
検討してみます
51デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 13:31:40.12ID:blbvBx1gM
>>49
訂正確認させてもらいました。ありがとうございます。ただ自分が目指すのはあくまでhtmlで形にすることですので、これだと実用できません。どうすればよいのでしょうか?
2021/05/04(火) 13:39:25.26ID:k79tTEvW0
>>51
仕事としてできる人に依頼するといいよ
53デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 13:41:03.60ID:blbvBx1gM
https://yugiou.me/
作成中のサイトはアダルトサンプルサイトです。
54デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 13:44:48.51ID:blbvBx1gM
中身はもともとサンプルサイトだったのですが、アニメサイトに変える予定です。
2021/05/04(火) 14:01:58.95ID:wdzHnAM+0
>>52にも指摘されているけど、自分で出来ないなら仕事としてメンテナンスや改修を依頼するなど
した方が良いと思う
もしあなたがその立場だとしたら仕事が出来ないという事を伝えた方がいい
56デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 14:02:48.68ID:blbvBx1gM
>>51
ここから自分の理想の左に画像右に抜粋表示の形に持っていくのは非常に困難なので依頼を出すかプラグインを購入します。
コードを考えて教えてくださりありがとうございます。
2021/05/04(火) 14:18:43.33ID:yFx0moer0
>>51
>これだと実用できません。どうすればよいのでしょうか?

echoしてる箇所箇所に自分で好きなタグ差し込めばいいだろ?
あなたがどんなタグ使うかどんなclassで装飾するかなんて誰もわかんよ

>>56
>非常に困難なので

仮にこれでhtml出力できてもfunctions.phpの使い方が間違ってるから次は「任意のタイミング出力したいですがどうすれば」とか言い出すのが目に見えてる

金で解決が正解、お疲れ様
2021/05/04(火) 15:29:53.83ID:Z3Fw33AT0
>>51
>ただ自分が目指すのはあくまでhtmlで形にすることですので

別のファイルにモジュール化して、
HTML で、その関数を使えば?

例えば、Ruby on Rails では、
ヘルパー用のファイルに、自分でヘルパー関数を定義すると、
自動的に読み込まれて、定義したヘルパー関数を、HTML 内で使えるようになる
2021/05/04(火) 15:42:56.52ID:105dsh2D0
WordPressの話でRails出してくる奴って頭おかしいだろwwww
2021/05/04(火) 15:52:04.34ID:6Iqe5Ux70
まあそいつはこの板でトップクラスに有名な頭のおかしい奴だからな
61デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/04(火) 16:35:23.70ID:blbvBx1gM
もう一点質問があるのですが、個別ページをプラグインで表示している場合 検索欄を設置しても検索結果は改造前のデザインが表示されてしまいます。
wordpressで検索欄とプラグインで作った個別ページを結びつけることは可能でしょうか?
2021/05/04(火) 18:19:56.23ID:3mVKEEbM0
いやもう諦めろ
2021/05/04(火) 18:20:25.60ID:q/VBEoPh0
また質問させて下さい
郵便番号から住所を検索して表示するアプリを本に従って作っているのですが、
GETで得た値を途中でint型にキャストする理由が分かりません
文字列で送られてくるのだからそのままでいいと思うのですが…

コードは以下です
https://pastebin.com/ERrUf4Ga
2021/05/04(火) 18:41:34.91ID:i9uz7Z8I0
>>63
初心者向けだからってそんな酷い本あるの?
おそらく$_GET['zip']に変な文字入れられても
とりあえずintにキャストしておけば無害化できるとか
そんな安直な思考やってるんだろうけど
こんなやり方はバグの温床になるだけ
ちゃんとバリデーションすべきだね
2021/05/04(火) 18:45:46.00ID:3mVKEEbM0
>>63
キャストする理由が無いのでその本がおかしい
そのコードはintにキャストした後、文字列結合する為にすぐstringにキャストされてる

さらに言うと0から始まる郵便番号をintにキャストすると0埋めが消えるのでただのバグにしからならない
例えば北海道北区の郵便番号 '001-0000' をintにキャストすると 1 になって最終的にこうなる
https://zipcloud.ibsnet.co.jp/api/search?zipcode=1
66デフォルトの名無しさん (ワッチョイ 877c-0RyI)
垢版 |
2021/05/04(火) 18:55:00.43ID:105dsh2D0
>>63
糞本のタイトル教えてください
2021/05/04(火) 19:05:36.40ID:q/VBEoPh0
答えてくれた方、ありがとうございます

>>64
バリデーションの項目は、後のページに記述されているみたいです

>>65
それは困りますね…

>>66
これだけでクソ本かを判断してもらいたくないですが、
MdNコーポレーションの本です
68デフォルトの名無しさん (ワッチョイ 2734-EFEA)
垢版 |
2021/05/04(火) 19:32:59.61ID:oSclcFmd0
>>67
コード見たけど紛れもない糞本
PHPってほんとロクな本がないから、他の言語の基礎がない人がいきなりPHPやると罠にハマりやすい

他の人も書いてる通り、安易な型キャストはバグや脆弱性の元になるから絶対にやったら駄目
具体例として有名なのは以下のWordPressの脆弱性
https://blog.tokumaru.org/2017/02/wordpress-4.7.1-Privilege-Escalation.html
2021/05/04(火) 19:46:58.61ID:q/VBEoPh0
>>68
警告をしてくれたことには感謝します

ですが俺はこの本は(入門本としては)悪い本だとは思わないので
しばらく続けようと思います
2021/05/04(火) 20:56:57.58ID:k79tTEvW0
>>69
人のアドバイス無視して、自己流でやるなら質問なんかするな
全部そうじゃねぇか
せめて自分で検証して、フィードバックぐらいしろアホ
2021/05/04(火) 21:39:17.85ID:WQX5YaEJM
>>70
いやお前アドバイスしてなくね
72デフォルトの名無しさん (ワッチョイ 2734-EFEA)
垢版 |
2021/05/04(火) 21:42:23.00ID:oSclcFmd0
俺はPHPも好きだからあんま悪くは書きたくないが、まぁPHPerが馬鹿にされる理由がこういうレスから何となく分かるのは確か
他の言語の経験がない初学者だからこそ、「型」みたいな「基礎的な概念」の理解が大事なんだがな

PHPの本人はマジでウンコだらけだよ
公式のPHPマニュアルの出来は素晴らしいが
2021/05/04(火) 21:43:46.75ID:3mVKEEbM0
>>69
所詮は入門本だから深く考えずにその本の通りにやって良いと思うよ
ただその本を読んでて >>63 の時のように「あれ?」って思ったら本の解説が悪かったのかもしれないから、今回のように改めて聞くなり調べたほうがいいと思う
2021/05/04(火) 23:25:42.85ID:q/VBEoPh0
>>70
いえ、アドバイスを無視はしてません
全て自己流でやるつもりもありません

ただ本に関しては、お金を出して買ったものですし、
俺のフィーリングとはマッチするので、勉強をストップはしないというだけです

>>72
ありがとうございます
辛口ですね

>>73
とても寛容な方ですね
ありがとうございます
2021/05/05(水) 00:39:47.42ID:pywfeHK30
本の誤りに気付けるようになれば後は独学出来そうだよな
スレの質問に回答する側になる日も近いぞ
76デフォルトの名無しさん (オッペケ Sr5b-FYM5)
垢版 |
2021/05/05(水) 01:00:20.49ID:nLfsJ5FLr
jquearyをword pressで使いたくても準備の段階でいつも躓くんですよね
環境の設定がうまくいかない、どこを調べてもサポートが載ってない エラーをiniで調べてもわからない。
結局JavascriptとPHPで作らないといけない。
JavascriptやPHPで勉強する為にはまず自分のやりたいことを調べる→コードを見つける→加えたいコードについて調べる→加える部分の文法を調べる→文法に合わせて加えたいコードを変える
これでいいのでしょうか?
2021/05/05(水) 01:23:29.52ID://JWI9di0
>>76
それじゃすぐに行き詰まって挫折するか、進めたとしてもコピペで切り貼りしないとプログラムが書けない最底辺のプログラマになりそう。
基本的な文法や流れを入門書で一通り学んでから作りたいものを作ることに取りかかった方がいいと思うよ。
78デフォルトの名無しさん (アウアウクー MM5b-/um6)
垢版 |
2021/05/05(水) 02:11:13.71ID:0GVtuCHcM
自分の分析ではhttps://designsupplyweb.com/media/knowledgeside/5563/
のように。
<php if( 条件A ): ?>
<!-- 条件Aの処理 -->=サムネイルを取得する方法?
<php endif; ?>
<!-- 条件Bの処理 -->=サムネイルがない場合、記事の1番目の画像を取得する方法?

つまり
<php endif; ?>
</a>
<div class="cell medium-79">
<a class="name21" href="<php echo $item->get_permalink(); ?>">
<php echo $item->get_title();// タイトル ?>
</a>
と書くことでパーマリンクとタイトルの抜粋を取得しているのではないかと考えました。

先ほどご回答いただいたRSSについて少し理解ができました。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13242533143
79デフォルトの名無しさん (アウアウクー MM5b-FYM5)
垢版 |
2021/05/05(水) 02:39:25.83ID:0GVtuCHcM
ifより下にサムネイルを取得する方法(A)

else?より下にサムネイルがない場合1番目の画像パーマリンクタイトルを取得する方法(B)
endifより下にサムネイル(A)、記事の1番目の画像がない場合(B)の取得方法(C)

こういう風な書き方だと考えました。
2021/05/05(水) 10:51:17.50ID:U3p71Gkr0
>>56
2021/05/05(水) 14:53:48.11ID:Dw+PnwkB0
>>76
Ruby on Rails なんて、未経験者1年ぐらいで、10年以上のプロよりも上!

WSL2, Docker Compose, Node.js, Bootstrap, CircleCI、データベース、
VSCode(拡張機能・Remote WSL, Remote Container)

さらに、YouTube のKENTA のサロンでは、
AWS Fargate, React, Vue.js

KENTA が教育革命を起こした
2021/05/05(水) 18:32:07.40ID:xoz9BxNqM
>>81
こいつスレ違いの指摘無視して書き込んで印象悪いから、こいつの宣伝する奴は絶対見ない
2021/05/05(水) 18:51:38.01ID:U3p71Gkr0
https://www.google.com/search?q=KENTA+5ch+ruby
病気だから触っちゃだめ
84デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/05(水) 20:13:49.37ID:VRLPB9Rcr
どうしても最後に1件だけ教えてもらいたいことがあります。
<php
$first_img = '';
if ( preg_match( '/<img.+?src=[\'"]([^\'"]+?)[\'"].*?>/msi',
$item->get_content(), $matches )
) { $first_img = $matches[1]; } ?>
<php
if(!empty($first_img)) $first_img = "/images/default.jpg";
?>
<span class="thumbnail2">
<img class="heit6" src="<php echo esc_attr( $first_img ); ?>" alt="" />
</span>
<php endif; ?>
85デフォルトの名無しさん (オッペケ Sr5b-/um6)
垢版 |
2021/05/05(水) 20:14:07.11ID:VRLPB9Rcr
if文としては下記の記述方法だけです。

1.
if (条件式)
実行する文;

2.
if (条件式) {
実行する文ブロック
}

3,
if (条件式):
実行する文ブロック
endif;

エラーの内容は
if (empty($first_img)) $first_img = "/images/default.jpg";で構文は完結しているのに、

<span class="thumbnail2">
<img class="heit6" src="<php echo esc_attr( $first_img ); ?>" alt="" />
</span>
<php endif; ?> 同じ内容の構文を二度書いているのかというものでした。

ここからは持論ですが、<span></span>の前に<php if>と付け加えることで<php endif; ?>のエラーは起きず、
サムネイルがない場合の処理は正常に機能するのではないかと考えました。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況