CeHTUJI
21.10.2013 - 16:01
Делаю простенький класс для работы с бд. Поискал в гугле, нашел пару методов
1.Выборка
public function SelectArray($query) {
$result_set = $this->mysqli->query($query);
return $this->resultToArray($result_set);
}
2.Возвращает массив из запроса
public function resultToArray($result_set) {
$array = array();
while (($row = mysqli_fetch_assoc($result_set)) != false) {
$array[] = $row;
}
return $array;
}
К работать с массивом на выходе? Допустим
$var1 = $db->SelectArray('SELECT * FROM table');
echo $var1['rate'];
ничего не выводит.
И собственно еще, как обезопаситься от mysql инъекции? Как вариант пропустить все через mysqli_real_escape_string, но я же получаю уже готовый запрос, а не данные отдельно?
bestxp
21.10.2013 - 16:08
public function SelectArray($query) {
return $this->mysqli->query($query)->fetch_array(MYSQLI_ASSOC);
}
проверки сам добавишь?))
CeHTUJI
21.10.2013 - 16:29
Цитата (bestxp @ 21.10.2013 - 16:08) |
public function SelectArray($query) { return $this->mysqli->query($query)->fetch_array(MYSQLI_ASSOC);
}
проверки сам добавишь?)) |
даже так :)
Раньше просто только процедурка, mysqli тоже только начал юзать
CeHTUJI
21.10.2013 - 16:43
fetch_array разве не 1 строку возвращает?
С первым вопросом разобрался, почитал про ассоциативные массивы
Методы
public function SelectArray($query) {
return $this->resultToArray($this->mysqli->query($query));
}
public function resultToArray($result_set) {
$array = array();
while (($row = mysqli_fetch_assoc($result_set)) != false) {
$array[] = $row;
}
return $array;
}
Вывести весь массив оказалось очень легким делом
for($i = 0; $i < count($var1); $i++)
{
echo $var1[$i]['rate'];
}
Игорь_Vasinsky
21.10.2013 - 17:39
блин, а для чего разрабы mysqli наделили ООП синтаксисом????
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
batazor
22.10.2013 - 02:56