0

レコードを追加する前の事前チェックで奇妙な動作が発生しています。

仕組み: ユーザーは MBI000000128 または MBI128 としてレコードを追加できます。これは、チェックを行っている同じレコードを参照しているためです。現在、MBI128 が既に存在し、ユーザーが MBI000000128 を追加しようとすると、「record already exists メッセージ」が返されます。

私の問題は次のとおりです。文字列内のすべてのゼロを MBI000000128 から MBI128 に削除しています。私はこれが正しいことを確認するために反響さえしました。前後にスペースはありません。再確認するために一重引用符を付けます。

変数を印刷すると:'MBI28'

テーブル内のレコードは次のように存在します'MBI128'

これが私のSQLクエリです:

$query = "SELECT * FROM tickets WHERE pbi='$mbi_no_zeroes' ";

テーブルにチケットを追加し続けますが、理由がわかりません:/

誰かが私ができること、または私が間違っている可能性があることについて、さらにいくつかのチェックについてアドバイスしてもらえますか?

ありがとうございました。

4

1 に答える 1

0

試す:

$mbi_no_zeroes = str_replace("0", "", $mbi_no_zeroes);
$query = "SELECT * FROM tickets WHERE pbi='$mbi_no_zeroes' "; 

str-replace の詳細を見る

于 2012-05-27T04:20:34.213 に答える