我有一個表格頁面,然後在窗體中有電話號碼,年齡,郵政編碼字段,我有一個生成按鈕。當用戶生成按鈕時,我將自動填充表單中的問題。這些問題是調查問題,需要一些條件,無論我是否會在表格中顯示。最有效的方式在數據庫中搜索
我可以做所有的邏輯。我的問題是解決這個驗證的最好方法,我會解釋一下。我有Questions
表id, question, column_header
。我有Suppressions
表id, phone, column_header
。
如果表單中的電話號碼已經在抑制表中,並且列標題名稱不存在,那麼當您單擊生成按鈕時不應顯示問題。
Ex。
Questions
id | question | column_header|
___|__________|______________|
1 | test1 | ques1
Suppression
id | phone | column_header |
___|_______|_______________|
1 | 1234 | ques1
這樣的例子,在形式的電話號碼是1234
然後我點擊生成按鈕,我的jQuery和Ajax會處理這個問題。我將在每個問題和每個問題中循環,如果當前問題列標題已連同電話號碼一起在該表中,並且如果確實存在,那麼我將在Suppression
表中查詢每個問題,然後我將不會啓用或顯示問題。
這將完成這項工作,我擔心如果抑制表增長如數百萬記錄,我有30個問題。因此,對於每個問題,我現在需要搜索suppresion表中的百萬條記錄,以查找匹配項,如果我需要禁用或啓用問題並且每個ajax調用的流程將會很慢。
有沒有更好的方法來做到這一點?我使用PHP Laravel和Postgre作爲我的數據庫。
嗨,感謝您的幫助抱歉,我沒有說清楚。該電話號碼不會出現在頁面加載。電話號碼是用戶在單擊生成問題按鈕之前的用戶輸入。有其他選擇嗎?謝謝! – jackhammer013
答案與您輸入的電話號碼相同。 –
嗯我有點困惑,你說加載頁面加載時的所有問題?但是,在頁面加載問題上加載問題並不容易,因爲我需要輸入電話號碼的權利嗎?那麼會發生什麼是我在我的問題中陳述的相同邏輯? – jackhammer013