Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Da-lhe galera,
Venho mais uma vez postar uma dúvida no fórum, nas esperança de uma resposta ... pq ultimamente ta complicado pro meu lado .... to com azar acho.
Bom, estou criando uma classe para abstração com o banco de dados para um novo projeto, e eu estou com umas idéias novas na cabeça para esta classe (multi_queries, multi-bancos e etc., ta ficando show :D). Quando terminar eu posto aqui.
Estou criando um método dentro da classe para inserção de dados, um método insert. E eu acabei travando no método bind_param da classe mysqli.
Travei, porque a forma de passagem de parametro deste método é um tanto quanto "engessada" para quem não sabe é:
class mysqli_stmt { bool bind_param ( string types, mixed &var1 [, mixed &...] )}
viram que m*rda o primeiro parametro são os tipos das variaveis, e do segundo até n são as respectivas variáveis (separadas com virgula).
Ai eu pergunto, e se eu não souber os nomes das variaveis, e se eu quiser passar um array por parametro !?
Pensei muito e não achei nenhuma solução viável para este problema.
A única solução que achei foi reescrever a função bind_param, que receba um array, ou uma string multivalorada.
Mas eu preciso saber como funciona esse método bind_param na íntegra ....
A unica coisa que eu sei que ele faz é ligar as váriaveis referenciadas no método prepare() da classe mysqli...
Mas internamente, este método tem alguma função de ... por exemplo anti-sqlinjection !?
[]'s
é a ideia do bind_param é proteger o sql, mas voce pode montar seu proprio sistema, como voce falou ou na hora de montar o sql voce conta quantos campos tem e troca por '%s' ou use as outras definições do sprintf e assim voce usa o sprintf com o sql criado que tbm vai ser seguro
valeu thiagão, ja criei uma suposta bind_param aqui :D