我可能有两个问题。第一个问题,我认为我知道答案,但我会问它反正只是因为我错过了一些明显的东西。
您可以将HTML行中的数据插入到db表中吗?见下文:
<tr><td>Colby (Big Cheese)</td>
<td>1A</td>
<td>
<select width=200>
<option>Key Movement</option>
<option>Movement -1</option>
<option>Movement -2</option>
<option>Movement -3</option>
<option>Movement -4</option>
</select></td>
<td>Sets/Reps/Seconds</td>
<td>Rest</td>
<td>00</td>
</tr><tr><td>Mike (Big Mac)</td>
<td>1A</td>
<td>
<select width=200>
<option>Key Movement</option>
<option>Movement -1</option>
<option>Movement -2</option>
<option>Movement -3</option>
<option>Movement -4</option>
</select></td>
<td>Sets/Reps/Seconds</td>
<td>Rest</td>
<td>00</td>
</tr>
我希望每个表行的数据都写入db中的一行。如果答案是否定的,我将转到我的第二个问题。
这是我输出此HTML的EDITED数组。
$count;
if(empty($workout_class) === false)
{
foreach($workout_class as $wc){
if ($wc['pagenum'] !== $pagenum) continue 1;
echo '<tr>
<td name="first_name'.$count.'">'. ($wc['first_name']).'
<span name="nickname'.$count.'">('. ($wc['nickname']).')</span>
</td>
<td name="order'.$count.'">'. ($wc['order']). '</td>
<td>
<select name="movement'.$count.'" width=200>
<option>'. ($wc['mv_00']). '</option>
<option>'. ($wc['mv_01']). '</option>
<option>'. ($wc['mv_02']). '</option>
<option>'. ($wc['mv_03']). '</option>
<option>'. ($wc['mv_04']). '</option>
</select></td>
<td name="rep_set_sec'.$count.'">'. ($wc['rep_set_sec']). '</td>
<td name="rest'.$count.'">'. ($wc['rest']). '</td>
<td>00</td>
</tr>';
$count++;
} // foreach($data_array
我有几个问题。 $_POST
未从“名称”值中获取任何数据。它也只循环通过第一行并停止。任何想法。
答案 0 :(得分:0)
您需要使用服务器端(PHP,ASP,JSP)语言通过表单(GET,POST)或JQuery / Ajax来执行此操作。您已经有了选择输入,因此一旦设置了数据库和服务器端语言,它就会非常容易实现。
<?php
$km1 = $_POST['key_move1'];
$km2 = $_POST['key_move2'];
/*
Your mysql code to enter $km1 and $km2 into the database
*/
echo $km1 . " -- " . $km2 . " <- ... Thos are your values that would pass to database";
?>
<form action="#" method="post">
<table>
<tr><td>Colby (Big Cheese)</td>
<td>1A</td>
<td>
<select name="key_move1" width=200>
<option>Key Movement</option>
<option>Movement -1</option>
<option>Movement -2</option>
<option>Movement -3</option>
<option>Movement -4</option>
</select></td>
<td>Sets/Reps/Seconds</td>
<td>Rest</td>
<td>00</td>
</tr><tr><td>Mike (Big Mac)</td>
<td>1A</td>
<td>
<select name="key_move2" width=200>
<option>Key Movement</option>
<option>Movement -1</option>
<option>Movement -2</option>
<option>Movement -3</option>
<option>Movement -4</option>
</select></td>
<td>Sets/Reps/Seconds</td>
<td>Rest</td>
<td>00</td>
</tr>
</table>
<input type="submit" value="Go!">
php loop:
$count = 0;
foreach($workout_class as $wc){
if ($wc['pagenum'] !== $pagenum) continue 1;
echo '<tr><td>'. ($wc['first_name']).' ('. ($wc['nickname']).')</td>
<td>'. ($wc['order']). '</td>
<td>
<select name="key_move' . $count . '" width=200>
<option>'. ($wc['mv_00']). '</option>
<option>'. ($wc['mv_01']). '</option>
<option>'. ($wc['mv_02']). '</option>
<option>'. ($wc['mv_03']). '</option>
<option>'. ($wc['mv_04']). '</option>
</select></td>
<td>'. ($wc['rep_set_sec']). '</td>
<td>'. ($wc['rest']). '</td>
<td>00</td>
</tr>';
$count++
}
答案 1 :(得分:0)
与Zak提到的一样,您需要将此表放在表单中并提交,然后处理服务器端(PHP)...或让JavaScript获取值并通过AJAX提交到服务器端脚本。无论哪种方式,您都必须拥有一个脚本服务器端来获取这些值,构建查询并生成数据库条目。
作为旁注,您可能希望为每个HTML组件创建id元素,以便您可以轻松地从POST检索这些值,如此...
<select id="colby" name="colby" width=200>