所以我有一个表单,它在CSS和PHP中组合了一些自定义警报,现在我使用echo调用这些警报,最后使用die()来终止/结束PHP脚本。这是PHP代码:
if($pass1 != $pass2){
echo '<div class="alert">Passwords do not match!</div>';
die();
}
这是CSS:
.alert {
background: #fff6bf url(../images/exclamation.png) center no-repeat;
background-position: 15px 50%;
text-align: center;
padding: 5px 20px 5px 45px;
border-top: 2px solid #ffd324;
border-bottom: 2px solid #ffd324;
}
问题是当脚本执行时没有die()然后使用CSS正确显示错误。当实现die()时,代码会显示一个空白页面,上面写着“密码不匹配!”没有任何造型。
我可以做些什么来杀死PHP脚本但仍有样式?
解决方案:
因此,在看到答案并意识到骰子在那时杀死了整个网站。我在代码中添加了一个简单的行:
在:
if($pass1 != $pass2){
echo '<div class="alert">Passwords do not match!</div>';
die();
}
在:
if($pass1 != $pass2){
echo '<link rel="stylesheet" type="text/css" href="css/structure.css">';
echo '<div class="alert">Passwords do not match!</div>';
die();
}
所以基本上我只在警报之前添加了样式表,以使警报具有样式。
答案 0 :(得分:1)
最有可能的是,您的css文件稍后会在代码中添加。执行die()时;声明php将停止所有进一步处理。 Effektivly没有回应样式表。
如果您查看“空白页面”的来源,您会看到它包含:
'<div class="alert">Passwords do not match!</div>'
答案 1 :(得分:1)
为了使用您目前正在使用的方法,您需要在PHP之上使用HTML。
我使用exit('<div class="alert">Passwords do not match!</div>');
和die('<div class="alert">Passwords do not match!</div>');
<!DOCTYPE html>
<head>
<style>
.alert {
background: #fff6bf url(../images/exclamation.png) center no-repeat;
background-position: 15px 50%;
text-align: center;
padding: 5px 20px 5px 45px;
border-top: 2px solid #ffd324;
border-bottom: 2px solid #ffd324;
}
</style>
</head>
<?php
$pass1="2"; // my own test variable
$pass2="3"; // my own test variable
if($pass1 != $pass2){
exit('<div class="alert">Passwords do not match!</div>');
// die('<div class="alert">Passwords do not match!</div>');
echo "Hello there"; // Will not echo
}
?>
你可以这样做,使用额外的条件语句,而不是杀死脚本:
<?php
$pass1="2"; // my own test variable
$pass2="3"; // my own test variable
$var = "<div class=\"alert\">Passwords do not match!</div>";
if($pass1 != $pass2){
echo $var;
}
else{
echo "You have access.";
}
?>
<!DOCTYPE html>
<head>
<style>
.alert {
font-family:Georgia;
color:#ffff00;
background: #fff6bf url(../images/exclamation.png) center no-repeat;
background-position: 15px 50%;
text-align: center;
padding: 5px 20px 5px 45px;
border-top: 2px solid #ffd324;
border-bottom: 2px solid #ffd324;
}
</style>
</head>