[英]how to create row dynamic and save to database
你好,我有一個大問題。 我需要在時間表中添加動態行,並將其保存到數據庫中。 這里看起來像我的時間表! 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頁,所以您知道我的帖子太長了。
編輯這是我如何將我的頁面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>
您需要使用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”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.