基于用户输入数据使用php创建动态表
目前,我正在尝试使用PHP创建一个每日类例程。首先,该网站将有七天的名称作为复选框和一个文本框,用户可以在其中输入课程周期数 当用户提交表单时,代码将在另一个表中创建另一个表单(看起来像)。最后,用户可以输入班级名称、教师名称,代码将其存储在数据库中 但我的问题是动态创建表。我不知道如何解决这个问题。 任何帮助都将不胜感激 下面您可以看到我迄今为止所做的尝试:基于用户输入数据使用php创建动态表,php,Php,目前,我正在尝试使用PHP创建一个每日类例程。首先,该网站将有七天的名称作为复选框和一个文本框,用户可以在其中输入课程周期数 当用户提交表单时,代码将在另一个表中创建另一个表单(看起来像)。最后,用户可以输入班级名称、教师名称,代码将其存储在数据库中 但我的问题是动态创建表。我不知道如何解决这个问题。 任何帮助都将不胜感激 下面您可以看到我迄今为止所做的尝试: <h1>Form two</h1> <form action="routine_create_proce
<h1>Form two</h1>
<form action="routine_create_process.php" method="POST">
<h3>How many class period do you want to add?</h3>
<input type="text" name="period"/>
<h3>Avalible class day</h3>
<label><input type="checkbox" name="f[]" value="sat" /> Saturday </label>
<br />
<label><input type="checkbox" name="f[]" value="sun" /> Sunday </label>
<br />
<label><input type="checkbox" name="f[]" value="mon" /> Monday </label>
<br />
<label><input type="checkbox" name="f[]" value="tues" /> Tuesday </label>
<br />
<label><input type="checkbox" name="f[]" value="thurs" /> Wednesday </label>
<br />
<label><input type="checkbox" name="f[]" value="thus" /> Thursday </label>
<br />
<label><input type="checkbox" name="f[]" value="fri" /> Friday </label>
<br />
<input type="submit" value="SUBMIT"/>
</form>
表格二
你想增加多少课时?
有效上课日
星期六
星期天
星期一
星期二
星期三
星期四
星期五
我的PHP代码:
<?php
$period=$_POST['period'];
$arr2=$_POST['f'];
?>
<table border='2'>
<?php
$count=count($arr2)-1;
for($i=0;$i<=$count;$i++){
echo "<tr><td>";
if($i==0){
echo "<table>";
echo "<div class='wrap_p'>";
for($r=1;$r<=$period;$r++){
echo "<td>";
echo "<div class='add_css'>";
echo $r;
echo "</div></td>";
}
echo "</div>";
echo "</table>";
}
echo "</tr><tr><td>";
echo $arr2[$i];
echo "</td>";
echo "<td> <input type='text' size='20' /></tr></td>";
}
?>
</table>
这应该能解决你的问题
<?php
$arr2=$_POST['f'];
$period = $_POST['period'];
?>
<table border='2'>
<?php
$count=count($arr2)-1;
?>
<tr><td> </td>
<?php
for($r=1;$r<=$period;$r++){
echo "<td>";
echo "<div class='add_css'>";
echo $r ;
echo "</div></td>";
}
for($i=0;$i<=$count;$i++){
echo "<tr><td>";
echo $arr2[$i];
for($r=1;$r<=$period;$r++)
{
echo "<td>";
echo "<div class='add_css'>";
echo "<input type='text' size='20' />" ;
echo "</div></td>";
}
echo "</td>";
}
?>
</table>
我想这已经接近你需要的了
<html>
<body>
<?php
$period = 8;
$arr2=array('sat','sun','mon','tue','wed','thu','fri');
?>
<table border='2'>
<tr>
<th>Days</th>
<?php
for($i=1;$i <= $period; $i++){
?><th><?php echo $i; ?></th><?php
}
?>
</tr>
<?php
foreach($arr2 as $day){
?>
<tr>
<th><?php echo $day; ?></th>
<?php
for($i=1;$i <= $period; $i++){
?>
<td>
<input type="text" placeholder="subject">
<input type="text" placeholder="subject code">
<input type="text" placeholder="teachers name">
</td>
<?php
}
?>
</tr>
<?php
}
?>
</table>
</body>
</html>
天
未定义变量$period
。你能更新你的代码吗?对不起,我已经更新了代码。它可以工作,但我还需要在表格顶部显示课时编号。整个数字是多少?只需打印$period,它会显示period的编号。我不知道应该在哪里打印打印period编号的变量。我试过这个。回声“;回声“;echo$r;回声“;回声“;它会像这样返回,但我不想那样,没问题。你的想法对吗?记住用POST输入替换$arr2