您好我在下面放了一个示例代码来解释我的担忧。只是代码工作正常,除了在页面上的所需位置显示“echo”消息。当代码执行时,回显消息就出现在页面上,但是我需要将消息显示在'cell4'表格单元格中。
我尝试修改代码为{echo“Name is blank!”;在第30行返回false;}但似乎它不是正确的方法,因为结果没有变化。有人可以告诉我有没有解决方法?谢谢你的期待。
以下是代码:
<html>
<head><title>Test</title></head>
<body>
<form method="POST" action="<?= $_SERVER['PHP_SELF'] ?>">
<table border="1">
<thead>
<tr>
<td colspan="4">User detail</td>
</tr>
</thead>
<tr>
<td id="cell1">Name:</td>
<td id="cell2"><input type="text" name="Uname"></td>
<td id="cell3"><input type="submit" name="SendNow" value="Save"></td>
<td id="cell4"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
if(isset($_POST['SendNow']))
{
$nm = $_POST['Uname'];
if($nm == "")
{echo "Name is blank!"; return false;}
else
{echo "Well done!"; return false;}
}
?>
Sorry the edited code has not appeared correct in the above text. This is how I have tried modifying : {echo "<td id='cell4'>Name is blank!</td>"; return false;}
答案 0 :(得分:0)
将PHP代码插入到执行代码的文档中。这意味着你需要更像这样的处理:
<?php
if (isset yada yada)
$cell_value = ...
}
?>
<body>
<table>
<tr>
<td><?php echo $cell_value ?></td>
</tr>
</table>
</body>
PHP不会“回头”并改变已经输出的内容。
答案 1 :(得分:0)
<?php
if(isset($_POST['SendNow']))
{
$nm = $_POST['Uname'];
$message = '';
if($nm == "")
{$message = "Name is blank!";}
else
{$message = "Well done!";}
}
?>
<html>
<head><title>Test</title></head>
<body>
<form method="POST" action="<?= $_SERVER['PHP_SELF'] ?>">
<table border="1">
<thead>
<tr>
<td colspan="4">User detail</td>
</tr>
</thead>
<tr>
<td id="cell1">Name:</td>
<td id="cell2"><input type="text" name="Uname"></td>
<td id="cell3"><input type="submit" name="SendNow" value="Save"></td>
<td id="cell4"><?php if (!empty($message)) echo $message; ?></td>
</tr>
</table>
</form>
</body>
</html>