簡體   English   中英

PHP mysqli准備的語句刪除前導零

[英]PHP mysqli prepared statements removing leading zeros

我試圖在我的數據庫中輸入電話號碼,該列設置為varchar(15),在phpmyadmin內部它將接受前導0的電話號碼(例如,07712123123)。

在我的PHP腳本中,我有變量$ contactNo,它是一個包含07712123123的字符串

但是,當我使用准備好的語句將數據輸入數據庫時​​,前導零將被刪除。 我該如何阻止呢?

// Insert data into customer_accounts
if($stmt = $mysqli -> prepare("INSERT INTO customer_accounts (username, password, firstname, lastname, email, number) VALUES (?,?,?,?,?,?)")) {
    $stmt -> bind_param("ssssss", $username, $password, $firstname, $lastname, $emailAddress, $contactNo);
    $stmt -> execute();
    $stmt -> close();
}

我已經在語句之前和之后回顯了變量,並且0在那里,因此必須將其放入數據庫中時將其刪除。 我是剛准備好的語句的新手,我無法弄清楚該如何解決。

謝謝!

您在問題中提供的准備好的語句沒有任何流程,因此我猜想數據類型有一個靜默轉換。

仔細檢查列number的確是VARCHAR類型。 我很確定您那里有一個INT (或類似)類型。

暫無
暫無

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

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