簡體   English   中英

如果與會話匹配,PHP 保存數組值

[英]PHP save array value if match to Session

我有一個輸入提交表單,我希望如果用戶輸入一個與我的array value匹配的數字,卡片品牌將保存到下一個站點的 PHP 會話中。

<?php    
    $submitbutton= $_POST['btnLogin'];    
    $number= $_POST['Kreditkartennummer'];

    function validatecard($number)
    {
        global $type;

        $cardtype = array(
            "visa"       => "/^4[0-9]{12}(?:[0-9]{3})?$/",
            "mastercard" => "/^5[1-5][0-9]{14}$/",
            "amex"       => "/^3[47][0-9]{13}$/",
            "discover"   => "/^6(?:011|5[0-9]{2})[0-9]{12}$/",
        );

        if (preg_match($cardtype['visa'],$number))
        {
            $type= "visa";
            return 'visa';          
        }
        else if (preg_match($cardtype['mastercard'],$number))
        {
            $type= "mastercard";
            return 'mastercard';
        }
        else if (preg_match($cardtype['amex'],$number))
        {
            $type= "amex";
            return 'amex';          
        }
        else if (preg_match($cardtype['discover'],$number))
        {
            $type= "discover";
            return 'discover';
        }
        else
        {
            return false;
        } 
    }    
    validatecard($number);    
?>

現在的問題,是否適用於我的代碼? 還是需要"If Submit" 另一個問題我如何回顯return並將其保存到我的 php Session

要將某些內容保存到您的會話變量中,您所要做的就是聲明它。

$_SESSION['card_type'] = $_POST['card_type'];

例如,假設這是您的表格。 這只是一個例子。

<form type="POST">
<input type="text" name="card_type">
<input type="submit" value="submit my form">
</form>

在此表單中,您有一個名為 card_type 的輸入,當提交時,您可以像這樣從該輸入中獲取值。

    if(isset($_POST['card_type'])) {
    $_SESSION['card_type'] = $_POST['card_type']; //you are taking the post and making a session variable.
}

我知道這只能解釋你問題的最后一部分,我只是沒有理解第一部分。

編輯..我還想指出,您不只是想在沒有某種類型驗證的情況下接受用戶輸入。 在您檢查是否有帖子后放置驗證碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM