アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在PHP7.4.26+MariaDBでプログラミングを見よう見まねで行っています。

「foreach ($pdo->query("SELECT ・・・」で始まるクエリの中に

" . (
($tbl == '一覧記入表' ? "NULL" : "`_pq__`" )
||
($md == '期末' ? "XXXXX" : "`_pq__`" )

). "
AS `_r_q_`,-- (製作数)実績数

という条件分岐を設けて代入値を区別しています。

上記コードの「XXXXX」部分にEXCELの
「=IFERROR(VLOOKUP($AJ6,'01'!$A$6:$V$845,16,FALSE),"")」
の関数式を代入したいのですが、どのようにすればよいのでしょうか。

また、可能であれば$AJ6の「6」の部分をデータがある限りカウントして追加できるようにする方法があれば、あわせて教えていただけますでしょうか。

よろしくお願いいたします。

A 回答 (1件)

この手順で PHP プログラムを書きましょう


1. 数値変数を用意
2. 変数を使って指定位置のセルに「データが有る」か判断し、なければ処理終了
3. 変数を使って関数式の文字列を作る
4. 関数式をセルに設定する
5. セルの関数式から計算した値を読み取る
6. SQL クエリの中に値を代入する
7. クエリを問い合わせる
8. 数値変数を加算して 2 に戻る

参考)
EXCEL の指定位置のセルから値を読み取る方法
https://phpspreadsheet.readthedocs.io/en/latest/ …
数値変数を文字列内に埋め込む方法
https://www.php.net/manual/ja/language.types.str …
EXCEL のセルに関数式を設定する方法
https://phpspreadsheet.readthedocs.io/en/latest/ …
SQL クエリの中に値を代入する方法
https://www.php.net/manual/ja/pdostatement.bindv …
SQL クエリを "." で結合して代入するのは危険なので止めましょう
https://www.ipa.go.jp/security/vuln/websecurity/ …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!