- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
function createCategory(){
global $_POST,$_SESSION;
$result = mysql_query(sprintf("INSERT INTO `categories` (`id` ,`name` ,`description`)
VALUES (NULL , %s, %s);",
$this->prepare($_POST['name']), $this->prepare($_POST['description'])));
return $result?true:false;
}
function prepare($data,$type = 'other'){
if($type == 'other'){
if(is_numeric($data) or is_float($data)){
return "'".$data."'";
}else if(is_string($data)){
return "'".mysql_real_escape_string($data)."'";
}
}else if($type == 'pswd'){
return "'".sha1($data.SECRET_WORD)."'";
}
}
- Объявить переменные $_POST,$_SESSION глобальными.
Поэтому и писал, что не надо эти переменные объявлять как глобальные
Откройте для себя mysqli - http://php.net/manual/en/mysqli.prepare.php
sql_insert(array_tempaltes, array_values) и передавай два массива ей...
array('%s','%s') и array($_POST['name'],$_POST['description']);
а там уже препарируй параметры и вызывай sql->query...
и будет намного проще