Tribb 0 Denunciar post Postado Julho 7, 2011 Estou com o seguinte problema.. Eu quero criar uma classe que executará query X. O problema é que ao chamar a função eu envio $query-X até ai beleza, ele vai executar querie x. Mas eu ainda preciso preencher os dados do WHERE. Como eu não sei quantos WHERES eu vou precisar usar eu teria que receber uma array com todos WHERES em ordem. Eu pensei em dar um explode no $string e transformar em uma array. Mas são consultas dinamicas. Eu não tenho controle do que a pessoa vai digitar. Alguem conhece alguma solução? Ou como eu posso enviar uma array ao chamar a função. O código. class SQLqrys { /* * DEFININDO AS QUERIES */ $query = array ( 1 => "SELECT `userid` FROM `login` WHERE `userid` = '%s'", //Login existe. 2 => "SELECT * FROM `login` WHERE `userid` = '%s' AND `id` = '%d'", //Todos dados tabela login userid = x ) function getQRY($qry_x,$string) { $stringRes = explode(", ", $string); for($i = 0; $i <= count($stringRes); $i++) { $con = printf($qry_x, $stringRes[$i]); $qry_x = $con; } $result = mysql_query($con); return $result; } Não testei mas essa era minha ideia.. Mas ela seria falha pq o usuario pode digitar ", " dar erro em tudo. Então alguem tem alguma solução? Grato. Compartilhar este post Link para o post Compartilhar em outros sites
Tribb 0 Denunciar post Postado Julho 7, 2011 Pode fechar cabei de descobrir que arrays podem ser enviadas quando estou chamando uma função.. Rsrs nem testei antes de vim aqui.. Mas uma parte da duvida ainda fica. @edit Ou melhor tem como editar o titulo para.. "Duvida como resolver esse problema?" Grato. Compartilhar este post Link para o post Compartilhar em outros sites