Ищу информацию по Mysqli

Armageddance

Новичок
Начал разрабатывать веб-приложение с большим и частым количеством запросов к Mysql.
Выбор остановился на mysqli, но вот беда, в русскоязычном инете на эту тему информации практически нет, а функций в mysqli немало и работа с ними менее тривиальна, чем в случае с обычным mysql.
Буду благодарен ссылкам на материалы по mysqli с описанием функций и/или на рабочий код с комментариями с использованием mysqli.
http://phpclub.ru/detail/article/mysqli уже читал... маловато будет....
 
3ья ссылка в яндексе по слову mysqli. Как это нет? полно информации и на русском в том числе

а вообще я за PDO
 
PDO поддерживает множественные запросы к базе?

Как мне проверить значение второго запроса (select session_result)?

PHP:
$check_session_query="SELECT @date:= CAST(CONCAT(CAST(YEAR(DATE_ADD(NOW(), INTERVAL '$session_day' DAY)) AS CHAR), '-', 
                                CAST(MONTH(DATE_ADD(NOW(), INTERVAL '$session_day' DAY)) AS CHAR), '-', 
                                CAST(DAYOFMONTH(DATE_ADD(NOW(), INTERVAL '$session_day' DAY)) AS CHAR), ' ', '09:00:00') AS DATETIME);
                                SELECT FROM sessions * WHERE DATE(timer)=DATE(@date);";
                                $check_session_result = mysqli_multi_query($connector, $check_session_query);
 
"хз, что тебе мешает выполнить 2 запроса по отдельности?"
В данном конкретном случае ничего, но в целом в приложении мне потребуется иногда делать вот такие запросы, а их делать все раздельно и потом проверять - весьма муторно:
PHP:
$set_session_query = "SELECT @date:= CAST(CONCAT(CAST(YEAR(DATE_ADD(NOW(), INTERVAL '$session_day' DAY)) AS CHAR), '-', 
                                            CAST(MONTH(DATE_ADD(NOW(), INTERVAL '$session_day' DAY)) AS CHAR), '-', 
                                            CAST(DAYOFMONTH(DATE_ADD(NOW(), INTERVAL '$session_day' DAY)) AS CHAR), ' ', '09:00:00') AS DATETIME);
                                            SELECT @session1:= DATE_ADD(@date, INTERVAL '00:0' MINUTE_SECOND);
                                            SELECT @session2:= DATE_ADD(@date, INTERVAL '45:0' MINUTE_SECOND);
                                            SELECT @session3:= DATE_ADD(@date, INTERVAL '90:0' MINUTE_SECOND);
                                            SELECT @session4:= DATE_ADD(@date, INTERVAL '135:0' MINUTE_SECOND);
                                            SELECT @session5:= DATE_ADD(@date, INTERVAL '180:0' MINUTE_SECOND);
                                            SELECT @session6:= DATE_ADD(@date, INTERVAL '225:0' MINUTE_SECOND);
                                            SELECT @session7:= DATE_ADD(@date, INTERVAL '270:0' MINUTE_SECOND);
                                            SELECT @session8:= DATE_ADD(@date, INTERVAL '315:0' MINUTE_SECOND);
                                            SELECT @session9:= DATE_ADD(@date, INTERVAL '360:0' MINUTE_SECOND);
                                            SELECT @session10:= DATE_ADD(@date, INTERVAL '415:0' MINUTE_SECOND);
                                            SELECT @session11:= DATE_ADD(@date, INTERVAL '450:0' MINUTE_SECOND);
                                            SELECT @session12:= DATE_ADD(@date, INTERVAL '495:0' MINUTE_SECOND);
                                            INSERT INTO sessions (timer, admin_id, master_id, session_type) VALUES (@session1, 1, 1, 1),
                                                                                                (@session2, 1, 1, 1),
                                                                                                (@session3, 1, 1, 1),
                                                                                                (@session4, 1, 1, 1),
                                                                                                (@session5, 1, 1, 1),
                                                                                                (@session6, 1, 1, 1),
                                                                                                (@session7, 1, 1, 1),
                                                                                                (@session8, 1, 1, 1),
                                                                                                (@session9, 1, 1, 1),
                                                                                                (@session10, 1, 1, 1),
                                                                                                (@session11, 1, 1, 1),
                                                                                                (@session12, 1, 1, 1);";
 
Набросал примерную конструкцию как получать данные из массива выборки.

PHP:
do { 
               // получаем ответ на запрос из результирующего набора 
                $check_session_result = mysqli_use_result($connector); 

                 while ($row = mysqli_fetch_array($check_session_result)) 
                       { 
                        if($row=="")// обрабатываем данные 
                       $error_to_display.="Расписание на данную дату еще не сформированно.";
                       if($row!="")
                             while()
                                 {
                                          Что здесь должно быть? Как мне извлечь строки вида [2011 05 22 hh:mm] 1 1 1 1 отсюда?
                                 }
                }  

             //осовобождаем память
             mysqli_free_result($check_session_result);  

               // переходим на следующий ответ из результирующего набора 
                // если следующего ответа нет - цикл завершается 
  } while (mysqli_next_result($connector));
 
O_o
после $row = mysqli_fetch_array($check_session_result) у тебя в row должен быть результирующий ряд
 
вообще по моему (не проверял) мульти запрос это какой специфический функционал mysqli, лучше каждый запрос отдельно выполнить, особенно селекты
 
Обьясните ламеру, я вам буду благодарен. Просто у обоих методов свои плюсы. Мне интересно как будет выглядеть при грамотном php-ориентированном подходе выглядеть, с циклом.
 
Сверху