在同一页面上的表格单元格内回显PHP消息

时间:2012-10-14 03:07:44

标签: php

您好我在下面放了一个示例代码来解释我的担忧。只是代码工作正常,除了在页面上的所需位置显示“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;} 

2 个答案:

答案 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>