1

こんにちは私は私の懸念を説明するために私が下に行ったサンプルコードを置きました。ページ上の目的の場所に「echo」メッセージを表示する以外は、コードは正常に機能します。コードが実行されると、エコーメッセージはページに表示されますが、メッセージを「cell4」テーブルセルに表示する必要があります。

コードを{echo"Nameis 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;} 
4

2 に答える 2

0

PHPコードは、コードを実行するドキュメントの場所に挿入されます。つまり、次のように処理を行う必要があります。

<?php

if (isset yada yada)
    $cell_value = ...
}
?>

<body>
<table>
<tr>
    <td><?php echo $cell_value ?></td>
</tr>
</table>
</body>

PHPは、すでに出力されているものに「到達」して変更することはありません。

于 2012-10-14T03:10:00.217 に答える
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>
于 2012-10-14T03:10:40.077 に答える