sql >> データベース >  >> RDS >> Mysql

PHPを使用してフォーム配列データをMySQLに挿入する

    PDOオブジェクトを使用すると、これが簡単になります。とにかくmysql_はレガシーです:

    $db = new PDO($hostname,$username,$password);
    
    
    $qry = "INSERT INTO table (
                Date,
                FirstName,
                LastName,
                StraightHours,
                OvertimeHours,
                PremiumHours,
                TotalHours,
                PerDiem
            )
            VALUES (:date, :firstname, :lastname, :straighthours, :overtimehours, :premiumhours, :totalhours, :perdiem)"; // colon variables will be bound to actual variable
    
    $statement = $db->prepare($query); //prevents injection
    
    // binds variables to place holder in query
    $statement->bindValue(':firstname', $firstname);
    $statement->bindValue(':lastname', $lastname);
    $statement->bindValue(':straighthours', $straighthours);
    $statement->bindValue(':overtimehours', $overtimehours);
    $statement->bindValue(':premiumhours', $premiumhours);
    $statement->bindValue(':totalhours', $totalhours);
    $statement->bindValue(':perdiem', $perdiem);
    
    $statement->execute();
    $statement->closeCursor();
    

    次の方法でSQLに何かを渡す前に、phpを使用してさらに入力チェックを行うことができます:

    trim(strip_tags(htmlentities($firstname)));
    

    PDOは、IMOの使用と理解がはるかに簡単です

    更新:

    PDOのチュートリアル

    更新#2:

    1日あたりのアレイの機能を追加するには、次の操作を実行できます。

    <input type="text" name="firstname1">
    
    // do this for all fields then
    $workingday1 = array();
    $workingday1['firstname'] = $_GET['firstname1'];
    // etc. for all the other fields
    

    次に、次の方法でフィールドにアクセスできます。

    $workingday1 = $_GET['workingDay1']; // or post or however you want to pass it
    $firstname = $workingday['firstname'];
    

    その後、データベースを好きなように整理できます。すべての値を含む単一のテーブルを作成し、選択内容を編集して、従業員、日、またはw/eごとに表示できます。また、従業員ごとにテーブルを作成し、それらのテーブルから取得して、好きなようにデータを表示することもできます。




    1. DockerコンテナにOracleクライアントをインストールします

    2. 'Order by'が指定されていない場合、クエリはレコードセットに対してどの順序を選択しますか?

    3. rownum=3の給与からrownumを選択します。

    4. SQLServerのユーザー定義関数からエラーを報告する方法