2017-02-15 83 views
0

所以我遇到了一個小問題,我有一個腳本,它應該返回一個真正的BOOL時返回一個錯誤的BOOL。誰能告訴我錯誤在哪裏?如果,Elseif,否則與多個查詢返回零值

Elseif(isset($_POST['Submit_VO']) && '$_GET[Aflever]' == 1);{ 
    $MAdelete = $_SESSION['MA_NR']; 
    $Bunni = "SELECT Bunny_No FROM Bunnies_final"; 
    $QueryingBunni= Mysqli_query($conn,$Bunni); 
    $Take = "SELECT Bunny_No, Laaner, Ordre_No FROM Udlaan WHERE Bunny_No = '$Bunni' AND Laaner = $MAdelete"; 
    $Querying = Mysqli_query($conn,$Take); 
    var_dump($Take); 
    print_r($Take); 
    If(!$Querying == 1){ 
     Echo "Du har ingen lånte instrumenter"; 
    } 
    Else{ 
     $Delete ="UPDATE Bunnies_final Laaner = NULL, Ordre_No = NULL WHERE Bunny_No = $Take[Bunny_No] AND" ; 
    } 
    exit(); 
} 

什麼是腳本正在做的是返回過程的借用/返回腳本(我認爲其餘的代碼工作正常)。

應該發生什麼的快速簡介:$_POST['Submit_VO']是一個無法填寫2個輸入字段的按鈕。這個過程需要勾選一個複選框($_GET[Aflever]) 那麼這就是你需要從我那裏知道的,其餘的在腳本中。

現在我從

If(!$Querying == 1){ 
    Echo "Du har ingen lånte instrumenter"; 
}Else{ 
    $Delete ="UPDATE Bunnies_final Laaner = NULL, Ordre_No = NULL WHERE Bunny_No = $Take[Bunny_No] AND" ; 
} 
exit(); 
} 

得到一個零值,我知道這一點,因爲我看到的回聲,這意味着$Querying原因造成的問題,但我不能看到它。

僅供參考我知道代碼對SQL注入存在缺陷。但它並不重要,因爲它是一個具有最少用戶輸入的獨立系統。

+1

爲什麼不'$查詢= 1',而不是'$查詢== 1'? –

+0

我點擊'發佈'後想到的第一件事是,我可能需要將第一個查詢存儲在變量中,並在'$ Take'中使用該變量,其中'$ Bunni'在哪裏。 – D3nj1

+0

@SougataBose在我眼裏基本上是一樣的數學 – D3nj1

回答

1

首先,它是清潔的說$查詢= 1

隨後,查詢是錯誤的:

$Take = "SELECT Bunny_No, Laaner, Ordre_No FROM Udlaan WHERE Bunny_No = '$Bunni' AND Laaner = $MAdelete"; 

$布尼基本上是 「選擇Bunny_No FROM Bunnies_final」,而不是結果查詢。

您可以將其更改爲:!

$Take = "SELECT Bunny_No, Laaner, Ordre_No FROM Udlaan WHERE Bunny_No = '".$QueryingBunni['Bunny_No']."' AND Laaner = $MAdelete";