É chegada a hora de fazer nossa primeira operação do CRUD, a inserção de dados. Agora já temos nossa classe base construida e podemos implementar o método INSERIR da classe banco, que será construido dinamicamente baseado no objeto passado como argumento para a função.
Atualmente temos 40 comentários para este post. Participe você também, clique aqui e comente sobre o assunto.
Olá Ricardo, no caso do "seleciona tudo", gostaria de saber como posso mostrar o resultado de somente uma id específica da tabela no BD.
Gostaria de uma opinião se possível sobre os métodos do CRUD, pensando em relação à performance e enxutamento de classes, dessa forma abordada, para cada objeto instanciado da classe clientes, por exemplo, eu teria um insert, update, e por ai vai (CRUD), o que faria que se eu tivesse 4 objetos criados eu teria 4 vezes os métodos do CRUD, então pensando em melhorar isso, criei uma classe CRUD estendida da classe banco, onde estão esses métodos, e quando há a necessidade de alguma operação no banco, instancio ela e chamo o método necessário.
Como não tenho bons conhecimentos em php não sei considerar se isso é uma boa prática, o que me diz?
O que foi mostrado no curso é apenas uma forma de fazer, cada um fica livre para melhorar/expandir/incrementar tudo que foi ensinado aqui.
Olá Ricardo, voltando a ideia de fazer múltiplas inserção no banco de dados, eu pensei mais um pouco e consegui resolver dessa forma:
Por exemplo, se por ventura eu precisar inserir vários registros na mesma tabela com valores diferentes, exemplo:
Você deve ter em seu sistema uma função para inserir uma linha e outra para inserção em lote (meu ponto de vista), uma vez que para inserção em lotes não é necessário fazer um INSERT para cada registro. Mais detalhes vide documentação em http://dev.mysql.com/doc/refman/5.6/en/insert.html
Talvez esteja correto, mas como eu faria para caso o valor dele fosse um ARRAY, para tratar esse array e botar no formato do comando SQL [ VALUES(1,2,3),(4,5,6),(7,8,9) ] ... tentei de varias maneiras, mas já não consigo mais pensar! rsrsrs, me ajuda por favor...
Quando você não consegue mais pensar, é porque algo está errado. É hora de largar o código fonte, pegar um pedaço de papel e caneta e botar a lógica no papel antes de continuar programando.
Olá Ricardo, estou adorando as aulas de OOP e antes de ver estas tuas aulas eu fiz um método simplificado para inserir, não sei se está correto, mas funcionou, poderia me dar opiniões sobre este meu código? Obrigado...
Mas esta lógica que eu exerci, não está necessariamente errada? existe alguma falha que possa ocorrer futuramente?
Isso somente os testes dirão. Tente simular diversas situações para então poder concluir a eficiência da rotina.
Olá Ricardo, agradeço desde já pelos cursos e aulas e pelo Site, uma Belezura que só tudo de bom mesmo. Mas vamos a minha dúvida: em minhas horas vagas no serviço é onde eu procuro aprender PHP e Java, mas por motivos de segurança não é permitido baixar programas na rede, como posso ter um programa para rodar minhas aulas e ver se estou realmente aprendendo e tirar minhas duvidas pois codifico toda a aula revejo os métodos e no final não tenho como ver os resultados. Voce pode me ajudar, existe algum programa que rode um Browser sem precisar estar conectado na Internet?
Sem executar um servidor local somente enviando os arquivos para um servidor de hospedagem, outra forma desconheço.
Olá, gostaria de saber como faço para inserir um registro e ele me retornar o ID inserido, onde devo modificar na classe para funcionar essa função? Obrigado
Altere a função de inserção ou então a de execução das queries no banco para retornar o valor necessário. Ou melhor ainda, armazene o ID do último registro inserido em uma propriedade da classe para fácil acesso.
Olá ricador fiz tudo certinho mais na hora de grava os dados na database n vai eu fico dando f5 e nada acontece
Olá Ricardo blezura? O meu sistema ta funcionando redondo, mas to com uma dúvida na qual não estou conseguindo resolver, eu tenho duas tabelas no meu BD, clientes e cadastro. Conforme os arquivos que estao no link abaixo:
Eu criei a classe cadastro e também a classe clientes, o que eu quero fazer é um relacionamento n/n entre o id da tabela cadastro com a tabela clientes, conforme está no código disponibilizado no link acima, o único erro na hora de inserir dinamicamente na tabel que o valorpk fica 0. Já tentei diversas formas e nada, continua na mesma, será que alguém poderia me dar um help?
Eu apenas criei exemplos simples de uso do CRUD, cabe a cada usuário implementar e adicionar novas funcionalidades, tais como relacionamentos ou então tratamento de mais de uma tabela na mesma classe. Com um pouco de lógica tudo é possível.
Bom dia pessoal, tudo tranquilo, então, to começando a programar php orientado a objetos, mas to com um probleminha na hora de gravar os dados do usuário no banco.
Tenho um arquivo onde executo esta função, neste arquivo eu estou criando uma classe usuário e extendendo ela da classe principal que é onde esta a função de conexão com o banco, até ai tudo OK, dentro desta classe usuário eu precisaria que ele gravasse em 2 tabelas, na usuarios e na permissões, se eu colocar pra gravar em só uma tabela, grava certinho, mas como eu coloco pra gravar as permissões, vou por o código do arquivo ae
Além da classe usuários você precisa criar a classe permissões, assim cada uma cumpre seu papel no sistema.
Legal, eu pensei nisso, mas tipo, não teria algum geito de fazer dentro dessa class Usuarios? Tipo, utilizando 2 functions dentro da class Usuarios, uma para cadastrar o usuario e outra para cadastrar as permissões
Ola Ricardo, parabens pelo Blog e conteudo, são excelentes. Tenho uma duvida quanto a aula: Na hora de inserir os metodos para Inserção, Update, etc. Estes métodos poderiam ficar na classe BASE.class.php? Pois assim a classe BANCO.class.php ficaria apenas as informações relacionadas ao Banco e Conexão, e a classe BASE.class.php, como ja tem os metodos para manipular de certa forma os dados das tabelas, também se encarregaria de fazer o CRUD, só para deixar tudo mais certinho (se é que eu esteja certo?).
Olá, Ricardo vc poderia me informar como eu faria a inserção com upload de images usando essa mesma logica?
Verifique sua codificação e encontre seu erro. Se necessário refaça os scripts para descobrir o que está errado.
Cara eu fico tao feliz quando eu vejo uma coisa nova e difícil e aprendo eu conseguir fazer a parte de atualização usando a lógica que você usou nessa aula :D
Parabéns Romulos, vejo que você realmente está interessado em aprender, pois está empregando os conhecimentos ao invés de esperar tudo pronto. Na próxima aula você poderá conferir se pensamos da mesma maneira, pois na aula 4 será passada a parte de UPDATE.