Ir para conteúdo

Aureo Almeida

Members
  • Total de itens

    46
  • Registro em

  • Última visita

Tudo que Aureo Almeida postou

  1. Aureo Almeida

    Formulário não envia parte de consultas

    Possuo um formulário que está repassando parte dos dados que desejo enviar. Ele busca o resultado de três consultas e duas delas dão opções de seleção para o usuário em input radio. A primeira busca informações de produtos selecionados a partir de um parâmetro recebido via post. Este mesmo parâmetro também estabelece um critério para as outras duas consultas. Todas elas funcionam adequadamente, sem problemas. A questão é que ao enviar o formulário somente os dois parâmetros que estão presentes em inputs hidden são enviados. Os dois inputs radio, que são preenchidos de acordo com determinados critérios, não. Este é o código do formulario: <form action="carrinho.php" method="post"> <?php //Recebe a variavel idproduto da página do produto $sub_id = $_POST['idproduto']; $sql = "SELECT * FROM psd_produtos Where prd_id = '$sub_id'"; $stmt = $conn->prepare($sql); $stmt->execute(); $dados= $stmt->fetchAll(PDO::FETCH_OBJ); foreach ($dados as $detProdutos): $prdid = $detProdutos->prd_id; $nome= $detProdutos->prd_nome; $valor = $detProdutos->prd_valor; $novovalor = number_format($valor, 2, ',', '.'); $quantidade = $detProdutos->prd_estoque; echo" <h2>PREÇO: R$ $novovalor</h2><br/> <input type='hidden' name='id' value='$prdid'> <input type='hidden' name='acao' value='add'> "; endforeach; $sql1 = "SELECT * FROM psd_cores WHERE prd_id = '$sub_id'AND crs_quantidade != '0'"; $stmt1 = $conn->prepare($sql1); $stmt1->execute(); $dados1= $stmt1->fetchAll(PDO::FETCH_OBJ); foreach ($dados1 as $prodCores): if($quantidade!= 0){ echo" <input type='radio' name='cor' id='cor' value='$prodCores->crs_cores' checked='checked'> $prodCores->crs_cores <br> ";} endforeach; $sql2 = "SELECT * FROM psd_sabores WHERE prd_id = '$sub_id'AND sbr_quantidade != '0'"; $stmt2 = $conn->prepare($sql2); $stmt2->execute(); $dados2= $stmt2->fetchAll(PDO::FETCH_OBJ); foreach ($dados2 as $prodSabores): if($quantidade!= 0){ echo" <input type='radio' name='sabor' id='sabor 'value='$prodSabores->sbr_sabor' checked='checked'> $prodSabores->sbr_sabor <br> ";} endforeach; ?> <input type='submit' class='imput-comprar' value='Comprar'> </form> O estranho é que se eu fizer um formulário com uma das consultas isoladamente da demais, os parâmetros são enviados. Exemplo que funciona: <form action="carrinho.php" method="post"> $sql2 = "SELECT * FROM psd_sabores WHERE prd_id = '$sub_id'AND sbr_quantidade != '0'"; $stmt2 = $conn->prepare($sql2); $stmt2->execute(); $dados2= $stmt2->fetchAll(PDO::FETCH_OBJ); foreach ($dados2 as $prodSabores): if($quantidade!= 0){ echo" <input type='radio' name='sabor' id='sabor 'value='$prodSabores->sbr_sabor' checked='checked'> $prodSabores->sbr_sabor <br> ";} endforeach;?> <br><input type='submit' class='imput-comprar' value='Comprar'> </form> O que pode estar impedindo que os valores das duas consultas após a primeira não sejam enviadas em conjunto, somente isoladamente?
  2. Aureo Almeida

    Onclick não chama função de arquivo externo.

    Não tenho domínio do uso de Ajax e estou com problema para chamar uma função PHP de um arquivo. Num arquivo chamado atualiza.php possuo uma função para atualizar tabelas de um Banco de Dados com dois insert into, chamada function atualizaPdIt(). Eu desejo que esta função seja chamada para dentro de um arquivo chamado finaliza_compra.php através do evento onclick de um imput button, que está assim: <button onclick=" atualizaCompra ()" class='imput-concluir'>Finalizar</button> O Script que coloquei no Head da página é este: <script> function atualizaCompra () { $.ajax({ url:'atualiza.php', complete: function (atualizaPdIt) { alert(atualizaPdIt.responseText); }, error: function () { alert('Erro'); } }); return false; } </script> Porém, a função não é executada. O que está errado? Para constar, o script de atualização do arquivo atualiza.php funciona perfeitamente bem quanto deixado dentro de um bloco de código da página finalizar_compra.php, portanto, não é nele que está o problema, mas na forma como estou chamando.
  3. Aureo Almeida

    Colocar itens de um carrinho de compras numa tabela do BD

    Consegui o que queria com este script: foreach ($resultsCarts as $result){ $sql1 = "INSERT INTO psd_itens(itens_id, pedido_id, itens_produto, itens_quantidade, itens_valor_produto, itens_total ) values( '', '".$ultpedido."', '".$result['name']."', '".$result['quantity']."', '".$result['price']."', '".$result['subtotal']."' )"; $stmt1 = $conn->prepare($sql1); $stmt1->execute(); }
  4. Aureo Almeida

    Colocar itens de um carrinho de compras numa tabela do BD

    Eu possuo um carrinho de compras que me mostra os itens selecionados pelo cliente dentro de um foreach, conforme código abaixo: <?php foreach($resultsCarts as $result) : ?> <tr> <td><?php echo $result['name']?></td> <td><input type="text" name="prod[<?php echo $result['id']?>]" value="<?php echo $result['quantity']?>" size="1" max="<?php echo $result['estoque']?>" min="1"/></td> <td>R$<?php echo number_format($result['price'], 2, ',', '.')?></td> <td>R$<?php echo number_format($result['subtotal'], 2, ',', '.')?></td> </tr> <?php endforeach;?> Eu gostaria de inserir todos os itens retornados dentro de uma tabela chamada itens_pedido, vinculando todos eles ao último pedido feito. O código que insere os dados do último pedido e que me retorna o identificador dela é o que segue abaixo, e funciona: $sql = "INSERT INTO psd_pedidos (pedido_id, pedido_data, pedido_data_hora, pedido_valor, pedido_status) values('','".date('Y-m-d')."','".date('Y-m-d H:i:s')."', '".$ttpagseguro."','finalizado')"; $stmt = $conn->prepare($sql); $stmt->execute(); $ultpedido = $conn->lastInsertId(); O problema que não estou conseguindo resolver é: como pegar a informação que e é retornada pela variável $ultpedido, que é o identificador do último pedido feito, e todos os itens do carrinho de compras e inseri-los na tabela psd_itens, vinculados a este último pedido. O campo que armazena o último pedido na tabela psd_itens é uma chave estrangeira da tabela psd_pedidos e tem o nome de pedido_id. Eu desenvolvi o seguinte código, que me parece não ter problemas, mas não estou sabendo usa-lo: //VARIAVEIS COM VALORES QUE RETORNAM NO FOREACH $nmproduto = $result['name']; $vlproduto = $result['price']; $qtproduto = $result['quantity']; $sbtproduto = $result['subtotal']; $sql = "INSERT INTO psd_itens(itens_id, pedido_id, itens_produto, itens_quantidade, itens_valor_produto, itens_total ) values( '', '".$ultpedido."', '".$nmproduto."', '".$vlproduto."', '".$qtproduto."', '".$sbtproduto."') "; $stmt = $conn->prepare($sql); $stmt->execute(); Sei que ele deve estar dentro do foreach mas todas as minhas tentativas com soluções de outras experiências retornaram erros. Alguém sabe como eu resolvo estes problemas?
  5. O Felipe Guedes Coutinho ajudou na resolução de um problema quanto a como passar valores de variáveis de uma página com um carrinho para um arquivo com a API do PagSeguro. Consegui fazer isso através de sessões, e a passagem ocorre normalmente. O problema que surgiu dessa solução, que para o meu contexto é a melhor, é que a API do PagSeguro Lightbox não está reconhecendo variáveis em tempo de execução. Mesmo que convertidas em STRING. O tópico que abri e que creio que se esgotou o problema original em que o Felipe Guedes Coutinho ajudou a resolver foi este: Colocando o problema. Possuo duas variáveis, uma que contém um nome de produto que quero passar como parâmetro para um pagamento no PagSeguro lightbox, e outra com o valor. Ambas são oriundas de um processo em tempo de execução, e não há problema com ele, pois elas são preenchidas normalmente e os valores são impressos no display. A variável $produto_nome e a $ttBrasil. Elas são repassadas para duas variáveis SESSION: $_SESSION['descricao'] = $produto_nome; $_SESSION['valorTotal'] = $ttBrasil; Na página em que se encontra o script da API do PagSeguro, chamada pagseguro.php, esses valores são recebidos sem problemas (numa condição que explicitarei), de duas formas: $data['itemDescription1'] = $_SESSION['descricao']; $data['itemAmount1'] = $_SESSION['valorTotal']; Ou $data['itemDescription1'] = "'".$_SESSION['descricao']."'"; $data['itemAmount1'] = "'".$_SESSION['valorTotal']."'"; O problema é que este processo funciona normalmente e a variável é reconhecida quando o valor é declarado estaticamente e entre aspas simples. Em tempo de execução não. Funciona quando: $ttBrasil = '50.00'; $produto_nome = 'Nome de Teste'; Se as variáveis vierem em tempo de execução, mesmo existindo (eu as imprimo no display normalmente), a API do PagSeguro não reconhece. Quando falo em tempo de execução, é as SESSION recebendo diretamente as variáveis: $_SESSION['descricao'] = $produto_nome; $_SESSION['valorTotal'] = $ttBrasil; A variável $ttBrasil é DECIMAL no BD, reconhecida como DOUBLE pelo PHP. Eu converti ela para STRING de várias formas, sempre mantendo o problema, mas achei mais adequado usar a função STRING, que converte FLOAT em STRING: $ttBrasil = (string) $ttBrasil; Verifiquei após a conversão e ela retorna como do tipo STRING. Uso esses comandos para verificar o tipo de variável e o valor. echo gettype($ttBrasil); echo $_SESSION['valorTotal']; Este é o problema que não consegui resolver.
  6. Aureo Almeida

    Passar valor para lightbox transparente do PagSeguro

    Eu estou desenvolvendo um carrinho de compras num arquivo chamando carrinho.php e entre os scripts disponíveis da API para pagar através PagSeguro escolhi um que chama um arquivo com as informações da API (pagseguro.php), pega os dados presente nele e abre API do Checkout Transparente para o pagamento. Este é o script: <script> function enviaPagseguro(){ $.post('pagseguro.php','',function(data){ $('#code').val(data); $('#comprar').submit(); }) } </script> O que eu não estou conseguindo fazer é passar o valor total das compras do carrinho para o arquivo com os parâmetros da APPI. Com valores fixos a API funciona bem, como posso exemplificar com os seguintes parâmetros: $data['token'] =OCULTO'; $data['email'] = OCULTO'; $data['currency'] = 'BRL'; $data['itemId1'] = '1'; $data['itemQuantity1'] = '1'; $data['itemDescription1'] = 'Produto de Teste'; $data['itemAmount1'] = '299.00'; $url = 'https://ws.pagseguro.uol.com.br/v2/checkout'; O que eu desejo é fazer três coisas, que não estou sabendo fazer. Primeira: passar como valor do parâmetro $data['itemAmount1'] a variável que possuo na página que faz a totalização da compra, chamada de $ttcompra; Segunda: passar como valor do parâmetro $data['itemQuantity1'] a variável que mostra o total de itens, chamada $ttitems. E a terceira é que desejaria que nas informações a serem enviadas para o PagSeguro estivesse um novo item, com o valor do código da compra. É possível isso nesta API eu estou utilizando? Busquei na documentação dela no PagSeguro e não achei. Eles estão mudando a página e não se encontra muita coisa.
  7. Aureo Almeida

    Passar valor para lightbox transparente do PagSeguro

    Apesar de ter resolvida a forma de passar os dados, como informei após realizar um exemplo simples com a proposta que passaste, estou com um problema de concatenação de aspas nas variáveis em tempo de execução. Fiz como sugeriste, criando as variáveis de sessão na página carrinho.php e passando para a página pagseguro.php. No exemplo simples ok, funcionou e passou os valores que atribui a ela de forma estática. Quando atribuo o valor a ela manualmente, entre aspas simples, ela funciona. Porém, quando atribuo valor em tempo de execução, não. EXEMPLIFICANDO FUNCIONA CORRETAMENTE A DEFINIÇÃO NA PÁGINA CARRINHO.PHP $ttcomprabrasil= ’50.00’; $_SESSION['valorTotal'] = $ttcomprabrasil; NÃO FUNCIONA NA PÁGINA CARRINHO.PHP $_SESSION['valorTotal'] = $ttcomprabrasil; A referida variável tem o valor da soma de outras duas: $ttcomprabrasil = $frete + $valor_total_venda; Testei e ela funciona e imprime corretamente os valores. CÓDIGO NA PÁGINA PAGSEGURO.PHP session_start(); $data['itemDescription1'] = $_SESSION['descricao']; $data['itemAmount1'] = $_SESSION['valorTotal']; $data['token'] =; $data['email'] =; $data['currency'] = 'BRL'; $data['itemId1'] = '1'; $data['itemQuantity1'] = '1'; $data['itemDescription1'] = "'".$_SESSION['descricao']."'"; $data['itemAmount1'] = "'".$_SESSION['valorTotal']."'";
  8. Aureo Almeida

    Passar valor para lightbox transparente do PagSeguro

    Felipe. Funcionou. Muito obrigado
  9. Aureo Almeida

    Passar valor para lightbox transparente do PagSeguro

    Obrigado pela orientação Felipe. O problema era um pouco diferente da compreensão que tiveste, mas tentei tua solução, pois poderia se aplicar, e infelizmente o lightbox do pag seguro não funcionou. Fica rodando. Na verdade, é na página do PagSeguro que eu tenho as seguintes variáveis. $data['token'] = 'Oculto'; $data['email'] = 'Oculto'; $data['currency'] = 'BRL'; $data['itemId1'] = '1'; $data['itemQuantity1'] = '1'; $data['itemDescription1'] = 'Produto de Teste'; $data['itemAmount1'] = '200.00'; Eu tenho uma sessão na página carrinho.php chamada provisoriamente de carrinho: $_SESSION['carrinho'] = array();. Ela funciona para armazenar os produtos. O que eu gostaria de passar para a página pagseguro.php são duas variáveis: uma com o valor total da compra no carrinho, e outra com a descrição do produto. A primeira é a variável $produto_nome e a segunda é a $ttcomprabrasil, definidas na página carrinho.php. $data['itemDescription1'] = $produto_nome; $data['itemAmount1'] = $ttcomprabrasil; Talvez fique mais claro o problema, que eu não tenha conseguido passar concretamente, pois trabalhei com o problema mais geral, e que eu ainda não consegui resolver.
  10. Estou tentando modificar um projeto de carrinho de compras cujo script peguei entre vários que está disponível na internet. Ele funciona bem, porém com uma determinada lógica: a quantidade de itens de um produto é aumentada conforme a quantidade de vezes que o cliente adicionar o produto. Ou seja, se ele for na página do produto para inseri-lo 3 vezes, ele aumenta a quantidade para 3. O problema é que no projeto que estou desenvolvendo os produtos possuem possibilidade de escolha de quantidade, pois podem ser vários e não dá para a pessoa ir e clicar 15 vezes nele. E não estou conseguindo mudar está lógica. O que eu gostaria é que quando o cliente selecionasse uma quantidade, e isso não é um problema, essa quantidade fosse recebida na página do carrinho junto com outras informações do produto puxado pela id dele no banco de dados. Este é o script básico: <?php $item_carrinho = 0; if(count($_SESSION['carrinho']) > 0){ foreach($_SESSION['carrinho'] as $id_produtos_carrinho => $quantidade_produto_carrinho){ $item_carrinho++; $query = "SELECT * FROM psd_produtos WHERE psd_produtos.prd_id = '".$id_produtos_carrinho."'"; $read_produto_carrinho = mysqli_query($conn, $query) or die(mysql_error()); if(mysqli_num_rows($read_produto_carrinho) > 0){ foreach($read_produto_carrinho as $read_produto_carrinho_view); $valor_total_produto_carrinho = $quantidade_produto_carrinho * $read_produto_carrinho_view['prd_valor']; $valor_total_venda += $valor_total_produto_carrinho; } echo ' <tr> <td class="car-item">'.$item_carrinho.'</td> <td class="car-nome">'.$read_produto_carrinho_view['prd_nome'].'</td> <td class="car-valor">'.number_format($read_produto_carrinho_view['prd_valor'], 2, ',', '.').'</td> <td class="car-qtd">'.$quantidade_produto_carrinho.'</td> <td class="car-total">'.number_format($valor_total_produto_carrinho, 2, ',', '.').'</td> <td class="car-opcao"><a href="deletar-prod1.php?id='.$id_produtos_carrinho.'" class="opcao">Excluir<a/></td> </tr> '; } } ?>
  11. Aureo Almeida

    Passar valor para lightbox transparente do PagSeguro

    Ajudou sim Felipe, com a sugestão de estrutura da tabela para controlar a ordem dos pedidos. Porém, olhando creio que eu não fui claro no pedido de informação, pois não mencionei que o que eu não estou conseguindo fazer é passar as referidas variaveis do PHP, $ttcompra e $ttitens, da página onde está o carrinho, chamada carrinho.php, para a página onde está o script do PagSeguro, chamada pagseguro.php. O carrinho funciona, o script do Pag Seguro com valores estáticos e de teste funciona, mas não consigo fazer a passagem acima, de um arquivo para o outro.
  12. Aureo Almeida

    problema com variavel indefinida

    Estou há varias horas tentando descobrir o problema com a msg " Undefined variable: valor_total_venda", que recebo em relação a variavel $valor_total_venda do código abaixo e não estou descobrindo o problema. O mesmo código na página meucarrinho.php funciona perfeitamente. O que pode estar ocorrendo? if(count($_SESSION['carrinho']) == 0){ echo "<script>alert('Não existe produtos no carinho')<script/>"; echo "<script>window.location = 'meucarrinho.php'<script/>"; }else{ $insert_pedido = "INSERT INTO psd_pedidos(pedido_data, pedido_data_hora, pedido_valor, pedido_status) VALUES('".date('Y-m-d')."', '".date('Y-m-d H:i:s')."', '0', '0')"; mysqli_query($conn, $insert_pedido); $read_ultimo_pedido = mysqli_query($conn, "SELECT pedido_id FROM psd_pedidos ORDER BY pedido_id DESC LIMIT 1"); if(mysqli_num_rows($read_ultimo_pedido) > 0){ foreach($read_ultimo_pedido as $read_ultimo_pedido_view); } foreach($_SESSION['carrinho'] as $id_produto => $qtd_produto){ $read_produto_carrinho = mysqli_query($conn, "SELECT prd_nome, prd_valor FROM psd_produtos WHERE prd_id = '".$id_produto."'"); if(mysqli_num_rows($read_produto_carrinho) > 0){ foreach($read_produto_carrinho as $read_produto_carrinho_view); $valor_total_produto_carrinho = $qtd_produto * $read_produto_carrinho_view['prd_valor']; $valor_total_venda += $valor_total_produto_carrinho; }
  13. Aureo Almeida

    Variável de array não recebe os valores da array $_POST

    Estou tentando receber os valores da array $_POST numa outra variável array e estou com dificuldade. Meu código é o seguinte: session_start(); if (isset($_SESSION['carrinho'])){ $nmproduto = $_POST['nome']; $qtda = $_POST['quantidade']; $preco = $_POST['valor']; $carcompras [] = array( 'nome' => $nmproduto, 'quantidade' => $qtda, 'valor' => $preco, ); } if (isset ($carcompras)) $_SESSION ['carrinho'] = $carcompras; ?> Na página que recebe a $_POST os dados chegam, conforme mostra o var_dump($_POST): array(5) { ["prd_id"]=> string(1) "3" ["nome"]=> string(19) "GEL " ["valor"]=> string(5) "14.90" ["quantidade"]=> string(1) "1" ["sabor"]=> string(7) "Morango" } Ao aplicar o var_dump($carcompras) retorna Notice: Undefined variable: carcompras. Onde está meu erro na construção da $carcompras?
  14. Aureo Almeida

    Variável de array não recebe os valores da array $_POST

    Resolveu o problema. Obrigado
  15. Aureo Almeida

    [RESOLVIDO] Fazer tag img vazia não aparecer

    Possuo um código que me traz imagens com nomes armazenados no banco de dados, junto com um script jquery em que ao se clicar em miniaturas das imagens menores ela preenche uma div com a imagem aparecendo maior, funcionando perfeitamente bem. Porém, quando não há nome de imagem armazenado no banco de dados (há obrigatoriedade de inserir foto somente no campo correspondente a variável $imagem1) a tag img vazia dos demais campos continua aparecendo. Procurei soluções para que esta tag não apareça, inclusive aqui no fórum, que fossem aplicáveis ao código que desenvolvi e nenhuma funcionou. Esse é o código da página: $caminho = "../app/_lib/file/imgimg_prod/"; while($row = $stmt->fetch(PDO::FETCH_OBJ)){ $imagem1 = $caminho . $row->prd_foto1; $imagem2 = $caminho . $row->prd_foto2; $imagem3 = $caminho . $row->prd_foto3; echo" <div class='main-image'> <div><img id='zoom_01' src='$imagem1' alt='Placeholder' data-zoom-image='$imagem1' class='custom'></div> </div> "; echo" <div class='thumbnails'> <a href='$imagem1'><img src='$imagem1'></a> <a href='$imagem2'><img src='$imagem2'></a> <a href='$imagem3'><img src='$imagem3'></a> </div> "; } Alguém tem alguma possibilidade de solução?
  16. Aureo Almeida

    [RESOLVIDO] Fazer tag img vazia não aparecer

    Entendeu sim e tua solução deu certo. Na verdade, as soluções que experimentei não fazia o echo separado da div. Agradeço
  17. Aureo Almeida

    Select de três tabelas com chave estrangeira

    Ocorre que me retorna a informação de "Erro na execução do comando SQL" no SQL Builder do Scriptcase, onde faço testes de códigos SQL: Seguindo tua sugestão de adicionar outros RIGHT OUTER JOIN, o código ficaria assim, postando somente a ultima parte do SQL com a adição da tabela : psd_cores.crs_id, psd_cores.prd_id, psd_cores.crs_cores, psd_cores.crs_quantidade psd_sabores.crs_id, psd_sabores.prd_id, psd_sabores.crs_cores, psd_sabores.crs_quantidade FROM psd_produtos RIGHT OUTER JOIN psd_cores ON psd_produtos.prd_id = psd_cores.prd_id psd_produtos RIGHT OUTER JOIN psd_sabores ON psd_produtos.prd_id = psd_sabores.prd_id WHERE (psd_produtos.prd_id = '5') Essa solução eu havia tentando e retornado a referida mensagem de erro.
  18. Aureo Almeida

    Select de três tabelas com chave estrangeira

    Estou desenvolvendo uma consulta num BD do MYSQL, em que consegui sem problemas listar as características de produtos armazenadas numa tabela com chave estrangeira da tabela produtos. Porém, não estou conseguindo incluir neste Select uma terceira tabela. O SQL da consulta entre duas tabelas que está funcionado é o seguinte: SELECT psd_produtos.prd_id, psd_produtos.prd_codigo, psd_produtos.ctg_id, psd_produtos.sct_id, psd_produtos.prd_nome, psd_produtos.prd_detalhe, psd_produtos.prd_descricao, psd_produtos.prd_valor, psd_produtos.prd_foto1, psd_produtos.prd_foto2, psd_produtos.prd_foto3, psd_produtos.prd_condicoes, psd_produtos.prd_itens, psd_produtos.prd_estoque, psd_produtos.prd_tmpespera, psd_cores.crs_id, psd_cores.prd_id, psd_cores.crs_cores, psd_cores.crs_quantidade FROM psd_produtos RIGHT OUTER JOIN psd_cores ON psd_produtos.prd_id = psd_cores.prd_id WHERE (psd_produtos.prd_id = '5') Não estou conseguindo adicionar a terceira tabela, que assim como a segunda, do código acima, tem como chave estrangeira o campo psd_produtos.prd_id. Como adiciono a terceira tabela, que também terá como clausula where o valor que for atribuído ao campo psd_produtos.prd_id através de uma variável do PHP, que no exemplo acima está com um valor de teste? A tabela e seus campos que desejo inserir são os seguintes: Tabela: psd_sabores, Campos psd_sabores.sbr_id, psd_sabores.prd_id, psd_sabores.sbr_sabor, psd_sabores.sbr_quantidade, Fiz vários testes e em todos eles não consegui meu objetivo, que é fazer uma select em que quando um determinado produto for selecionado (na clausula where), seja feita uma consulta em duas tabelas que guardam características indeterminadas e diferentes dele e traga o resultado para ser usado numa página.
  19. Aureo Almeida

    Problema com variável $_GET ao passar parâmetro para o SQL

    FUNCIONOU Gleyson. Seguirei tua orientação Michael. Aguadeço
  20. Aureo Almeida

    Problema com variável $_GET ao passar parâmetro para o SQL

    Eu possuo em uma página em que existe um menu, com categorias inseridas a partir de um banco de dados, e na mesma página uma listagem de produtos. A função deste menu é enviar para a clausula where do SQL que lista os produtos parâmetros que permitam filtro dos produtos. Faço isso com a variável $_GET, da seguinte forma: $sub_id = $_GET['sct_id']; Isso funciona certinho, porém o problema é que quando a página é carregada, a não ser que seja feita uma opção no menu para selecionar os produtos, a listagem deles volta vazia e com o seguinte erro: array(0) { } Notice: Undefined index: sct_id in D:\XAMPP\htdocs\projeto\arq\cosm.php on line 76 Tentei desenvolver as seguinte condições que mudassem o SQL, mas não consegui fazer dar certo: if(empty($sub_id = array(0))) $sql = "SELECT * FROM psd_produtos WHERE ctg_id = 1"; else { $sql = "SELECT * FROM psd_produtos WHERE ctg_id = 1 AND sct_id = '$sub_id'"; } Como fazer com que o SQL que orienta a consulta quando a página for carregada seja um, e quando passo parâmetro via GET seja outro?
  21. Problema em definir largura e disposição horizontal de tabelas com resultado de while Como iniciante em programação estou tendo problemas para estilizar uma tabela dentro de um script PHP. Possuo o seguinte script: <?php $sql = 'SELECT * FROM psd_produtos'; $stmt = $conn->query($sql); echo '<table>'; while($row = $stmt->fetch(PDO::FETCH_OBJ)){ echo " <td> <tr><h1>$row->prd_nome <br /></h1></tr> <tr><p>$row->prd_detalhe <br /></p></tr> <tr>$row->prd_valor <br /></tr> </td> "; } echo '</table>'; ?> Ele funciona perfeitamente, buscando e produzindo um loop das informações que preciso, porém, gostaria que o resultado me retornasse em tabelas que ficasse dispostas horizontalmente lado a lado, e imaginei colocar uma classe CSS que estabelecesse a largura da tabela em 400px com um float que me permitiria alinhar o resultado em “4 colunas”. Porém, essa classe não funciona dentro do script. Tentei echo '<table class="tabela-produto">'; e não funciona. A mesma classe, que estabelece uma largura para a tabela, aplicada a uma tabela fora do script funciona e isso tirou minha dúvida se este tópico seria sobre CSS/HTML ou PHP. Como posso fazer para obter meu objetivo com este script, alinhando horizontalmente o resultado do while em tabelas dispostas horizontalmente em 4 colunas?
  22. Oi Pessoal. Quero dizer que eu consegui resolver o problema que postei aqui com o seguinte código, adicionando ao echo que insere a tabela uma div no entorno: while($row = $stmt->fetch(PDO::FETCH_OBJ)){ $imagem = $caminho . $row->prd_foto1; echo" <div class='tabela-produtos'> <table border='0' cellspacing='5px'> <tbody> <tr class='tabela-produtos-td1'> <td><img src='$imagem'/></td> </tr> <tr class='tabela-produtos-td2'> <td><br/><br/><h1>$row->prd_nome</h1><br/></td> </tr> <tr class='tabela-produtos-td3'> <td><h2>R$$valor</h2><br/></td> </tr> <tr class='tabela-produtos-td4'> <td><p>$row->prd_detalhe</p><br/></td> </tr> <tr class='tabela-produtos-td5'> <td> <form> <input name='COMPRAR' type='button' class='align-center' id='COMPRAR' value='Ver Detalhes'> </form></td> </tr> </tbody> </table> </div> "; }
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.