学習日記 20230919
6:30 2023/09/19
昨日のコードは使い分けることにした。
foreach ($_FILES['up_image'] as $key => $value){
if($key !== 'error'){
$up_image_array[$key] = array_filter($value);
}
}
こっちは、投稿画像編集用に。
なぜなら、添え字数字を継承できるから。
継承していることによって、どのフォームから投稿されたかがわかるから。
ここで頭詰めをしてしまうと、その情報が失われてしまうため。
foreach ($_FILES['up_image'] as $key => $value){
if($key !== 'error'){
$up_image_array[$key] = array_merge(array_filter($value));
}
}
こちらは、画像投稿用に。
なぜなら、空白文字などが入った要素を削除して、頭詰めし、添え字配列を
振りなおすことができるから。
ユーザは約束通り、1番目のフォームから投稿してくれるとは限らない。
だから2枚目の投稿フォームから投稿しても、
1枚目のフォームから投稿したものとして扱われるようにしなければならない。
7:16 2023/09/19
19:40 2023/09/19
今より給料アップさせるために。
未経験だとしても、完全未経験採用として思われたくない。
頑張ろう。
三項演算子
条件式 ? trueの時実行する処理 : falseの時実行する処理
やっていることは if文。
if ( 条件式 ) {
trueの時実行する処理;
else{
falseの時実行する処理;
}
を1行で書いただけ。
注意すべきことは 条件式を書いた後は ? をつけること。
trueの時実行する処理の後に記載するのは セミコロン ; ではなく コロン :
ちなみに次のような書き方も可能
$変数 = 条件式 ? trueの時実行する処理 : falseの時実行する処理
こうすることで、処理結果をそのまま変数に入れることも可能。
コード削減につながる。慣れるまでは読みづらい。
バリデーションについて
現投稿の?番目に画像がある場合
削除ができる。
削除、追加ができる。
現投稿の?番目に画像がない場合
追加のみできる。
?枚目に画像がある
->削除チェックがある
--->削除する
--->差し替え画像ある
------>差し替える
------>差し替えない
->削除チェックがない
--->差し替え画像ある
------>エラー
?枚目に画像がない
--->追加画像がある
------>追加する
------>なし
sqlupdate文の構文
update tablename
set column_name1 = value1
今まで画像番号を for文で回しやすいように配列のindexに揃えて、 0スタートにしていたが、
emptyで番号存在判定を行うと、非空判定してほしいものが
0であるために空判定となってしまい、バグにつながる。
そこで、やはり1スタートにして、配列のindexを調べるときに-1するようにして対応しよう。
投稿画像編集php(削除機能)を走らせることによって
unlinkでファイルサーバ上の画像ファイルを削除することに成功
これはうれしい。
unlink('削除するファイルまでのpath')
ファイルを削除できる。
戻り値はbool型。
削除できればtrue、失敗すればfalse
画像の差し替えがついにできたかもしれない。
差し替えが無事できた。動いた。
これはうれしい。!!!!!!
泣きたいかもしれない。
今のところ、バグはない、
お願い、バグよ、ないでおくれ。
もういやだーーーーーーー。
23:36 2023/09/19
Discussion