J2.5

Difference between revisions of "How do I store empty values as NULL in the database?"

From Joomla! Documentation

m (Hutchy68 moved page J2.5:Store empty values a NULL in database to J2.5:How do I store empty values as NULL in the database? without leaving a redirect: correcting title to make it a question)
m (added Category:Database using HotCat)
Line 19: Line 19:
 
</source>
 
</source>
 
[[Category:Tips and tricks]]
 
[[Category:Tips and tricks]]
 +
[[Category:Database]]

Revision as of 06:43, 16 May 2013

The "J2.5" namespace is a namespace scheduled to be archived. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

If you want to store empty values as NULLs into the database, you need to override JTable::store() and JModelAdmin::prepareTable(). Add following snippets of code into your component's admin/tables/nameoftable.php and admin/models/nameofeditview.php

admin/tables/nameoftable.php

public function store($updateNulls = true) {
	return parent::store(true);
}

admin/models/nameofeditview.php

protected function prepareTable($table)
{
	$defnull = array('array','of','columns','that','can','have','null','value');
	foreach ($defnull as $val)
		if (!strlen($table->$val))
			$table->$val = NULL;
}