WEB開發中的頁面跳轉方法總結

2022-06-18 16:54:16 字數 1596 閱讀 3726

頁面跳轉可能是由於使用者單擊鏈結、按鈕等觸發的,也可能是系統自動產生的。頁面自動跳轉在web開發中經常用到,而且根據需求可以採用不同的跳轉方式,比如提示操作資訊後延時跳轉等, 本文總結了web開發中常見的幾種頁面跳轉方法。

當然,實際開發中我們可以把後面兩種方式整合到php中去,便於適用各種跳轉需求。

當我們要將乙個龐大的資料進行編號時,而編號有位數限制,比如5位的車牌號、10位的某證件號碼、訂單流水號、短**等等,我們可以使用36進製計算出符合位數的不重複的編號。

我們將0-z(0123456789abcdefghijklmnopqrstuvwxyz)分別代表數值0-35,如字母z代表35。這樣的話我要得到乙個5位的編號,最大資訊量就是36的5次方了,36^5 = 60466176,即最大的5位編號相當於10進製的數字:60466176。

本文中為了做演示,我們假定某俱樂部發放一批10位的會員卡號,會員卡號由3位城市編號+5位卡號編碼+2位校驗碼組成。城市編號用區號表示,如755代表深圳,5位卡編號則由36進製的卡編號組成,後面兩位校驗碼則是通過一定的演算法生成的,校驗碼的用處是可以驗證卡號的合法性。這樣的話,我們生成的10位卡號相當於最大能滿足6000多萬會員卡號,並且是不重複唯一的卡號。

php我們使用php進行進製轉換,10進製轉36進製。

class code

} if (count($arr) < $format)

$arr = array_pad($arr, $format, $dics[0]);

return implode('', array_reverse($arr));

} public function decodeid($ids)

], bcpow($dnum, $i, 0), 0), $v, 0);

} return $v;

} }

我們定義code類,先定義密碼字典,即0-z分別對應的數值,方法encodeid($int, $format)中引數$int表示數字,$format表示位數長度,比方encodeid(123456789,5)表示將數字123456789轉換成5位的36進製編號,而方法decodeid($ids)用於將36進製的編號轉換成10進製的編號。

我們可以這樣來生成卡號:

$code = new code();

$card_no = $code->encodeid(888888,5);

如上,我們就可以得到乙個5位的卡編號,它實際代表著卡號是888888(6個8)的會員編號,而實際進行轉換後是5位編號:0j1vc。

接著,我們將城市編號和校驗碼加上,城市編號是已經定義好的,校驗碼則通過一定的演算法取得,本例中,我們使用簡單的演算法:將前三位城市編號和五位卡編號進行md5加密,然後取md5值的前2位作為校驗碼,這樣就得到了編號後面的兩位校驗碼。

$card_pre = '755';

$card_vc = substr(md5($card_pre.$card_no),0,2);

$card_vc = strtoupper($card_vc);

echo $card_pre.$card_no.$card_vc;

實際應用中,可以通過資料庫得到10進製的編號,保證編號唯一,再將上述**組合,最終生成乙個10位的不重複的會員卡號。

web開發(三)之頁面跳轉的問題

jsp 跳轉方式大約有三種 1.response.sendredirect newurl 此語句前不允許有out.flush 如果有,會有異常 跳轉後瀏覽器位址列變化 如果要跳到不同主機下,跳轉後,此語句後面的語句會繼續執行,如同新開了執行緒,但是對response的操作已經無意義了 如果要跳到相同...

js中實現頁面跳轉的方法

window.location和window.open的區別 window.location 跳轉後有後退功能 window.location.replace 跳轉後沒有後退功能 window.open 要新的視窗開啟鏈結 本人親自測試 window.location.replace 例如index...

js中跳轉頁面的方法

location.href的基本用法js中的location.href的作用是什麼?有幾種用法?區別是什麼?主要用於跳轉頁面 1.self.location.href url 1.僅在本頁面開啟url 2.window.location.href url 2.當前頁面開啟url頁面 3.this.l...