Adison 0 Denunciar post Postado Julho 16, 2014 Ola pessoal, estou com uma dificuldade em fazer umas conexões com PDO, sei que aqui não é escola, mas alguém pode me ajudar a transformar este crud em PDO?? conn.php <?php$conn = mysql_connect('127.0.0.1','root','');if (!$conn) { die('Could not connect: ' . mysql_error());}mysql_select_db('cadastroclientes', $conn);?> update.php <?php$id = intval($_REQUEST['id']);$nome = $_REQUEST['nome'];$sobrenome = $_REQUEST['sobrenome'];$telefone = $_REQUEST['telefone'];$email = $_REQUEST['email'];include 'conn.php';$sql = "update cadastroclientes set nome='$nome',sobrenome='$sobrenome',telefone='$telefone',email='$email' where id=$id";@mysql_query($sql);echo json_encode(array('id' => $id,'nome' => $nome,'sobrenome' => $sobrenome,'telefone' => $telefone,'email' => $email));?> get.php <?phpinclude 'conn.php';$rs = mysql_query('select * from cadastroclientes');$result = array();while($row = mysql_fetch_object($rs)){array_push($result, $row);}echo json_encode($result);?> destroy.php <?php$id = intval($_REQUEST['id']);include 'conn.php';$sql = "delete from cadastroclientes where id=$id";@mysql_query($sql);echo json_encode(array('success'=>true));?> save.php <?php$nome = $_REQUEST['nome'];$sobrenome = $_REQUEST['sobrenome'];$telefone = $_REQUEST['telefone'];$email = $_REQUEST['email'];include 'conn.php';$sql = "insert into cadastroclientes(nome,sobrenome,telefone,email) values('$nome','$sobrenome','$telefone','$email')";@mysql_query($sql);echo json_encode(array('id' => mysql_insert_id(),'nome' => $nome,'sobrenome' => $sobrenome,'telefone' => $telefone,'email' => $email));?> Compartilhar este post Link para o post Compartilhar em outros sites
disalvo 3 Denunciar post Postado Julho 16, 2014 Você sabe o que é PDO? Já estudou PDO? Deu uma lida nem que seja superficial pela documentação? http://php.net/manual/pt_BR/book.pdo.php http://www.diogomatheus.com.br/blog/php/trabalhando-com-pdo-no-php/ http://www.rafaelwendel.com/2011/12/tutorial-pdo-php-data-object/ http://imasters.com.br/artigo/16221/php/desenvolvendo-com-pdo-php-data-objects/ Compartilhar este post Link para o post Compartilhar em outros sites
Adison 0 Denunciar post Postado Julho 16, 2014 Você sabe o que é PDO? Já estudou PDO? Deu uma lida nem que seja superficial pela documentação? http://php.net/manual/pt_BR/book.pdo.php http://www.diogomatheus.com.br/blog/php/trabalhando-com-pdo-no-php/ http://www.rafaelwendel.com/2011/12/tutorial-pdo-php-data-object/ http://imasters.com.br/artigo/16221/php/desenvolvendo-com-pdo-php-data-objects/ Olá Disalvo, obrigado por contribuir, e respondendo sua pergunta, sim, já li algo sobre PDO, só não consigo implementar em um pequeno sistema que utilizo aqui, os resultados são exibidos em uma tabela com jquery. Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Julho 16, 2014 Cara em momento algum do seu código você tenta usar o PDO......tenta fazer aí, e onde estiver com dificuldades nós ajudamos! é só seguir os exemplos do @disalvo que não tem erro. Começa pela conexão. Um exemplo de conexão do próprio site do php <?php $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); ?> http://php.net/manual/pt_BR/pdo.connections.php Compartilhar este post Link para o post Compartilhar em outros sites
Adison 0 Denunciar post Postado Julho 16, 2014 Cara em momento algum do seu código você tenta usar o PDO......tenta fazer aí, e onde estiver com dificuldades nós ajudamos! é só seguir os exemplos do @disalvo que não tem erro. Começa pela conexão. Um exemplo de conexão do próprio site do php <?php $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); ?> http://php.net/manual/pt_BR/pdo.connections.php Obrigado rockrgo... Já fiz a conexão com banco: conn.php <?php $conn = new PDO( 'mysql:host=localhost;dbname=banco_exemplo', 'root', '' ); ?> Os dados são inseridos, editados e excluídos em um datagrid na pagina inicio.php conforme imagem abaixo Compartilhar este post Link para o post Compartilhar em outros sites
disalvo 3 Denunciar post Postado Julho 16, 2014 Beleza, então qual a dúvida? Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Julho 16, 2014 O próximo passo é você aprender a trabalhar com statements http://php.net/manual/pt_BR/class.pdostatement.php prepare() bindValue() ou bindParam() execute() fetch() ou fetchAll() Compartilhar este post Link para o post Compartilhar em outros sites
Adison 0 Denunciar post Postado Julho 16, 2014 Beleza, então qual a dúvida? É o seguinte, preciso que os dados digitados no datagrid sejam salvos no db quando eu chamar o save.php...ae surge a duvida: nao consigo pegar os valores dos campos digitado! save.php <?php include 'conn.php'; $executa = $pdo->query("INSERT INTO minhatabela(razao_social, cnpj, rua) VALUES (' ', ' ')"); ?> O próximo passo é você aprender a trabalhar com statements http://php.net/manual/pt_BR/class.pdostatement.php prepare() bindValue() ou bindParam() execute() fetch() ou fetchAll() Valeu rockrgo, até consigo inserir os dados na tabela, mas somente se digitados no Value do save.php, mas preciso que seja os dados dos campos do datagrid, via $_REQUEST Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Julho 16, 2014 Para enviar os dados você tem que ter um form ou pegar estes dados com javascript e enviar para a save.php via AJAX. Compartilhar este post Link para o post Compartilhar em outros sites
Adison 0 Denunciar post Postado Julho 16, 2014 Para enviar os dados você tem que ter um form ou pegar estes dados com javascript e enviar para a save.php via AJAX. Os dados são pegos com javascript e enviados via Ajax... consegui fazer o save.php, dessa forma estaria correto? save.php <?php $razao_social = $_REQUEST['razao_social']; $cnpj = $_REQUEST['cnpj']; $rua = $_REQUEST['rua']; include 'conn.php'; $executa = $pdo->query("INSERT INTO cadastrofornecedores(razao_social, cnpj, rua) VALUES ('$razao_social', '$cnpj', '$rua')"); ?> Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Julho 17, 2014 Troca o $pdo->query() por $pdo->exec()...........ela vai te retornar o número de linhas afetadas no seu banco....se retornar 1 é porque o registro foi inserido. Compartilhar este post Link para o post Compartilhar em outros sites
Adison 0 Denunciar post Postado Julho 17, 2014 Troca o $pdo->query() por $pdo->exec()...........ela vai te retornar o número de linhas afetadas no seu banco....se retornar 1 é porque o registro foi inserido. Funcionou perfeitamente... qual a melhor opção: query ou exec? Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Julho 17, 2014 Para selecionar dados a query() e para executar querys que não retornam dados como insert, update usa o exec(); Mas nem uso a função query para selecionar dados, costumo usar o prepare() e depois o execute(). Compartilhar este post Link para o post Compartilhar em outros sites
Adison 0 Denunciar post Postado Julho 17, 2014 Ok, como trata de um crud completo ainda falta o select, delete e update Até agora meu código esta assim: conn.php <?php $pdo = new PDO("mysql:host=localhost;dbname=banco_exemplo", "root", ""); if(!$pdo){ die('Erro ao criar a conexão'); } ?> save.php <?php $razao_social = $_REQUEST['razao_social']; $cnpj = $_REQUEST['cnpj']; $rua = $_REQUEST['rua']; include 'conn.php'; $executa = $pdo->exec("INSERT INTO cadastrofornecedores(razao_social, cnpj, rua) VALUES ('$razao_social', '$cnpj', '$rua')"); echo json_encode(array( 'nome' => $nome, 'sobrenome' => $sobrenome, 'telefone' => $telefone, 'email' => $email )); ?> Até neste ponto tudo okk, agora preciso substituir o meu antigo select <?php include 'conn.php'; $rs = mysql_query('select * from cadastrofornecedores'); while($row = mysql_fetch_object($rs)){ array_push($result, $row); } echo json_encode($result); ?> Compartilhar este post Link para o post Compartilhar em outros sites