質問 > フロント機能 > $sqlvalの記述で上書きでなく、DBの同一フィールド内に付け加える設定にしたいです。 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kenz |
投稿日時: 2016/10/8 22:33
対応状況: −−−
|
常連 登録日: 2010/6/8 居住地: 投稿: 46 |
$sqlvalの記述で上書きでなく、DBの同一フィールド内に付け加える設定にしたいです。 お世話になります。
あるphpファイルで$sqlval['login_user'] = $_SESSION['login_name'];という記述を使用し、ログインしたユーザーをDBのフィールドlogin_userに挿入する設定にしております。 質問させて頂きたいことは、この記述ですと2回目以降のログインユーザー名が1回目のログインユーザー名をDBのフィールド内で上書きします(まったく異なるユーザーがログインできる設定になっています)。 それを上書きすることなく、DBの同一のフィールド内にログインユーザー名を新しい順に付け足していき、サイト上では最も新しいログインユーザー名をひとつ表示するという設定にすることは可能でしょうか(最終的な目的はサイト上で最新のものと同様に全てのログインユーザーを表示できるようにしたい)。 $sqlvalの記述を変更するべきなのかと考えておりますが、どうすればよろしいかご教示頂けませんでしょうか。 EC-CUBE:3.0.1 データベース: MySQL 5.0.77 OS:Linux p47. PHP: 5.2.9 WEBサーバ: Apache/2.2.3 |
umebius |
投稿日時: 2016/10/8 22:50
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: $sqlvalの記述で上書きでなく、DBの同一フィールド内に付け加える設定にしたいです。 上書き(UPDATE)ではなくレコードをINSERTすると問題ございますでしょうか?
>DBの同一のフィールド内にログインユーザー名を新しい順に付け足していき 状況がよく飲み込めませんが、ログイン記録を残すのであれば、通常同一のフィールドに付け足すよりは、行を追加していくかと思います。 なお、$sqlval['login_user'] = $_SESSION['login_name'];周辺のコードを書いていただかないとこれだけでは判断が困難かと思います。
|
kenz |
投稿日時: 2016/10/9 1:25
対応状況: −−−
|
常連 登録日: 2010/6/8 居住地: 投稿: 46 |
Re: $sqlvalの記述で上書きでなく、DBの同一フィールド内に付け加える設定にしたいです。 umebius様
簡略化しすぎていて申し訳ございません。 LC_Page_Admin_Products_Product.phpのfunction lfRegistProductを利用してdtb_productsと同様のテーブルに新規作成したフィールドlogin_userにデータをinseartしております。 そのような状況のなか、全てのログインユーザーのログイン履歴が必要なため前回の様な質問をいたしました。 前回の様な質問の例は技術的に可能でしょうか。可能な場合、具体的にどのファイルを変更しなければいけませんでしょうか。 またこの様なケースの場合、umebius様がおっしゃられている様な方法ではどのような設定にしなければいけないのでしょうか。(新たにテーブルを作成しなければいけないのでしょうか。) |
umebius |
投稿日時: 2016/10/9 20:07
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: $sqlvalの記述で上書きでなく、DBの同一フィールド内に付け加える設定にしたいです。 目的は、管理画面で商品の登録・編集を行った管理ユーザーの履歴を残したいということでよろしいでしょうか?
だとするとlfRegistProductメソッドは新規登録部分と既存のデータの更新部分にわかれるかと思いますので、 既存のデータの更新部分で $login_user = '付け足すログインユーザー'; $sqlval['login_user'] = $arrRet['login_user'] .':'. $login_user; というように付け足せば良いように思います(未検証です) 1つのフィールド内でどんどん増えれば良いなら特にテーブルを作成する必要はないですね。
|
kenz |
投稿日時: 2016/10/17 2:17
対応状況: −−−
|
常連 登録日: 2010/6/8 居住地: 投稿: 46 |
Re: $sqlvalの記述で上書きでなく、DBの同一フィールド内に付け加える設定にしたいです。 umebius様、
おかげさまで、フィールド内にデータが蓄積さています。感謝いたします。 ただそのデータが全てテンプレート上で表示されてしまいます。 これを直近のデータだけが表示されるようにするにはどうしたら宜しいかお分かりになりますでしょうか。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |