当我尝试加载页面时,如何更正此错误
Parse error: syntax error, unexpected $end in C:\xampp\htdocs\mysite\index.php on line 46
第46行的代码是
下面的代码?>
我的代码就是这个
<?php session_start();?>
<!DOCTYPE html>
<html lang="en">
<?php
if (isset ($_post['submit'])){
$error_count = 0;
$error_message = array();
//trim removes the spaces
$validate = trim(strtolower($_post['validate']));
if($validate != get_answer() ){
$error_count++;
$error_message['validate'] = "validation error";
}
echo $error_count;
if( $error_count > 0){
?>
<form method="post">
<h1> <?php create_function()?></h1>
<label for="validation">Validate:</label>
<input type="text" name="validate" id="validate" />
<?php if(isset($error_message['validate'])):?>
<span style="color: red"><?php echo $error_message['validate']?></span>
<?php endif;?>
<span style="color: green">Reenter Answer to Question</span>
<br/>
<input type="submit" name="submit" value="email">
</form>
<?php
}
else{
?>
<form method="post">
<h1> <?php create_function()?></h1>
<label for="validation">Validate:</label>
<input type="text" name="validate" id="validate" />
<br/>
<input type="submit" name="submit" value="email">
</form>
<?php
}
?>
我究竟做错了什么?我该如何解决?
答案 0 :(得分:3)
你错过了一个右括号}
我猜它应该在最后一个php结束标记?>
<!DOCTYPE html > <html lang = "en" >
<? php if (isset($_post['submit'])) {
$error_count = 0;
$error_message = a rray(); //trim removes the spaces $validate=t rim(strtolower($_post[
'validate']));
if ($validate != g et_answer()) {
$error_count++;
$error_message['validate'] = "validation error";
}
echo $error_count;
if ($error_count > 0) { ?>
<form method="post">
<h1> <?php create_function() ?></h1>
<label for="validation">Validate:</label>
<input type="text" name="validate" id="validate" />
<?php if (isset($error_message['validate'])) : ?>
<span style="color: red"><?php echo $error_message['validate'] ?></span>
<?php
endif; ?>
<span style="color: green">Reenter Answer to Question</span>
<br/>
<input type="submit" name="submit" value="email">
</form>
<?php } else { ?>
<form method="post">
<h1> <?php create_function() ?></h1>
<label for="validation">Validate:</label>
<input type="text" name="validate" id="validate" />
<br/>
<input type="submit" name="submit" value="email">
</form>
<?php }
} //guess you are missing this
?>
答案 1 :(得分:1)
如Dan所述,文件末尾的错误很可能缺少右括号}
。
您可以使用IDE中的工具对其进行调试。至于我,我正在使用Adobe Dreamweaver并使用其 Balance Braces 工具。
如果您有正确的开括号和右括号,它会突出显示整个块。
我希望你的IDE中有这个工具,你可以调试它。