file_get_contents(): php_network_getaddresses: getaddrinfo failed

あるファイルから他のサーバーのディレクトリ、他のファイルにデータを渡して、結果を受け取るときに使う file_get_contents()でタイトルのエラーが出た。 このときに渡すURLに問題があるのだが、かなり悩んだが凡ミスだった。 渡す先のディレクトリパスをそのままコピーして、http://などヘッダーを変えただけだった。 これでは、バックスラッシュが入ってしまい、URLとして機能しない。 改…Continue reading file_get_contents(): php_network_getaddresses: getaddrinfo failed

Laravel mix is not recognized as an internal or external command

laravel 7や8でnpm install後に npm run devとすると mixでエラーが出る。 このエラーは 内部コマンドまたは、外部コマンドとして認識されていない、 という意味だが、大抵の場合、mixが使えないときは、 laravel mix の最新バージョンをインストールすればなおる。 とすればいい。 -gをつければグローバルインストールになるので、今回限りで済むだろう。 &#82…Continue reading Laravel mix is not recognized as an internal or external command

Laravel 8 : Target class [UserController] does not exist

解決方法は2つある。 書き方に合わせる必要がある。 フルパスで記述 コントローラを追加して、web.phpでルートを書くとき、 コントローラーを指定するときは、絶対パスで書く。メソッドは@の後に書く。 デフォルトで書かれているHomeControllerのように、 というように絶対パスで書いて、配列として書く。 簡単。 名前空間を使う もしくは、 Controllerで名前空間を使用すれば、絶対パ…Continue reading Laravel 8 : Target class [UserController] does not exist

js php 多次元配列で、キーが同じ場合に配列を同じにしたい

多次元配列や配列を持つオブジェクトでもいいが、キーが同じときに、その下の階層をまとめたい時がある。 オブジェクトの場合は難しいが、一度配列に変換して見るのはどうだろうか。 https://teratail.com/questions/198747 js に関してはQiitaに書いてみた。コメントにスマートなやり方を書いてくれた人もいる。 参照 https://qiita.com/Jinta/ite…Continue reading js php 多次元配列で、キーが同じ場合に配列を同じにしたい

PHP substr() 文字列の切り取り

substr() 第2引数には何文字切り取るかを指定する。マイナスなら後ろから数えたところを切り取る。 mb_substr() mb_substr()で、半角文字を切り取ろうとするとエラーとなる。 substr()で、全角文字を切り取ろうとすると、全角は半角2文字分と判定されるので、3なら、1.5文字分だが、1文字だけ切り取られる。 split() これは配列として、結果を得られる。 参考 htt…Continue reading PHP substr() 文字列の切り取り

phpからjsにjsonを渡したとき、parse error になる ajax

jsonを渡されて、処理をして、返す側のphpでは、echoなどで、jsonを出力しなければならないので、 それ以前に、処理の途中などで、echo, var_dump, print_rなどを使ってはいけない。 というところで、つまづいたので記録。   jsからphpにデータを渡すときは、jsonを利用します。 jQuery1.8以前では、ajaxなどで使う例外処理に success, e…Continue reading phpからjsにjsonを渡したとき、parse error になる ajax

An error occurred substituting the named parameters ; Mixed named and positional parameters in エラーが出た時

An error occurred substituting the named parameters PHPでSQL文を実行したときに、以上のようなエラーが出た。 こちらは、翻訳すると 名前付きパラメーターの置換中にエラーが発生しました とのこと。 Mixed named and positional parameters これも、パラメータの場所と名前が混在している。 みたいな感じ。 つまり、…Continue reading An error occurred substituting the named parameters ; Mixed named and positional parameters in エラーが出た時

SQLインジェクション防止 PHPのプレースホルダー プリペアードステートメント

SQL文を打つとき、 SQL文のどこかに、入力値を変数として、入れているなら、 例えば、post送信で、テーブル名を取得している場合など、 $table-name = $_POST[$table]; $sql = “SELECT * FROM $table-name”; 入力値に、予期せぬSQL文などが入った場合、それが実行され、 最悪の場合、カラムやテーブルのデータが消え…Continue reading SQLインジェクション防止 PHPのプレースホルダー プリペアードステートメント