Alternativa mysqli get_result
Acabei de alterar todas as minhas consultas sql para instruções preparadas usando o mysqli. Para acelerar este processo criei uma função (chamadaperformQuery
) que substituimysql_query
. Leva a consulta, as ligações (como "sdss") e as variáveis a serem passadas, isto então faz todo o material da declaração perparada. Isso significava que mudar todo o meu código antigo era fácil. Minha função retorna ummysqli_result
objeto usando mysqliget_result()
.
Isso significava que eu poderia mudar meu código antigo de:
$query = "SELECT x FROM y WHERE z = $var";
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)){
echo $row['x'];
}
para
$query = "SELECT x FROM y WHERE z = ?";
$result = performQuery($query,"s",$var);
while ($row = mysql_fetch_assoc($result)){
echo $row['x'];
}
Isso funciona bem em localhost, mas o meu servidor de hospedagem na web não tem mysqlnd disponível, portantoget_result()
não funciona. Instalar o mysqlnd não é uma opção.
Qual é o melhor caminho a seguir daqui? Posso criar uma função que substituaget_result()
, e como?