0

私はPHPとMySqlに非常に慣れていません。テーブル関数を変更するのではなく、入力ボックスから値を取得するPHPスクリプトを使用して、この値で更新クエリを使用して列のデフォルト値を設定できる方法はありますか?

更新 1:

フォームを介して送信する値を、その列のデフォルト値にする必要があります。値を変更してデフォルトとして設定しない他の列がいくつかありますが、他のデフォルト値はさらに更新するために入力ボックスに表示する必要があります。

たとえば、 、 、 の 3 つの列がAありBますC。列Acurrdate値があります。列 B と C は整数値です。ユーザーがフォームを開くと、currdate が02-07-2012列 A であることがわかります。次に、いくつかの値を入力します: B = 5、C = 6。ユーザーがフォームを開く翌日、currdate は 03-07-2012 になります。 . 同時に、 と の値が5Bと6 にC自動的に変更されnull、前の行の値はデフォルト値と同じになります。

では、すべての新しい行が、フォームから入力された以前の値を、mysql テーブルに設定された列のデフォルト値として使用することは可能ですか?

4

1 に答える 1

0

私が理解しているように、MySQL テーブルを更新する入力フィールドがあります。そして、更新されるデータベースにいくつかの情報があります。また、入力されていないフィールドはmysqlで更新されないため、行は空になりませんか? その場合、データベースからデータを取得でき、フォームを送信した後、フィールドが空かどうかを確認し、フィールドが空の場合は、データベースから取得したフィールド値を追加します。

<?php
$sql = "SELECT * FROM users WHERE id = 1";
$result = $dbh->query($sql);
$data = $result->fetch_assoc();
?>
<form action="#" method="post" id="form">
<input type="text" id="name" class="aa"/>
<input type="text" id="email" class="aa"/>
<input type="button" id="subm" value="Update" />
</form>
<script>
$(document).ready(function () {
    $("#subm").click(function () {
        $(".aa").each(function () {
            var value = $(this).val();
            if (value == "") {
                var id = $(this).attr("id");
                $("#"+id).attr("value", "<?=$data['"+id+"']?>");
            }
        });
        $("#form").submit();
    });
});
</script>

各入力をどのように処理したか覚えていないので、クラスを追加しましたが、これは良くありません。Google で検索 - 入力フィールド jquery の各ループ。

于 2012-07-02T11:26:17.313 に答える