36177983 0 Denunciar post Postado Abril 27, 2015 Bom, nao quero tomar o tempo de ninguem portanto serei breve, minha cliente quer que eu coloque um botao para edção de produtos, essa edção deve sair de uma lista de produtos (segue foto da pagina) "pedidos.php" e com um link ir para a pagina de cadastro de produtos onde seja feita a edção "produto.php" atualmente a pagina de cadastro de produto se encontra assim: <h2>Novo Produto</h2> <meta http-equiv="Content-Type" content="text/html"; charset="utf-8" /> <?php require_once "config.php"; ?> <?php $query2 = 'SELECT * FROM av_nomes WHERE id='.$_GET['id_nomes']; $result = mysql_query($query2, $conexao); $row = mysql_fetch_array($result, MYSQL_ASSOC); echo '<table><tr>'; echo '<td class="white"><h3>Nome:</h3> ' . $row['nome'] . '</td></tr>'; echo '</tr></table>'; ?> </br> <div id="cadastro"> <form method="post" action="index.php?pag=produto.php"> <table id="cad_table"> <tr><td>Codigo do Cliente: </td> <td><input type="text" name="id_nomes" id="id_nomes" class="txt" value="<?php echo $_GET['id_nomes']; ?>" readonly/> </td></tr> <tr><td>Data: </td> <td><input type="text" name="data" id="data" class="txt" OnKeyUp="mascaraData(this);" maxlength="10" /> </td></tr> <tr><td>Campanha: </td> <td><input type="text" name="camp" id="camp" class="txt" /> </td></tr> <tr><td>Codigo: </td> <td><input type="text" name="cod" id="cod" class="txt" /> </td></tr> <tr><td>Quantidade: </td> <td><input type="text" name="qnt" id="qnt" class="txt" /> </td></tr> <tr><td>Preço: </td> <td><input type="text" name="preco" id="preco" class="txt" OnKeyUp="moeda(this);" /> </td></tr> <tr><td>Desconto %: </td> <td><input type="text" name="desconto" id="desconto" class="txt" /> </td></tr> <tr><td>Descrição: </td> <td><input type="text" name="descr" id="descr" class="txt" /> </td></tr> <tr><td colspan="2"> <input type="submit" name="produtos" id="btn" value="Salvar" /></td></tr> </table> </form> </div> <?php if(@$_POST['produtos'] == 'Salvar'){ $data = $_POST['data']; $camp = $_POST['camp']; $id_nomes = $_POST['id_nomes']; $cod = $_POST['cod']; $qnt = $_POST['qnt']; $preco = $_POST['preco']; $desconto = $_POST['desconto']; $descr = $_POST['descr']; if(empty($cod)){ echo "<script>alert('Preencha todos os campos para adicionar um produto.'); history.back();</script>"; } elseif(empty($qnt)){ echo "<script>alert('Preencha todos os campos para adicionar um produto.'); history.back();</script>"; } elseif(empty($preco)){ echo "<script>alert('Preencha todos os campos para adicionar um produto.'); history.back();</script>"; } else { if(!mysql_query("insert into av_produtos (cod, qnt, descr, id_nomes, preco, desconto, camp, data) values ('$cod', '$qnt','$descr', '$id_nomes', '$preco', '$desconto', '$camp', '$data')", $conexao)){echo mysql_error($conexao);} echo "<script>alert('Produto Adicionado'); history.back();</script>"; echo "<meta http-equiv='refresh' content='0, url=index.php?pag=produto.php'>"; } } ?> quero adicionar um botao para editar somente os campos da tabela av_produtos, porem este deve pegar o ID do cliente da tabela av_nomes. Abaixo segue o codigo da lista de produtos. <h2>Todos Os Pedidos</h2> <?php require_once "config.php"; echo '<table width="80%">'; echo '<thead><tr>'; echo '<th></th>'; echo '<th>Data</th>'; echo '<th>Campanha</th>'; echo '<th>Cliente</th>'; echo '<th>Codigo</th>'; echo '<th>Quant.</th>'; echo '<th>Preço</th>'; echo '<th>Desc.</th>'; echo '<th>Entrega</th>'; echo '<th>Contato</th>'; echo '<th>%</th>'; echo '</tr></thead>'; echo '<tbody>'; $query2 = ' SELECT av_nomes.nome, av_nomes.tel, av_nomes.end, av_produtos.cod, av_produtos.qnt, av_produtos.preco, av_produtos.descr, av_produtos.desconto, av_produtos.camp, av_produtos.data FROM av_nomes INNER JOIN av_produtos ON av_nomes.id=av_produtos.id_nomes ORDER BY av_produtos.data'; if(!$result = mysql_query($query2, $conexao)) {echo '##';} while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { echo '<tr>'; echo '<td class="white">' . '<a href="#"><img src="img/edita.png" widht="25"height="25"></a>' . '</td>'; echo '<td class="gray">' . $row['data'] . '</td>'; echo '<td class="white">' . $row['camp'] . '</td>'; echo '<td class="gray">' . $row['nome'] . '</td>'; echo '<td class="white">' . $row['cod'] . '</td>'; echo '<td class="gray">' . $row['qnt'] . '</td>'; echo '<td class="white">' . $row['preco'] . '</td>'; echo '<td class="gray">' . $row['descr'] . '</td>'; echo '<td class="white">' . $row['end'] . '</td>'; echo '<td class="gray">' . $row['tel'] . '</td>'; echo '<td class="white">' . $row['desconto']. '</td>'; echo '</tr>'; } echo '</tbody></table>'; ?> como ainda sou meio leigo em PHP estou apanhando muito para conseguir usar o UPDATE mas pelo que consegui segue os dados: <?php require_once "config.php"; UPDATE av_produto SET data='$data', camp='$camp', cod='$cod', qnt='$qnt', preco='$preco', desconto='$desconto', desc='$desc', descr='$descr' WHERE id_nomes= '$id_nomes'; // (nao sei se aqui esta certo) ?> Segue abaixo fotos da pagina (designer) e das tabelas do BD av_nomes (cliente) av_produtos (produtos). Tabela av_nomes Tabela av_produtos Designer da pagina A imagem antes do campo data é referente ao link para a edição da linha, porem os campos que devem ser edtados sao apenas os da tabela de produtos. Se alguem puder me ajudar, agradeço muito, se precisar de mais detalhes, skype / email -> thiago3617@hotmail.com Compartilhar este post Link para o post Compartilhar em outros sites
Mateus Silva 64 Denunciar post Postado Abril 27, 2015 não entendi qual é sua dificuldade, é só você editar a tabela de produtos baseado em um id passado por get ou post, oras o.o Compartilhar este post Link para o post Compartilhar em outros sites
36177983 0 Denunciar post Postado Abril 27, 2015 Sim, mas o meu problema é para fazer a alteração no banco de dados não consigo fazer a leitura dos campos e a alteração e depois o envio dinovo, para salvar por cima do antigo Compartilhar este post Link para o post Compartilhar em outros sites
cristianomg 0 Denunciar post Postado Abril 27, 2015 Bom acredito que já saiba linkar o id do produto no seu ícone. Tipo seu ícone terá o link editar_produto.php?id=7 (sete código do produto) Você poderia, como eu faço, direciono a página de cadastro de produtos onde: <?php $id = $_GET["id"]; $sql = mysql_query("SELECT id, nomeproduto FROM nometabelaproduto WHERE id_produto = $id"); while( $ln = mysql_fetch_array($sql) ) { $id = $ln["id"]; $nomeproduto = $ln["nomeproduto"]; ?> <form action="cad_produto.php" method="post"> <input type="text" value="<?php echo $nomeproduto;>" name="produto"> *demais campos </form> Assim seus campos do cadastro de produto resgatam os dados da base e você pode alterar e direcionando em outro arquivo editar_produto.php no action do form, ai sim executando o update dos campos, como se fosse inseri-los. será que entendeu? Compartilhar este post Link para o post Compartilhar em outros sites
36177983 0 Denunciar post Postado Abril 28, 2015 bom, eu quebrei bastante a cabeça aqui e fussei em diversos forums e acabei conseguindo fazer o botao para editar, porem não sei oque fiz e agora quando vou cadastrar um produto o nome do cliente não aparece onde deveria, nao esta lendo a " $row['nome'] " vou mandar o codigo da pagina se alguem puder ajudar <h2>Novo Produto</h2> <meta http-equiv="Content-Type" content="text/html"; charset="utf-8" /> <?php require_once "config.php"; $id = ($_POST['id']!="") ? $_POST['id'] : $_GET['id']; if(@$_POST['b_salvar'] == 'Salvar'){ $data = $_POST['data']; $camp = $_POST['camp']; $id_nomes = $_POST['id_nomes']; $cod = $_POST['cod']; $qnt = $_POST['qnt']; $preco = $_POST['preco']; $desconto = $_POST['desconto']; $descri = $_POST['descri']; if(empty($cod)){ echo "<script>alert('Preencha todos os campos para adicionar um produto.'); history.back();</script>"; } elseif(empty($qnt)){ echo "<script>alert('Preencha todos os campos para adicionar um produto.'); history.back();</script>"; } elseif(empty($preco)){ echo "<script>alert('Preencha todos os campos para adicionar um produto.'); history.back();</script>"; } else { if(!mysql_query("insert into av_produtos (cod, qnt, descri, id_nomes, preco, desconto, camp, data) values ('$cod', '$qnt','$descri', '$id_nomes', '$preco', '$desconto', '$camp', '$data')", $conexao)){echo mysql_error($conexao);} echo "<script>alert('Produto Adicionado'); history.back();</script>"; echo "<meta http-equiv='refresh' content='0, url=index.php?pag=produto.php'>"; } } elseif(@$_POST['b_edita'] == 'Editar'){ $data = $_POST['data']; $camp = $_POST['camp']; $cod = $_POST['cod']; $qnt = $_POST['qnt']; $preco = $_POST['preco']; $desconto = $_POST['desconto']; $descri = $_POST['descri']; $query3 = ' UPDATE av_produtos SET data = "'.$data.'", camp = "'.$camp. '", cod = "'.$cod. '", qnt = "'.$qnt. '", preco = "'.$preco.'", desconto = "'.$desconto. '", descri = "'.$descri.'" WHERE id= '.$id; echo $query3; if(!$result = mysql_query($query3, $conexao)) {echo 'Erro de Alteração'.$query3;} die('<script type="text/javascript">window.location.href="index.php?pag=pedidos.php"</script>'); } require_once "config.php"; if($id!=""){$query2 = ' SELECT av_nomes.nome, av_produtos.id, av_produtos.cod, av_produtos.qnt, av_produtos.preco, av_produtos.descri, av_produtos.desconto, av_produtos.camp, av_produtos.data FROM av_produtos INNER JOIN av_nomes ON av_produtos.id_nomes=av_nomes.id WHERE av_produtos.id='.$id; if(!$result = mysql_query($query2, $conexao)) {echo 'Erro de Leitura'.$query2;} $row = mysql_fetch_array($result, MYSQL_ASSOC);} //////////////////////////////////////////// ESTA VARIAVEL ABAIXO NÃO ESTA SENDO EXIBIDA ///////////////////////////////////////////// echo '<table><tr>'; echo '<td class="white"><h3>Nome:</h3>'.$row['nome'].'</td></tr>'; echo '</tr></table>'; //////////////////////////////////////////// ESTA VARIAVEL ACIMA NÃO ESTA SENDO EXIBIDA ///////////////////////////////////////////// ?> </br> <div id="cadastro"> <form method="post" action="index.php?pag=produto.php"> <input type="hidden" name="id_nomes" value="<?php echo $_GET['id_nomes']; ?>"> <table id="cad_table"> <tr><td>Codigo do Cliente: </td> <td><input type="text" name="id" id="id" class="txt" value="<?php echo $_GET['id']; ?>" readonly/> </td></tr> <tr><td>Data: </td> <td><input type="text" name="data" id="data" class="txt" value="<?php echo $row['data']; ?>" OnKeyUp="mascaraData(this);" maxlength="10" /> </td></tr> <tr><td>Campanha: </td> <td><input type="text" name="camp" id="camp" class="txt" value="<?php echo $row['camp']; ?>" /> </td></tr> <tr><td>Codigo: </td> <td><input type="text" name="cod" id="cod" class="txt" value="<?php echo $row['cod']; ?>" /> </td></tr> <tr><td>Quantidade: </td> <td><input type="text" name="qnt" id="qnt" class="txt" value="<?php echo $row['qnt']; ?>" /> </td></tr> <tr><td>Preço: </td> <td><input type="text" name="preco" id="preco" class="txt" value="<?php echo $row['preco']; ?>" OnKeyUp="moeda(this);" /> </td></tr> <tr><td>desconto %: </td> <td><input type="text" name="desconto" id="desconto" class="txt" value="<?php echo $row['desconto']; ?>" /> </td></tr> <tr><td>descrição: </td> <td><input type="text" name="descri" id="descri" class="txt" value="<?php echo $row['descri']; ?>" /> </td></tr> <tr><td colspan="2"> <input type="submit" name="b_salvar" id="btn" value="Salvar" /></td></tr> <tr><td colspan="2"> <input type="submit" name="b_edita" id="btn" value="Editar" /></td></tr> </table> </form> </div> estou citando pelo fato de o espaçamento no codigo ficar muito extenso e complica a leitura.. quando cito ele tira os espaços.. coloquei uma linha de comentario onde acho que começa o erro. Compartilhar este post Link para o post Compartilhar em outros sites
cristianomg 0 Denunciar post Postado Abril 28, 2015 Tente assim e veja o que mostra: ?> //encerra a tag php <table><tr> <td class="white"><h3>Nome:</h3><?php echo $row["nome"];?></td></tr> </tr></table> Poste o retorno, Compartilhar este post Link para o post Compartilhar em outros sites