[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Класс работы с БД
CeHTUJI
Делаю простенький класс для работы с бд. Поискал в гугле, нашел пару методов
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
public function SelectArray($query) {
return $this->mysqli->query($query)->fetch_array(MYSQLI_ASSOC);

}


проверки сам добавишь?))
CeHTUJI
Цитата (bestxp @ 21.10.2013 - 16:08)
public function SelectArray($query) {
      return $this->mysqli->query($query)->fetch_array(MYSQLI_ASSOC);

  } 


проверки сам добавишь?))

даже так :)
Раньше просто только процедурка, mysqli тоже только начал юзать
CeHTUJI
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'];
}
twin
foreach()!!!



_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Игорь_Vasinsky
блин, а для чего разрабы 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
Есть вот такой готовый класс https://github.com/ajillion/PHP-MySQLi-Database-Class
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.