2

私は p4a アプリケーション フレームワークを使用しており、いくつかのデータベースを構築しましたが、そのうちの 1 つで予約の日付を収集する必要があります。これに関するフォーラムで、p4a フレームワークを使用している人なら誰でも助けてくれます。

en_GBp4aフィールド内の日付を設定するローカルセットがありますが、実際にデータをデータベースに書き込むにはdd-mm-yyyyそれが必要です。yyyy-mm-dd

この操作の現在のコードは次のとおりです。

$this->build("p4a_field","date")
         ->setlabel("Date")
         ->setType('date')

$location = $this->AreaName->getNewValue();
    $date = $this->date->getNewValue();
    $merono = $this->merono->getNewValue();

    $p4a = p4a::singleton();


$p4a->i18n->autoUnformat($date, "shortdate");

    p4a_db::singleton()->query("INSERT INTO meetingrooms(location, date, merono)
        VALUES
        ('$location', '$date', '$merono')");

関数を傍受することを計画していましafterClickたが、最初に必要な構文を知る必要があります。

ありがとう、

スティーブ

4

1 に答える 1

2

私が正しく理解していれば、MySQLに対応していない形式の日付がいくつかありますが、それらを使用したいですINSERTsよね?

MySQLにそれらを変換させてはどうですか?

SELECT STR_TO_DATE('31-12-2012','%d-%m-%Y');
    -> '2012-12-31'

編集:

日付があるようです:

$date = $this->date->getNewValue();

したがって、SQLで式を使用する必要があります。

p4a_db::singleton()->query("INSERT INTO meetingrooms(location, date, merono)
VALUES
('$location', STR_TO_DATE('$date','%d-%m-%Y'), '$merono')");

私はp4aの男ではないので、うまくいけばうまくいきます。

ほとんどの言語では、そのようなコードでSQLインジェクションにさらされることに注意してください。p4aはそれをカバーしますか、それとも位置パラメータを提供しますか?

幸運を。

于 2012-11-13T18:08:51.733 に答える