2017-09-18 127 views
0

我想要使用鏈接到兩個不同頁面的一個頁面。下面是我的場景:PHP檢查變量是否設置

1)用戶點擊超鏈接將指向頁面的URL
2)用戶直接導航到該頁面,並沒有salesID在URL
通過了salesID

我們瞭解每個以上情況 - >

1)如果salesID IS NULL然後從頁面
2)獲得參數如果salesID IS NOT NU LL然後的onload()顯示爲salesID所有相關數據通過

我知道如何編寫查詢默認用參數加載網頁,我知道如何在頁面上捕獲的參數加載頁面從按鈕按下事件。我不知道該怎麼做是將兩者結合起來並檢查多個標準。我想要做的是在pageload()評估標準1 - 如果salesID傳遞給頁面,然後繼續並使用該salesID的所有數據填充頁面。如果條件2爲真,則不要填充頁面,等待用戶輸入從選擇框中選擇並按下按鈕。

這是我怎麼也該頁面的基本語法:

<?php 
    //Capture variable from URL 
    $salesID = urldecode($_GET['salesID']); 

    //Check if variable is set 
    if (isset($_GET['salesID'])) { 
     //A salesID was passed to the page so load that data by default 
     //ignoring any variables set on the page 
    } 
    else { 
     if (isset($_POST['btnpressevent'])) { 
      //button has been pressed capture variables from page and run query 
     } 
    } 
?> 
+0

出於好奇,你爲什麼不只是填充用PHP的形式呢? – entiendoNull

回答

1

你可以試試這個: -

// if salesId is not set or is null then show form with select and button 

if (!isset($_GET['salesId']) || is_null($_GET['salesId'])) { 
     $html = "<form action='samepage.php'><select><option>Select one</option><option>Item 1</option></select><button name='btnpressevent'>Press button</button></form>"; 
     echo $html; 
     return; // or die(); 
    } 

    // do stuff with salesId 
    echo "${$_GET['salesId']} helllo w"; 
0

你應該改變$salesID = urldecode($_GET['salesID']);$salesID = to_utf8($_GET['salesID']);

,然後簡單地if(isset($salesID) {}

GET已經被解碼,並且您已經已經將其聲明爲一個變量。

我不確定你在問什麼,但一般情況下不工作,但這兩個改變應該可以幫助它按預期工作。