• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:formの名前をperlに書き込まずに簡単に取るには?(eval使用で簡単にできますか?))

FORMの名前を簡単に取得する方法は?

このQ&Aのポイント
  • 質問者はFORMから入力された情報をDBに書き込むため、FORMの名前を簡単に取得したいと考えています。
  • 現在の方法としては、DBのフィールド名とFORMの名称を一致させ、evalを使用して名前をつなげる方法を試していますがうまくいきません。
  • より簡単な方法があれば教えてほしいと質問者は頼んでいます。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

失礼、FORMのidの配列は、@form_name ではなくて、@field_name ですね。 直すと、 my $db_value = join ',' => @FORM{@filed_name}, $data, $time;

fukutokyo
質問者

お礼

ありがとうございました。できました! こんなに簡単できるとは。 本当に助かりました。 しかも早い回答ありがとうございました。 追記:後でこのログをみた人向け 実際には以下のように書きました。 DBのインサートに使うには'a','b'と ' が必要だったので追加しました my @field_name = split(/,/,$db_field); #最後の2フィールドは置き換えるため不要、よって削除 pop(@field_name); pop(@field_name); # ,'を各要素につける。 my $db_value = join '\',\'' => @FORM{@field_name}, $date, $time; #最初と最後に'を付加して完成 $db_value = '\'' . $db_value . '\'';

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

ハッシュのスライスと、join を組み合わせれば1行。 my $db_value = join ',' => @FORM{@form_name}, $date, $time;

すると、全ての回答が全文表示されます。

関連するQ&A