1 и 2 близки, но $result
не будет содержать результат вызова функции. Скорее, он будет содержать файл cookie результата запроса. Вы можете использовать этот файл cookie для получения фактических данных, используя mysql_fetch_row()
. Вызов функции просто возвращает значение для оператора select, точно так же, как «SELECT 42» или «SELECT a FROM MyTable». Таким образом, чтобы получить результат, вы должны использовать тот же механизм, что и в любом другом запросе SQL, который возвращает результаты; то есть, используйте куки и позвоните mysql_fetch_row()
. Итак, ваш окончательный код будет выглядеть так:
$result = mysql_query("select functionName($id)");
$row = mysql_fetch_row($result, $link);
$returnValue = $row[0];
Обратите внимание, что вы не хотите интерполировать переменные непосредственно в строку SQL (это может быть вектором для атак). Я предполагаю, однако, что этот код только для примера.