//这已经让我疯狂lol ..代码在下面执行。我试图退出脚本,如果一个if语句为真,并继续,如果它是假的
<?php
require('includes/config.php');
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$selectQuery = "SELECT username, email, tokens, tokenstatus, tokensinc, tokenstatus1, tokenswith, tokenstatus2 FROM members WHERE username = '".($_SESSION['username']) ."'";
$updateQuery = "UPDATE members SET tokens=tokens - 10, tokenstatus='(Pending Tokens)' ,tokenswith=tokenswith + 10, tokenstatus1='(Pending Tokens)' WHERE username = '".($_SESSION['username']) ."'";
// Create connection
$db = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$db) {
die("Connection failed: " . mysqli_connect_error());
}
//if not logged in redirect to login page
if(!$user->is_logged_in()) { header('Location: login.php'); exit(); }
//define page title
$title = 'Withdraw ~ Pixel Jag';
//include header template
require('layout/header.php');
?>
<div class="container">
<div class="panel panel-default">
<?php
$result = mysqli_query($db, $selectQuery);
if (mysqli_num_rows($result) > 0) {
// output data of each row
echo "<ul class='list-group'>";
while($row = mysqli_fetch_assoc($result)) {
//下面的if语句是要执行的代码,如果这返回true我想让它退出脚本,如果它是false我想让它继续更新//
if ($row['tokens'] < 10) {
echo "<li class='list-group-item list-group-item-danger'>You do not have enough tokens!</li>";
}
}
echo "</ul>";
}
//如果上面的内容返回false //
,请参阅下面我希望执行的代码if (mysqli_query($db, $updateQuery)) {
echo "<ul class='list-group'><li class='list-group-item list-group-item-success'><h4>Record updated successfully!</h4></li></ul>";
} else {
echo "Error updating record: " . mysqli_error($db);
}
mysqli_close($db);
?>
<div class="panel-footer">
<a href="index.php"><h4>Back To Dashboard..</h4></a>
</div>
</div>
</div>
<?php
//include header template
require('layout/footer.php');
?>
答案 0 :(得分:0)
请输入一个标志$ isValid,默认值为true
$isValid = true;
while(mysqli_num_rows($result) > 0 || $isValid) {
if ($row['tokens'] < 10) {
echo "<li class='list-group-item list-group-item-danger'>You do not have enough tokens!</li>";
$isValid = false;
}
}
如果标志为真,则执行更新
答案 1 :(得分:0)
在我看来,最好的方法是,如果你在一个函数或方法中,使用return;言。
function some(){
if(true){
return;
}
else{
//do other stuff
if(true){
return;
}
}
}
但是在php中还有很多方法可以中断执行。你确实在使用其中一些。
die;
exit;
throw new Exception('some error');//we need an exception handler in this case
然后:
if ($row['tokens'] < 10) {
echo "<li class='list-group-item list-group-item-danger'>You do not have enough tokens!</li>";
die;// or exit or return if you are within a function o method
}