1 e 2 estão próximos, mas
$result
não vai conter o resultado da chamada da função. Em vez disso, ele conterá o cookie de resultado da consulta. Você pode usar esse cookie para obter os dados reais, com mysql_fetch_row()
. A chamada de função apenas retorna um valor para a instrução select, da mesma forma que "SELECT 42" ou "SELECT a FROM MyTable". Portanto, para obter o resultado, você usaria o mesmo mecanismo de qualquer outra consulta SQL que retorna resultados; ou seja, use o cookie e chame mysql_fetch_row()
. Então seu código final ficará assim:$result = mysql_query("select functionName($id)");
$row = mysql_fetch_row($result, $link);
$returnValue = $row[0];
Observe que você não quer interpolar variáveis diretamente em uma string SQL (que pode ser um vetor para ataques). Presumo, no entanto, que este código é apenas para fins de exemplo.