За последние 24 часа нас посетили 18442 программиста и 1604 робота. Сейчас ищут 1022 программиста ...

Хранимка с двумя возвратами

Тема в разделе "PHP и базы данных", создана пользователем Awful85, 13 фев 2011.

  1. Awful85

    Awful85 Активный пользователь

    С нами с:
    10 фев 2011
    Сообщения:
    8
    Симпатии:
    0
    входные условия такие
    есть некая процедура

    END
    [sql]
    CREATE DEFINER = 'root'@'localhost'
    PROCEDURE somebase.someproc()
    BEGIN

    SELECT NOW() Now;

    SELECT 1 AS One, 2 AS Two;
    END
    [/sql]

    Которая возвращаяет

    Now
    1

    One|Two
    1 | 2

    Двумя "рекордсетами"

    Вопрос в следующем ))
    Умеет ли PHP переходить на 2-й рекордсет

    Заранее спасибо.
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Наводящий вопрос - какой php-функцией ты собираешься обрабатывать полученный результат?
     
  3. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Awful85
    Да, если не ошибаюсь - mysql_result
     
  4. Awful85

    Awful85 Активный пользователь

    С нами с:
    10 фев 2011
    Сообщения:
    8
    Симпатии:
    0
    tommyangelo
    Я и спрашиваю какой )
     
  5. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    :) второй вопрос - что у тебя приходит в переменную после выполнения mysql_query?
    Ответ - Resourse

    Теперь повторю первый вопрос - чем ты обычно обрабатываешь Resourse ?
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    хватит умничать, покажите пример =)
     
  7. Awful85

    Awful85 Активный пользователь

    С нами с:
    10 фев 2011
    Сообщения:
    8
    Симпатии:
    0
    2-мя руками за!
     
  8. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    наверно так
    Код (Text):
    1. $query = mysql_query(вызов хранимки тут);
    2. if($row = mysql_fetch_array($query)){
    3.   $one = $row['One'];
    4.   $two = $row['Two'];
    5. }
     
  9. Awful85

    Awful85 Активный пользователь

    С нами с:
    10 фев 2011
    Сообщения:
    8
    Симпатии:
    0
    Так не хочет (Notice: Undefined index: One in C:\Users\Awful\PHP\func\php\dbfunc.php on line 20), да поидее и не должен, так как это два разных "рекордсета"(набора данных), а так мы обращаемся в первый.

    Вот я и немогу понять как перейти на второй.

    Мне это нужно для того чтобы получать доп информацию.

    Например:
    1рекордсет-Возврат прав пользователя (Можно/Нельзя)
    2й - В человеческом виде названия колонок
    3й - Данные
     
  10. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    0 и 1 не?

    И вообще - драйвер mysql разве уже умеет с multiquery работать? Хранимки обычно с mysqli