Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Cannot display custom form




Community Member, 2 Posts

26 July 2010 at 4:16am

Edited: 26/07/2010 4:18am


i'm trying to create a simple custom login form however the form is not loading, all i get is a blank page. My code is listed below, can someone tell me what i'm doing wrong.

Many thanks in advance

ps: the form for now excepts FirstName and LastName

class LoginPage extends Page {
static $db = array(
static $has_one = array(

class LoginPage_Controller extends Page_Controller {
static $allowed_actions = array(

public function init() {

public function FormBox() {
return new LoginForm($this, 'LoginForm');


class LoginForm extends Form {
function __construct($controller, $name) {
$fields = new FieldSet(
new TextField('FirstName', 'FirstName'),
new TextField('LastName', 'LastName')

$actions = new FieldSet(
new FormAction('submit', 'Submit')

parent::__construct($controller, $name, $fields, $actions);

function forTemplate() {
return $this->renderWith(array(
$this->class, 'LoginForm'

function submit($data, $form) {



<form $FormAttributes>
<% if Message %>
<p id="{$FormName}_error" class="message $MessageType">$Message</p>
<% else %>
<p id="{$FormName}_error" class="message $MessageType" style="display: none"></p>
<% end_if %>

<div id="FirstName" class="field text">
<label class="left" for="$FormName_FirstName">First Name</label>

<div id="Email" class="field email">
<label class="left" for="$FormName_LastName">Last Name</label>


<% if Actions %>
<div class="Actions">
<% control Actions %>$Field<% end_control %>
<% end_if %>