我有一个包含此表单的html文件,上面有两个隐藏的对话框:
<div class="alert alert-success alert-dismissable" style="display:none;" id="success">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<strong>Success!</strong> Your asset has been added! </div>
<div class="alert alert-warning alert-dismissable" style="display:none;" id="fail">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<strong>Oops!</strong> Something went wrong! </div>
<form class="form-horizontal" action="http://localhost/php/insert.php" method="post">
<fieldset>
<!-- Form Name -->
<legend>Add An Asset</legend>
<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="name">Name</label>
<div class="col-md-5">
<input id="name" name="name" type="text" placeholder="" class="form-control input-md">
</div>
</div>
<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="serial">Serial Number</label>
<div class="col-md-5">
<input id="serial" name="serial" type="text" placeholder="" class="form-control input-md">
</div>
</div>
<!-- Select Basic -->
<div class="form-group">
<label class="col-md-4 control-label" for="location">Location</label>
<div class="col-md-5">
<select id="location" name="location" class="form-control">
<option value="1">Option one</option>
<option value="2">Option two</option>
</select>
</div>
</div>
<!-- Button -->
<div class="form-group">
<label class="col-md-4 control-label" for="singlebutton"></label>
<div class="col-md-4">
<button id="singlebutton" name="singlebutton" class="btn btn-primary" type="submit">Submit</button>
</div>
</div>
</fieldset>
</form>
并且表单的php在这里,它存储在一个单独的服务器上并引用:
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("dissertation", $con);
$sql="INSERT INTO asset (name, serial)
VALUES
('$_POST[name]','$_POST[serial]')";
if (!mysql_query($sql,$con)) {
$errcode = "error_code=003";
}
$referer = $_SERVER['HTTP_REFERER'];
if ($errcode) {
if (strpos($referer, '?') === false) {
$referer .= "?";
}
header("Location: $referer&$errcode");
} else {
header("Location: $referer");
}
exit;
mysql_close($con)
?>
我需要一些如何更改php中的if语句,以便在出现错误代码时显示警告对话框,如果没有则成功对话框。我意识到我需要使用javascript .show()和.hide(),但我不知道如何将php响应发送到javascript / html文件。我不能把php放在html / javascript文件中,他们需要保持独立。
答案 0 :(得分:2)
)在您的html文件中,执行以下操作:
<div class="alert alert-success alert-dismissable" style="<?php echo (!isset($_GET['error_code'])||empty($_GET['error_code']))?"display:none;":"";?>" id="success">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<strong>Success!</strong> Your asset has been added! </div>
<div class="alert alert-warning alert-dismissable" style="<?php echo (isset($_GET['error_code'])&&!empty($_GET['error_code']))?"display:none;":"";?>" id="fail">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<strong>Oops!</strong> Something went wrong! </div>
...
...
: - )
答案 1 :(得分:0)
Echo内联JavaScript:
<?php
if (error) {
echo "<script>$('selector').show()</script>";
} else {
echo "<script>$('selector').hide()</script>";
}