2
respostas

Eu não entendi o porquê do array produtos ter funcionado...

Eu não entendi o porquê do array produtos ter funcionado para tirar os valores dos campos do formulário.

2 respostas

Oi Ana, tudo bom?

Acho que a parte do texto:

$produtos = array();

Foi um erro de digitação. Deveria ser $produto = array() já que nesse ponto estamos definindo os dados de um produto novo.

Porém, qual o problema quanto a este array ser usado para isolar os campos do formulário? Acho que não entendi muito bem sua pergunta =)

Aguardo retorno,

Abraço!

Desculpa, eu tava morta de sono quando escrevi isso. hehehehe... Mas então, esse é o código do arquivo produto-formulario.php

Tá vendo o array? O app tá funcionando redondo mesmo com o array tendo o nome de $produtos.

<?php
// Requere arquivos necessários
require_once "cabecalho.php";
require_once "conecta.php";
require_once "banco-categoria.php";
require_once "logica-usuario.php";

// Verifica se o usuário está logado
verificaUsuario();

$produtos = array("nome" => "", "descricao" => "", "preco" => "", "categoria_id" => "");
$usado = "";
// Seta categoria igual a função
$categorias = listaCategorias($conexao);

?>

<div class="container">
    <div class="row">
        <div class="col-md-12">
            <h1 class="display-4">Formulário de Produto</h1>
        </div>
            <div class="col-md-12">
                <form action="adiciona-produto.php" method="post">

                    <?php require_once "produto-formulario-base.php" ?>

                        <tr>
                            <td>
                                <button class="btn btn-primary" type="submit">Cadastrar</button>
                            </td>
                        </tr>
                    </table>

            </form>
        </div>
    </div>
</div>





<?php require_once "../rodape.php" ?>

Só que aqui no, produto-altera-formulario.php:

<?php

require_once "cabecalho.php";
require_once "conecta.php";
require_once "banco-categoria.php";
require_once "banco-produto.php";

$id = $_GET['id'];
$produto = buscaProduto($conexao, $id);
$categorias = listaCategorias($conexao);
// Se for usado, setar o botão checked = checked, se não, devolver ele vazio
$usado = $produto['usado'] ? "checked='checked'" : "";

?>

<div class="container">
    <div class="row">
        <div class="col-md-12">
            <h1 class="display-4">Alterar Produto</h1>
        </div>
            <div class="col-md-12">
                <form action="produto-altera.php" method="post">
                    <!-- Campo de id escondido -->
                    <input type="hidden" name="id" value="<?=$produto['id']?>" />

                        <?php require_once "produto-formulario-base.php" ?>

                        <tr>
                            <td>
                                <button class="btn btn-primary" type="submit">Alterar</button>
                            </td>
                        </tr>
                    </table>

            </form>
        </div>
    </div>
</div>





<?php require_once "rodape.php" ?>

Os valores dados aos inputs são dados a partir de $produto.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software