当我将if语句添加到我的PHP代码时,怎么没有出现?

时间:2015-08-22 17:01:14

标签: php html

我正在尝试创建一个表单,回应用户输入的任何名称'字段,但是,我无法弄清楚为什么当我添加if语句时,代码中没有任何内容出现。

这是我的index.php代码:

<?

if (empty($_POST['name'])) {
echo "Hello world!";
}   else {
    echo "Hello $_POST['name']";

}
?>

<html>
<head>
    <?php include 'header.php'; ?>
</head>

<body>

<form action="index.php" method="post">
    <p>Name: <input type="text" name="name"></p>
    <input type="submit" name="submit" value="Go">
</form>

</body>
<footer>
    <?php include 'footer.php'; ?>
</footer>
</html>

4 个答案:

答案 0 :(得分:4)

将数组添加到echo中的有效语法是:

echo "Hello {$_POST['name']}";

或者使用以下方法连接它:

echo "Hello " . $_POST['name'];

参考:echo

答案 1 :(得分:0)

确保在调试时启用错误:

error_reporting(E_ALL);
ini_set('display_errors', 1);

问题,似乎是PHP短标记<?可能未启用,尝试使用<?php或在php.ini启用短标记

答案 2 :(得分:0)

该页面正在使用您的表单重新加载index.php。将<form action="index.php" method="post">更改为<form action="" method="post">

答案 3 :(得分:0)

你不能在“”引号内回显数组。

试试这个(var in {}):

echo "Hello {$_POST['name']}";

或者这个(使用字符串运算符):

echo "Hello " . $_POST['name'];