2011-02-10 14 views
0

このフォームのアクションを変更するにはどうすればよいですか?それは、現在のindex.phpへの投稿は、次のように私はindex.phpの中でswitch文を使用してい (私はphp-form-builder-classを使用しています):?フォームのアクションの変更

switch ($_GET['action']) 
{ 
    case 'new': 
     require_once USER_ROOT . 'new_thread.php'; 
     echo "We are in user new"; 
    break; 

    default: 
    echo "Hello"; 
} 

のでSITE /ユーザーで/アクション=新しい(またはユーザー/ index.php?action = new)フォームが表示されます。私は、フォーム自体に提出し、index.phpのないようにする(つまり、アクション=「」)

(new_thread.php)は次のような形式は次のとおりです。

$form = new form("new_thread_form"); 

$form->setAttributes(array(
    "width" => 400, 
    "jsIncludesPath" => "/lib/php-form-builder-class/includes" 
)); 

if($form->validate()) { 
    echo "Your form has validated"; 
}  
else { 
    echo "It has not validated"; 
}  

$form->addHidden("cmd", "submit_0"); 
$form->addTextbox("Title:", "thread_title", "", array("required" => 1)); 

$form->addTextarea("Content:", "thread_content", "", array("required" => 1)); 
$form->addTextbox("Tags:", "thread_tags", "", array("required" => 1)); 


$form->addButton(); 
$form->render(); 
+0

そのクラスのドキュメントはむしろ吸います。おそらく、最初のsetAttributes()呼び出しに 'action'パラメータを追加することができます。 –

答えて

2

$の形で使用されるアクションAttributes配列に格納されるため、setAttributes配列に新しい値を渡すことでデフォルトをオーバーライドできます。

$form->setAttributes(array(
"width" => 400, 
"jsIncludesPath" => "/lib/php-form-builder-class/includes", 
"action" => "" 
)); 
関連する問題