Merging fixes and enhancements into trunk.

Revision: [2175]
Merging changes made to model_php5.php

Revision: [2174]
Adding fix for empty values being set for an update.
Fixed problem with view paths being set wrong on Windows.

Revision: [2173]
Adding additional condition operators

Revision: [2172]
Adding fix for Ticket #455

git-svn-id: https://svn.cakephp.org/repo/trunk/cake@2176 3807eeeb-6ff5-0310-8944-8be069107fe0
This commit is contained in:
phpnut 2006-03-02 06:23:16 +00:00
parent 26fbf4a287
commit f6cf220c40
6 changed files with 39 additions and 19 deletions

View file

@ -6,4 +6,4 @@
// +---------------------------------------------------------------------------------------------------+ // // +---------------------------------------------------------------------------------------------------+ //
/////////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////
0.10.8.2171 0.10.8.2176

View file

@ -1076,7 +1076,7 @@ class DboSource extends DataSource
{ {
$out = array(); $out = array();
$operator = null; $operator = null;
$bool = array('and', 'or', 'and not', 'or not'); $bool = array('and', 'or', 'and not', 'or not', 'xor', '||', '&&');
foreach ($conditions as $key => $value) foreach ($conditions as $key => $value)
{ {

View file

@ -283,6 +283,7 @@ class DboMysql extends DboSource
function value ($data, $column = null, $safe = false) function value ($data, $column = null, $safe = false)
{ {
$parent = parent::value($data, $column); $parent = parent::value($data, $column);
if ($parent != null) if ($parent != null)
{ {
return $parent; return $parent;
@ -292,15 +293,21 @@ class DboMysql extends DboSource
{ {
return 'NULL'; return 'NULL';
} }
if($data == '')
{
return "''";
}
if (ini_get('magic_quotes_gpc') == 1) if (ini_get('magic_quotes_gpc') == 1)
{ {
$data = stripslashes($data); $data = stripslashes($data);
} }
$data = mysql_real_escape_string($data, $this->connection);
if ($column == null) if ($column == null)
{ {
$data = mysql_real_escape_string($data, $this->connection);
if(!is_numeric($data) || $safe == true) if(!is_numeric($data) || $safe == true)
{ {
$return = "'" . $data . "'"; $return = "'" . $data . "'";
@ -311,9 +318,10 @@ class DboMysql extends DboSource
} }
return $return; return $return;
} else { }
else
$colData = $this->columns[$column]; {
$colData = $this->columns[$column];
if (isset($colData['limit']) && strlen(strval($data)) > $colData['limit']) if (isset($colData['limit']) && strlen(strval($data)) > $colData['limit'])
{ {
$data = substr(strval($data), 0, $colData['limit']); $data = substr(strval($data), 0, $colData['limit']);
@ -324,11 +332,15 @@ class DboMysql extends DboSource
$data = $this->__formatColumnData($data, $colData); $data = $this->__formatColumnData($data, $colData);
} }
switch($column) { switch($column)
{
case 'integer':
case 'int':
return $data;
break;
case 'string': case 'string':
case 'text': case 'text':
case 'binary': case 'binary':
return "'" . mysql_real_escape_string($data, $this->connection) . "'";
case 'date': case 'date':
case 'time': case 'time':
case 'datetime': case 'datetime':

View file

@ -769,7 +769,7 @@ class Model extends Object
$conditions = $this->db->conditions($conditions); $conditions = $this->db->conditions($conditions);
} }
if ($data = $this->find($conditions, $name, $order)) if ($data = $this->find($conditions, $name, $order, 0))
{ {
if (isset($data[$this->name][$name])) if (isset($data[$this->name][$name]))
{ {

View file

@ -765,7 +765,7 @@ class Model extends Object
$conditions = $this->db->conditions($conditions); $conditions = $this->db->conditions($conditions);
} }
if ($data = $this->find($conditions, $name, $order)) if ($data = $this->find($conditions, $name, $order, 0))
{ {
if (isset($data[$this->name][$name])) if (isset($data[$this->name][$name]))
{ {

View file

@ -532,6 +532,20 @@ class View extends Object
{ {
$type = null; $type = null;
} }
$position = strpos($action, '..');
if ($position === false)
{
}
else
{
$action = explode('/', $action);
$i = array_search('..', $action);
unset($action[$i-1]);
unset($action[$i]);
$action = '..'.DS.implode(DS, $action);
}
$viewFileName = VIEWS.$this->viewPath.DS.$this->subDir.$type.$action.$this->ext; $viewFileName = VIEWS.$this->viewPath.DS.$this->subDir.$type.$action.$this->ext;
if(file_exists(VIEWS.$this->viewPath.DS.$this->subDir.$type.$action.$this->ext)) if(file_exists(VIEWS.$this->viewPath.DS.$this->subDir.$type.$action.$this->ext))
@ -550,13 +564,7 @@ class View extends Object
{ {
} }
return $viewFileName;
$viewPath = explode(DS, $viewFileName);
$i = array_search('..', $viewPath);
unset($viewPath[$i-1]);
unset($viewPath[$i]);
$return = '/'.implode('/', $viewPath);
return $return;
} }
/** /**