我希望我的php表的第二列和第三列是每行不同页面的超链接。我需要将3个参数传递给超链接
1)下表中列出的第一列 - empID
的值
2)$ weekStart中的值 - 从页面顶部的input type="date"
中选择
3)$ weekEnd的值 - 从页面顶部的input type="date"
中选择
我正在尝试这种语法,但它没有传递参数,我得到一个页面未找到错误。该语法应该如何改变,以便它传递所有3个参数并导航到适当的页面?
Week Start:<input type="date" name="weekStart">
Week End:<input type="date" name="weekEnd">
<input type="submit" name="submit" value="View Employee Data">
<?php
if (isset($_POST['submit']))
{
$weekStart = $_POST['weekStart'];
$weekEnd = $_POST['weekEnd'];
//Generate Table Here
}
?>
foreach ($tsql as $res)
{
print "<tr>";
print "<td>" . $res->EmpID . "</td>";
print "<td><a href="DailySales.php?param1=$weekStart;param2=$weekEnd'.$Row['EmpID'].'">'.$Row['DailySales'].'</a>'" . $res->DailySales . "</td>";
print "<td><a href="WeeklySales.php?param1=$weekStart;param2=$weekEnd'.$Row['EmpID'].'">'.$Row['SalesForWeek'].'</a>'" . $res->SalesForWeek . "</td>";
print "</tr>";
}
答案 0 :(得分:1)
你没有很好地附加字符串。请尝试以下代码
foreach ($tsql as $res)
{
print "<tr>";
print "<td>" . $res->EmpID . "</td>";
print "<td><a href='DailySales.php?param1=".$weekStart."¶m2=".$weekEnd."¶m3=".$Row['EmpID']."'>".$Row['DailySales']."</a>" . $res->DailySales . "</td>";
print "<td><a href='WeeklySales.php?param1=".$weekStart."¶m2=".$weekEnd."¶m3=".$Row['EmpID']."'>".$Row['SalesForWeek']."</a>" . $res->SalesForWeek . "</td>";
print "</tr>";
}
如果仍显示未找到的页面,请检查文件名。
更新:我希望您需要替换循环中的一些变量,如以下代码中所更新的
foreach ($tsql as $res)
{
print "<tr>";
print "<td>" . $res->EmpID . "</td>";
print "<td><a href='DailySales.php?param1=".$weekStart."¶m2=".$weekEnd."¶m3=".$res->EmpID."'>".$res->DailySales."</a></td>";
print "<td><a href='WeeklySales.php?param1=".$weekStart."¶m2=".$weekEnd."¶m3=".$res->EmpID."'>".$res->SalesForWeek."</a></td>";
print "</tr>";
}
答案 1 :(得分:0)
完全未经测试,我不能100%确定这些链接中的数据应该是什么,但我认为这应该为您提供一个坚实的起点,您可以调整HTML生成以获得您想要的
我根本不打算尝试在PHP中完成它,将整个数据集传递给JS并在那里完成。
Week Start:<input type="date" name="weekStart" id="weekStart">
Week End:<input type="date" name="weekEnd" id="weekEnd">
<input type="submit" name="submit" value="View Employee Data">
<?php
if (isset($_POST['submit']))
{
$weekStart = $_POST['weekStart'];
$weekEnd = $_POST['weekEnd'];
//Generate Table Here
}
// Create a JSON version of your data to pass to the script
$data = json_encode( $tsql );
?>
<!-- Create an empty table for your data-->
<table id="employee-table"></table>
<script>
$("#submitForm").on("click", function(e) {
// Stop the form from reloading the page
e.preventDefault();
// Set up your variables, you'll need to add ID's to the form inputs
var employees = <?php echo $data; ?>;
// See the employees data in your inspector console
console.log(employees);
var weekStart = $("#weekStart").val();
var weekEnd = $("#weekEnd").val();
// Generate the HTML for all the employees
var html = "";
for( var1=0; i<employees.length; i++ ) {
html += "<tr>";
html += "<td>" . employees[i].EmpID . "</td>";
html += "<td><a href='DailySales.php?param1='" + weekStart + "'¶m2='" + weekEnd + "'¶m3='" + employees[i].id +">" + employees[i].DailySales + "</a></td>";
html += "<td><a href='WeeklySales.php?param1='" + weekStart + "'¶m2='" + weekEnd + "'¶m3='" + employees[i].id +"'>" + employees[i].SalesForWeek + "</a></td>";
html += "</tr>";
}
// Insert the HTML that you generated into the table.
$("#employee-table").html(html);
});
</script>