2014-12-03 55 views
0

我通過這段代碼得到一個POST數據。如何找到一個孩子被定義或不在php類

$form->handleRequest($request); 

if ($form->isValid()) { 

然後我想要一個數據。

$form->get('send')->isChecked(); 

如果有'發送'提交按鈕,它運作良好,但是沒有顯示此錯誤。

Child "send" does not exist. 

然後我一直在努力去查看'發送'數據是否包含$ form。

這樣

if ($form->get('send') !== null){ 

但是它顯示了同樣的錯誤。

如何判斷$ form中有'發送'提交按鈕?


根據具體情況有「發送」按鈕或「草稿」按鈕。

我想告訴哪個按鈕是存在的。

if ($form->get('send')->isChecked()){ 
} 
else if($form->get('draft')->isChecked()){ 
} 

但是,此代碼顯示訪問不存在的按鈕時的錯誤。

回答

1

我從來沒有用過Symphony,在看過他們可怕的文檔後,我可能永遠不會。根據查看source code$form對象應具有has($name)方法。因此,嘗試

if ($form->has('send')){ 
+0

它遇到了問題!我應該檢查源代碼....謝謝 – whitebear 2014-12-03 08:55:06

0

您可以在表單中添加

<input type='submit' name='send' value='go' /> 

。它會解決這個問題。

+0

我知道它可以解決售後服務問題,但在我的節目,有時會有什麼「送」的形式,有時沒有(有代替按鈕草案)。這取決於實際情況。我不想顯示錯誤訊息 – whitebear 2014-12-03 07:14:34

+0

看到編輯答案 – 2014-12-03 07:23:00

+0

回答編輯? – whitebear 2014-12-03 07:29:30

相關問題