我不明白如何使用锚标记传递值。我有一个表单,它需要一些值并提交到我的mysql数据库。我能够查看表格。每行都有列编辑和删除。当我单击编辑时,我想将该行的主键(作业名称)传递给我的编辑页面,类似地删除。我能够看到URL上的值,但我无法在编辑页面上获取值。我不明白有什么用?在锚标签。
ViewAllJobs.php
<?php
include 'jobDB.php';
$query="Select * from Jobs";
$result=mysqli_query($con,$query);
echo'
<html>
<center><h1>View all Jobs</h1></center>
<body bgcolor="#E6E6FA">
<center><form method=POST action=edit.php >
<table border="1" style="border-collapse:collapse; border-color:Black; border-style:solid; border-width:1pt">
<tr>
<th>Job Name</th>
<th>Job State</th>
<th>Schedule days</th>
<th>URL</th>
<th>Filename</th>
<th>To</th>
<th>CC</th>
<th>Reply To</th>
<th>From</th>
<th>EmailSubject</th>
<th>Email Content</th>
<th>Edit</th>
<th>Delete</th>
</tr>';
while($row=mysqli_fetch_array($result)){
echo'<tr>
<td>'.$row["jobName"].' </td>
<td>'.$row["jobState"].' </td>
<td>'.$row["jobSchedule"].' </td>
<td>'.$row["jobURL"].' </td>
<td>'.$row["jobFilename"].' </td>
<td>'.$row["jobToList"].' </td>
<td>'.$row["jobCCList"].' </td>
<td>'.$row["jobReplyTo"].' </td>
<td>'.$row["jobFrom"].' </td>
<td>'.$row["jobSubject"].' </td>
<td>'.$row["jobEmailContent"].' </td>
<td><a href="edit.php?jobName='.$row["jobName"].'">Edit</a></td>
<td><a href="delete.php?jobName='.$row["jobName"].'">Delete</a></td>
</tr>
';
}
echo'</table>
</form>
<center><a href="welcome.php">Click to return to Home Page</a></center>
</center>
</body>
</html>
';
?>
edit.php
<?php
include 'jobDB.php';
$jobName=isset($_REQUEST['jobName']);
if($jobName){
echo"jobname is set";
}
else{
echo"job name is not set";
}
echo"<br>jobname is".$jobName;
$query="select* from Jobs where jobName=".$jobName;
$result=mysqli_query($con,$query);
if($result){
echo"<br>query succesful";
}
$fetch=$row=mysqli_fetch_row($result);
if($fetch){
echo"<br>result set fetched";
}
else{
echo"<br>result set not fetched";
}
?>
在edit.php中,$jobName=isset($_REQUEST['jobname'])
在$jobName=1
应该具有值job1
时给出jobname
,但是当我给$jobName=isset($_REQUEST['jobName'])
时,它不存在变量$_REQUEST()
1}},什么都行不通。我应该在{{1}}中给出什么名字。请帮助。
答案 0 :(得分:0)
应该是:
$jobName = $_REQUEST['jobName'];
isset()
用于检查变量IS SET,而不是分配变量。
当您使用$jobName = isset($_REQUEST['jobName']);
时,如果1
已设置且$_REQUEST['jobName']
代表1
,则变量将设置为true
。因此$jobname
变为1
。
您的代码应为:
$jobName = $_REQUEST['jobName'];;
if(isset($jobName)) {
echo "jobname is set";
}
else {
echo "job name is not set";
}
echo "<br>jobname is" . $jobName;
$query = "SELECT * FROM Jobs WHERE jobName = '$jobName'";
要回答锚标记中?
的用法,它用于PHP获取/请求值,更多信息请http://www.w3schools.com/php/php_forms.asp。
希望这有帮助,谢谢!