['id' => 'prod_1', 'categoria' => 'caminhos', 'titulo' => 'Caminho de Mesa Rosas', 'preco' => '120.00', 'imagem' => ''], 'prod_2' => ['id' => 'prod_2', 'categoria' => 'toalhas', 'titulo' => 'Toalha Lavabo Bordada', 'preco' => '45.00', 'imagem' => ''], 'prod_3' => ['id' => 'prod_3', 'categoria' => 'quadros', 'titulo' => 'Quadro Bastidor Floral', 'preco' => '85.00', 'imagem' => ''], 'prod_4' => ['id' => 'prod_4', 'categoria' => 'toalhas-mesa', 'titulo' => 'Toalha de Mesa Renda', 'preco' => '210.00', 'imagem' => ''] ]; file_put_contents($ficheiro_bd, json_encode($produtos)); } // Processamento de Ações via AJAX if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['acao'])) { header('Content-Type: application/json'); // 1. Criar novo produto dinamicamente if ($_POST['acao'] === 'criar_produto' && isset($_POST['categoria'])) { $novo_id = 'prod_' . uniqid(); $cat = $_POST['categoria']; $produtos[$novo_id] = [ 'id' => $novo_id, 'categoria' => $cat, 'titulo' => 'Novo Bordado ' . ucfirst($cat), 'preco' => '90.00', 'imagem' => '' ]; file_put_contents($ficheiro_bd, json_encode($produtos)); echo json_encode(['sucesso' => true, 'id' => $novo_id]); exit; } // 2. Salvar/Alterar Imagem e dados no Servidor if ($_POST['acao'] === 'salvar' && isset($_POST['id_produto'])) { $id = $_POST['id_produto']; if (isset($produtos[$id])) { if (isset($_POST['titulo'])) $produtos[$id]['titulo'] = $_POST['titulo']; if (isset($_POST['preco'])) $produtos[$id]['preco'] = str_replace(',', '.', $_POST['preco']); if (isset($_FILES['imagem'])) { $ext = pathinfo($_FILES['imagem']['name'], PATHINFO_EXTENSION); $nome_ficheiro = $pasta_uploads . $id . '_' . time() . '.' . $ext; if (!empty($produtos[$id]['imagem']) && file_exists($produtos[$id]['imagem'])) { unlink($produtos[$id]['imagem']); } if (move_uploaded_file($_FILES['imagem']['tmp_name'], $nome_ficheiro)) { $produtos[$id]['imagem'] = $nome_ficheiro; } } file_put_contents($ficheiro_bd, json_encode($produtos)); echo json_encode(['sucesso' => true, 'url' => $produtos[$id]['imagem']]); } else { echo json_encode(['sucesso' => false, 'erro' => 'Produto não encontrado.']); } exit; } // 3. Excluir Produto do Servidor if ($_POST['acao'] === 'excluir' && isset($_POST['id_produto'])) { $id = $_POST['id_produto']; if (isset($produtos[$id])) { if (!empty($produtos[$id]['imagem']) && file_exists($produtos[$id]['imagem'])) { unlink($produtos[$id]['imagem']); } unset($produtos[$id]); file_put_contents($ficheiro_bd, json_encode($produtos)); echo json_encode(['sucesso' => true]); } exit; } } ?> Ponto Cruz Online – Loja de Bordados Artesanais

Peças e Acervos Exclusivos

<?php echo htmlspecialchars($prod['titulo']); ?>
Sem imagem (Botão direito para incluir)

R$