如何创建行动态并保存到数据库

时间:2014-04-15 17:37:33

标签: php html sql database dynamic

你好我有一个大问题。我需要在我的时间表中添加动态行并将它们保存到我的数据库中。这看起来像我的时间表!http://cjoint.com/data/0DptGlbePgo.htm 我需要每天能够添加项目客户端,描述lieu(英文位置)和总计。每天一个按钮,用于添加行。当我按下按钮完成(图片中没有显示因为条件完成时它只显示)我想在我的数据库中添加它们。目前我将展示我的进展情况。

这里和我的一天(星期一)的例子

<!-----------------------------------LUNDI----------------------------------------------------->
<tr>
                <td>
                    <b>Lundi</b> </br><?php echo $date2 ?>
                </td>
                <td>
                    </br>
                    <input size="10" type="text" id="projlundi" name="projlundi"onkeypress="return handleEnter2(event, this, 'task');"/>

                </td>
                <td>
                    </br>

                    <input type="text" name="projdesclundi" size="30" class "desc" id ="projdesclundi"readonly />
                </td>
                <td>
                    </br>
                    <textarea rows="1" cols="20" name="taskdesclundi" id="taskdesclundi"/> </textarea>
                </td>
                <td>
                    </br>
                    <input type="text" name="lieu1" size="10">
                </td>
                <td>
                </br>

<!-- dꣵt section cobobox tache avec tool tip -->                    
                    <label title="Selectlundi"> <select title="Selectlundi" id="Selectlundi" name="Selectlundi">
                    <?php

                        $stmt->execute();
                        while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
                            echo ' <option title="';
                            echo $row['tacName'];
                            echo '">';
                            echo $row['tacId'];
                            echo '</option>'."\n";
                         $task = array();

                            //echo '<option value="'.$row['tacName'].'">'.$row['tacId'].'</option>'."\n";
                        }
                    ?>
                </select>
        </label>
<!-- Fin section cobobox tache avec tool tip -->    
                </td>   
            <!-- calculter le temps pour le lundi -->       

                        <td>
                        </br>
                    <span id="calculTemps1">
                            <input type="number" id="input2" class="temps" name="tempsl"  max="24" min="0" value="0" />

                    </span>
                </td>   

        </tr>

以下是我将星期一插入数据库的方法

<?php
 session_start();
// Connect to the DB
try
{
    $bdd = new PDO('mysql:host=localhost;dbname=cruel', 'root', '');
}
catch (Exception $e)
{
    die('Erreur : ' . $e->getMessage());
}

    $timId = "" ;


//lundi

if (isSet($_POST['projdesclundi']))
    {
    $usrUserName =  $_POST['usrUserName'] ;
    $lieu1 = $_POST['lieu1'] ;
    $projdesclundi = $_POST['projdesclundi'] ;
    $timDateStartOfWeek = $_POST['data'] ;
    $Selectlundi =  $_POST['Selectlundi'] ;
    $projlundi =  $_POST['projlundi'] ;
    $date2 =  $_POST['date2'] ;
    $tempsl =  $_POST['tempsl'] ;
    }   



        //---------------------------- INSERTION lundi--------------------------------------

                    // Insertion description,location tache, numero de projet
            $req = $bdd->prepare('INSERT INTO projetstaches 
            (prtDescription,prtLocation,prtTaskId,prtProjetNum,prtDate,prtTime,prtTimeSheetId)
            VALUES(:projdesclundi, :lieu1 ,:Selectlundi, :projlundi, :date2, :tempsl, :timId )');
            $req->execute(array(

                'projdesclundi' => $projdesclundi,
                    'lieu1' => $lieu1,
                    'Selectlundi'=> $Selectlundi,
                    'projlundi'=> $projlundi,
                    'date2'=> $date2,
                    'tempsl'=> $tempsl,
                    'timId'=> $timId,

            ));

所以我对代码的问题我已经展示了如何继续我在ajax,jquery,javascrip0t中尝试过很多东西而且都失败了。并创造许多错误。如果我忘了表达我的道歉,我会编辑因为我有超过15页,所以你明白我的帖子会太长。

编辑我现在如何将我的PAGE autocomplete.php发布到insert.php

在我的星期日之前(与星期一代码相同)我有我的

<form action = 'insert.php' method="post"  >

并在星期六(我的时间表的最后一天)结束后,我有这个

<input type="text" id="result" readonly="readonly" name="total" />

<input type="hidden" name="date2" value="<?php echo $date2; ?>" />

<input type="submit"  value="Terminé" id="end" />
<input type="hidden" name="data" value="<?php echo $date; ?>" />
<input type="hidden" name="usrUserName" value="<?php echo $usrUserName; ?>" />

</p>
</form>

1 个答案:

答案 0 :(得分:0)

你需要在执行!

之前使用bind_param
 $req = $bdd->prepare('INSERT INTO projetstaches 
            (prtDescription,prtLocation,prtTaskId,prtProjetNum,prtDate,prtTime,prtTimeSheetId)
            VALUES(:projdesclundi, :lieu1 ,:Selectlundi, :projlundi, :date2, :tempsl, :timId )');
$req->bind_param('ssssssss',
      $usrUserName,
     $lieu1,
     $projdesclundi,
     $timDateStartOfWeek,
     $Selectlundi,
     $projlundi,
     $date2,
     $tempsl);

     $req->execute();

注意:bindparam的第一个参数是一个字符串,其中包含下一个数据的类型。你总是可以使用's'(用于字符串)。在上面的例子中,每个数据域都有一个's'。