2016-09-20 18 views
0

私は請求書を作成しています。私の見解では、receipt.phpに請求書番号があります。 0001これは主キーとしてtbl_paymentに入れられるものですが、テーブルがまだ空の場合、ビューで自動インクリメントされたIDを持つことはできますか?私はそれを印刷したいと思いますが、私のWindow.Print()関数で何か間違っています。CSSとeventhoughを使用してレシートをスタイリングしています。 、私はあなたのポイントを得たThis is the one that you can see in the receiptcodeigniter autoのIDを増やし、ビューやJavaScriptのWindow.Print()関数に表示されます。

and this is what you can see when I print, how does this happen?

+0

テーブルに挿入しない限り、自動インクリメントIDはありません。まだ永続ストレージに入れられていない請求書の印刷を許可するのはなぜですか?いい考えではない。 – DFriend

答えて

0

、ここInvoice No.はより良いアプローチがあるかもしれません表示する方法の一つであるが、これは何かが最初のインスタンスで私の心に入って来ています。

  1. データベースから最後の請求書番号を取得します。(あなたが列からMAXを取得することができます)
  2. あなたのビューでは1(ワン)でIDをインクリメント。
  3. 必要に応じて増分IDを表示します。

これ以上の質問を教えてください。

---- UPDATE ----

最良の方法または適切な方法は、請求書を作成した後invoice idを取得することです。

上記の方法を使用する場合は、データの重複を避けるためにデータベースを適切にロックする必要があります。

したがって、単純なままにするには、挿入後にinvoice_idを使用する必要があります。別の方法では、自動インクリメントIDに関係なく請求書フィールドの一意のIDを生成することです。

+0

user1がメソッド経由でIDを取得した後で、その請求書が実際にdbに保存される前に、何がIDを取得するのですか?両方のユーザーが同じ請求書IDを使用しています。 – DFriend

+0

うん、私は同意し、私は完全にこのシナリオを認識している、上記の方法を通過する場合、データベースのロックに注意を払う必要があります、私はまた、今適切な方法ではなく、 – Zeeshan

関連する問題