我有一个关于Javascript和PHP的奇怪问题。
这些是我的代码
<script>
<?php
$servername = "localhost";
$username = "root";
$password = "rootroot";
$dbname = "onlinerecruitment";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$s_id = NULL;
$pos_id = $_POST['position'];
$s_name = $_POST['skill_name'];
$s_wg = $_POST['skill_weight'];
$click = $_POST['clicks'];
$sum = array_sum($s_wg);
?>
var sum = '<?php array_sum($s_wg); ?>';
if( sum != 10){
alert("Weight-score is over or lower than 10.");
}else{
<?php
for($i=0; $i <= $click; $i++){
$sql = ("INSERT INTO required_skills VALUES ('".$s_id."' , '".$pos_id."' , '".$s_name[$i]."' ,'".$s_wg[$i]."')");
$resultt = "";
if ($conn->query($sql) == TRUE) {
$resultt = "FINISH";
} else {
$resultt = "ERROR";
}
}
$conn->close();
?>
var Message = ' <?php echo $resultt; ?>';
if((Message + "") == "ERROR"){
alert("Something wrong, please contract web admin.");
}else{
alert("Weight-score setup successful.");
location.href = "Weight_Score_Setup.php"
}
}
正如您所看到的那样,有If和Else条件,我测试此页面以获得“If”条件。结果变为“If”,但INSERT查询也工作,它不应该,因为它们都处于“Else”状态。我不知道如何解决这个问题。请帮忙。
答案 0 :(得分:1)
如果ELSE转移到PHP逻辑
<script>
<?php
$servername = "localhost";
$username = "root";
$password = "rootroot";
$dbname = "onlinerecruitment";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$s_id = NULL;
$pos_id = $_POST['position'];
$s_name = $_POST['skill_name'];
$s_wg = $_POST['skill_weight'];
$click = $_POST['clicks'];
$sum = array_sum($s_wg);
if( $sum != 10){
echo 'alert("Weight-score is over or lower than 10.");';
}else{
for($i=0; $i <= $click; $i++){
$sql = ("INSERT INTO required_skills VALUES ('".$s_id."' , '".$pos_id."' , '".$s_name[$i]."' ,'".$s_wg[$i]."')");
$resultt = "";
if ($conn->query($sql) == TRUE) {
$resultt = "FINISH";
} else {
$resultt = "ERROR";
}
}
$conn->close();
?>
var Message = ' <?php echo $resultt; ?>';
if((Message + "") == "ERROR"){
alert("Something wrong, please contract web admin.");
}else{
alert("Weight-score setup successful.");
location.href = "Weight_Score_Setup.php"
}
}