PHP未定义索引:
我是新来的PHP。。。 只需在我的about.php文件(通过超链接链接到index.php文件)中尝试这段简单的代码:PHP未定义索引:,php,html,Php,Html,我是新来的PHP。。。 只需在我的about.php文件(通过超链接链接到index.php文件)中尝试这段简单的代码: 请输入您的姓名: 输入您的评论: 我得到以下错误: 注意:未定义的索引:第71行的D:\xampp\htdocs\stathis1\about\about.php中的名称 请输入您的姓名,因为未设置$\u POST[“name”],您将收到该通知。因此,您需要首先测试它是否存在,然后将其分配给$name变量,如果未设置,则将其分配给空字符串 你可以改变
-
请输入您的姓名:
-
输入您的评论:
-
我得到以下错误:
注意:未定义的索引:第71行的D:\xampp\htdocs\stathis1\about\about.php中的名称
请输入您的姓名,因为未设置
$\u POST[“name”]
,您将收到该通知。因此,您需要首先测试它是否存在,然后将其分配给$name
变量,如果未设置,则将其分配给空字符串
你可以改变
$name=$\u POST[“name”]代码>
到
$name=isset($\u POST[“name”])?$\u POST[“name”]:“”
使用isset()而不是empty(),因为未定义索引时,isset()函数不会触发通知。这是因为$\u POST['name']
尚未提交/设置。您需要使用if语句或三元运算符:
if (isset($_POST['name'])) {
$name = $_POST['name'];
if (!empty($name)) {
echo 'Your name is ' . $name . ' and you like ny site!';
} else {
echo 'Please enter your name';
}
}
或者,一个较短的方法:
$name = isset($_POST['name']) ? $_POST['name'] : '';
在启动php部件之后,在代码周围添加if语句,这样它只在“name”存在时执行
像这样:
<?php
if(isset($_POST["name"])){
$name = $_POST["name"];
if (!empty($name)) {
echo "Your name is ".$name."and you like ny site!";
} else {
echo "Please enter your name";
}
} else {
echo "Please enter your name";
}
?>
我没有收到错误,但程序仍然没有执行应该执行的操作,即将插入的名称放入文本区域。。。我相信光标永远不会进入if(!isset($name))条件…不要忘记用
关闭表单。你可以用var\u dump($\u POST)
检查$\u POST
的内容,用更改后的代码更新你的问题可能是个好主意。我得到“请输入你的名字”在文本框中,即使在名称字段中插入名称后按下提交按钮。。。。为什么名字不存在?
if(isset($_POST["name"]))
<?php
if(isset($_POST["name"])){
$name = $_POST["name"];
if (!empty($name)) {
echo "Your name is ".$name."and you like ny site!";
} else {
echo "Please enter your name";
}
} else {
echo "Please enter your name";
}
?>