PHP代码出现T_PRINT语法错误求助:Parse error问题排查
修复PHP语法错误(T_PRINT)及表单提交问题
咱们先来看你遇到的 Parse error: syntax error, unexpected 'print' (T_PRINT) 错误,这个问题主要出在PHP代码的条件判断和语法细节上,我来帮你一步步排查修复:
错误根源分析
- if语句语法错误:代码开头的
ifisset($POST['submit']);存在三个问题:if和isset之间缺少空格,PHP无法识别这是一个条件判断结构- 超全局变量应该是
$_POST而非$POST(遗漏了下划线) - if语句末尾用了分号
;,这会直接终止if的逻辑,导致后续的print语句变成无归属的代码,触发"unexpected 'print'"错误
- 缺失语句结束符:部分
print语句后未加分号,比如print("<br>") print ($_POST['Favcolor']);和print("<br><br>") print($_POST['Name']);,PHP会把连续的print语句解析成语法错误 - 表单提交按钮无name属性:HTML表单里的提交按钮
<input type="submit">没有设置name="submit",导致PHP里的isset($_POST['submit'])永远为false,无法触发后续输出逻辑
修复后的完整代码
修复后的HTML代码(补全submit按钮属性+修正年龄选项)
<html> <head> <title> Title for my web page </title> </head> <body> <form action="Lesson2b.php" method="post"> Name: <input type="text" name="Name"> <br> Last name: <input type="text" name="Lastname"> <br> Age: <input type="radio" name="Age" value="Child"> 1-12 <input type="radio" name="Age" value="Teenager"> 13-19 <input type="radio" name="Age" value="Adult"> 20+ <!-- 修正重复的年龄范围 --> <br> Gender: <input type="radio" name="Gender" value="Male"> Male <input type="radio" name="Gender" value="Female"> Female <br> Favourite Color: <input type="text" name="Favcolor" value=""> <br> Favourite Platform: <input type="text" name="Platform"> <br> Mood: <input type="text" name="Mood"> <br> Which continent are you from?: <input type="radio" name="Continentality" value="Asia"> Asia <input type="radio" name="Continentality" value="North America"> North America <input type="radio" name="Continentality" value="South America"> South America <input type="radio" name="Continentality" value="Africa"> Africa <input type="radio" name="Continentality" value="Europe"> Europe <br> <input type="submit" name="submit" value="Submit Survey"> <!-- 添加name属性和显示文本 --> <br> </form> </body>
修复后的PHP代码
<html> <head> <title> Small Survey </title> </head> <body> <?php if (isset($_POST['submit'])) { // 修正if语句的语法问题 print("Hello : "); print($_POST['Name']); print(" "); print($_POST['Lastname']); print("<br>"); print($_POST['Age']); print(", "); print($_POST['Gender']); print("<br>"); // 补充缺失的分号 print($_POST['Favcolor']); print(" is "); print($_POST['Name']); print("'s favourite color"); print("<br><br>"); // 补充缺失的分号 print($_POST['Name']); print(" loves using"); print(" "); print($_POST['Platform']); print("! "); print($_POST['Name']); print(" is feeling "); print($_POST['Mood']); print("<br><br>"); // 补充缺失的分号 print($_POST['Name']); print(" "); print($_POST['Lastname']); print(" is from the continent of "); print($_POST['Continentality']); } ?> </body>
额外帮你修正了HTML里Adult选项重复的年龄描述,还在PHP代码里加了一些空格提升可读性,现在应该可以正常运行啦。
内容的提问来源于stack exchange,提问作者Dev Tanna
相关产品推荐
相关产品推荐

