Ir para conteúdo
Ross Risso

[Resolvido] Inserir carrinho no mysql

Recommended Posts

Olá pessoal!

Estou com problemas para inserir as compras no banco de dados.

até aqui funciona, mas se tendo adicionar outros dados ele não aceita. Só permite adicionar $id e $qtd. Ainda tenho que adicionar o ID do pedido e o valor da mercadoria. Alguém poderia me ajudar?

    <?php
 
foreach($_SESSION['carrinho'] as $id => $qtd){
    
        $sql = "INSERT INTO tbldetped (MercDetPed, QuantDetPed) VALUES ('$id','$qtd')";
        $qr = mysqli_query($conn$sql);
    
    }
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que pretendo não é exatamente um carrinho de compras e sim controle de pedidos, pois sou vendedor e resolvi fazer um para me ajudar com as tarefas. 

 

 

 
<?php session_start();
include_once("conexao.php");
error_reporting(0); ?>
 
<?php
$pedidos = "SELECT id_ped FROM tblpedidos ORDER BY id_ped DESC LIMIT 1";
$dado = mysqli_query($conn,$pedidos);
while($dados = mysqli_fetch_array($dado)) {
$dados1 = $dados['id_ped'];
}
echo "Nº do Pedido:$dados1";
 
$_SESSION['pedidos'] = $dados1;
 
?>
 
<?php
 $nome = $_SESSION['nome'];
 if(empty($nome)){
  $_SESSION['nome1'] = "<p style='color:red;'>CAMPO OBRIGATÓRIO";
   header("location:pre_pedidos.php");
 }
 
  if(!isset($_SESSION['carrinho'])){ 
    $_SESSION['carrinho'] = array(); 
  
  }
 
  if(isset($_GET['acao'])){ 
    //ADICIONAR CARRINHO 
    if($_GET['acao'] == 'add'){ 
      $id = intval($_GET['id']); 
 
    if(!isset($_SESSION['carrinho'][$id])){ 
      $_SESSION['carrinho'][$id] = 1
      ; 
      } else { 
        $_SESSION['carrinho'][$id] += 1
      } 
    } //REMOVER CARRINHO 
 
    if($_GET['acao'] == 'del'){ 
      $id = intval($_GET['id']); 
      if(isset($_SESSION['carrinho'][$id])){ 
        unset($_SESSION['carrinho'][$id]); 
      } 
    } //ALTERAR QUANTIDADE 
    if($_GET['acao'] == 'up'){ 
      if(is_array($_POST['prod'])){ 
        foreach($_POST['prod'] as $id => $qtd){
          $id = intval($id);
          $qtd = intval($qtd);
          if(!empty($qtd) || $qtd <> 0){
            $_SESSION['carrinho'][$id] = $qtd;
          }else{
            unset($_SESSION['carrinho'][$id]);
          }
        }
      }
    }     
   } 
  ?>
 
<!DOCTYPE html>
    <html>
    <head>
    <script src="jquery-3.4.1.min.js"></script>
    <script src="jquery.mask.js"></script>
 
    <link rel="stylesheet" type="text/css" href="pedidos.css">
    <title>PEDIDOS</title>
 
    <script type="text/javascript">
 
  function NovaIndex()
  {
  location.href="http://localhost/pedidos/index.php"
  }
  
</script> 
 
<script type="text/javascript">
 
  function Novapre()
  {
  location.href="http://localhost/pedidos/pedidos1.php"
  }
  
</script> 
 
<script type="text/javascript">
 
  function Finalizar()
  {
  location.href="http://localhost/pedidos/Proc_pedidos.php"
  }
  
</script> 
 
<script type="text/javascript">
$("input, select""form"// busca input e select no form
.keypress(function(e){ // evento ao presionar uma tecla válida keypress
   
   var k = e.which || e.keyCode// pega o código do evento
   
   if(k == 13){ // se for ENTER
      e.preventDefault(); // cancela o submit
      $(this)
      .closest('tr'// seleciona a linha atual
      .next() // seleciona a próxima linha
      .find('input, select'// busca input ou select
      .first() // seleciona o primeiro que encontrar
      .focus(); // foca no elemento
   }
 
});
</script> 
 
</head>
<body>
 
<form action="?acao=up" method="post">
 
<div class="cap">
 
<?php
 
$_SESSION['idc'];
$idc=$_SESSION['idc'];
echo "Id:$idc" . "&nbsp;-&nbsp;";
 
$_SESSION['nome'];
$nomec=$_SESSION['nome'];
echo $nomec . "<br>";
 
?>
 
    <br><input type="button" class="myButton" value="&nbsp;&nbsp;Página Inicial&nbsp;&nbsp;" onClick="NovaIndex()"><br><br>
</div>
 
<div class="cap">
 
    <select class="sel" name="merc" onchange="location = this.value;">
                       
      <option>SELECIONE UMA MERCADORIA</option>
                              
      <?php      
            $sql =  "SELECT tblpedidos.id_ped, tblpedidos.ClientePed, tblpedidos.PedEnviado, tblmercadorias.id, tblmercadorias.Descricao, tblmercadorias.Referencia, tblmercadorias.Preco_caixa_a_vista
            FROM tblmercadorias LEFT JOIN tblpedidos ON id_ped = tblmercadorias.id WHERE bloq_merc = 'Desbloq.'";
            $qr = mysqli_query($conn$sql);
            while($ln = mysqli_fetch_assoc($qr)){ ?>
                  
                <option value="pedidos1.php?acao=add&id=<?php echo $ln['id'];?>"> <?php echo "<p>" . $ln['Descricao'. "&nbsp;&nbsp-&nbsp;&nbspReferência:&nbsp;&nbsp" . $ln['Referencia'. "</P>"?></option> <?php 
                }                                                                                 
      ?>           
    </select>
 
     <table class="cap" style="border-color: blue" border="1px">
      
     <thead>   
     <br><tr>
        <th width="50">Id</th>
        <th width="50">Referencia</th>
        <th width="244">Produto</th>
        <th width="50">Quantidade Cx</th>
        <th width="89">Pre&ccedil;o</th>
        <th width="100">SubTotal</th>
        <th width="100">Acão:</th>
      </tr>
      </thead>   
        
<tfoot>
<tbody>  
<?php
     
  if(count($_SESSION['carrinho']) == 0){
    echo '
      <tr>
        <td class="colspan" colspan="7">Nenhuma mercadoria selecionada.</td>
       </tr>
  ';
  } else {
               
    $total = 0;
      foreach($_SESSION['carrinho'] as $id => $qtd){
         $sql = "SELECT *  FROM tblmercadorias LEFT JOIN tblpedidos ON id_ped = $dados1 WHERE id= '$id'";
         $qr = mysqli_query($conn$sql);
         $ln = mysqli_fetch_assoc($qr);
         $last_id = mysqli_insert_id($conn);
         $idmerc = $ln['id'];
         $id_ped = $ln['id_ped'];
         $Referencia = $ln['Referencia'];
         $nomemerc = $ln['Descricao'] ;
         $preco = number_format($ln['Preco_caixa_a_vista'], 2',''.');
         $sub = number_format($ln['Preco_caixa_a_vista'] * $qtd2',''.');
         $total += $ln['Preco_caixa_a_vista'] * $qtd;
          echo '
    <tr> 
        <td style="text-align: center">'.$id.'</td>
        <td style="text-align: center">'.$Referencia.'</td>
        <td style="text-align: center">'.$nomemerc.'</td>
        <td style="text-align: center"><input type="text" style="text-align: center" class="borda" autofocus required size="3" name="prod['.$id.']" value="'.$qtd.'" onfocus="this.selectionStart = this.selectionEnd = 500;" /></td>
        <td style="text-align: center" >R$ '.$preco.'</td>
        <td style="text-align: center">R$ '.$sub.'</td>
        <td style="text-align: center"><a href="?acao=del&id='.$id.'">EXCLUIR</a></td>
                            </tr>';
        }
          $total = number_format($total2',''.');
            echo '<tr>                         
              <td colspan="6" class="colspan">TOTAL DO PEDIDO</td>
               <td class="Total">R$ '.$total.'</td>
              </tr>';
  }
?>
</tbody>
</form>
</table><br>
 
  <td colspan="7"><input type="submit" class="myButton1" value="ATUALIZAR" onclick='Novapre()'/></td><br>
  <br/><input type="submit" class="myButton2" value='Finalizar' onclick='Finalizar()'/><br>
  <a href="Proc_pedidos2.php">Finalizar Pedido</a>
 
  </div>            
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";
 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
 
--
-- Database: `cidades`
--
CREATE DATABASE IF NOT EXISTS `cidades` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `cidades`;
--
-- Database: `pedidos`
--
CREATE DATABASE IF NOT EXISTS `pedidos` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `pedidos`;
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `tblclientes`
--
 
DROP TABLE IF EXISTS `tblclientes`;
CREATE TABLE IF NOT EXISTS `tblclientes` (
  `id` int(11NOT NULL AUTO_INCREMENT,
  `nome` varchar(40NOT NULL,
  `RZ` varchar(50) DEFAULT NULL,
  `Ender` varchar(50) DEFAULT NULL,
  `Complemento` varchar(30) DEFAULT NULL,
  `NumLog` varchar(10) DEFAULT NULL,
  `Ob` varchar(20) DEFAULT NULL,
  `Bairro` varchar(50) DEFAULT NULL,
  `Cidade` varchar(50) DEFAULT NULL,
  `CEP` varchar(10) DEFAULT NULL,
  `Estado` varchar(2) DEFAULT NULL,
  `TelCel1` varchar(20) DEFAULT NULL,
  `TelCel2` varchar(20) DEFAULT NULL,
  `TelFixo` varchar(20) DEFAULT NULL,
  `RG` varchar(15) DEFAULT NULL,
  `CPF` varchar(40) DEFAULT NULL,
  `CNPJ` varchar(30) DEFAULT NULL,
  `EmailH` varchar(50) DEFAULT NULL,
  `Obs` varchar(150) DEFAULT NULL,
  `DataCadast` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `modified` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `Ocor` varchar(20) DEFAULT NULL,
  `DescOcor` varchar(255) DEFAULT NULL,
  `Bloq` varchar(20) DEFAULT 'DESBLOQUEADO',
  `bloqueado` varchar(20) DEFAULT 'DESBLOQUEADO',
  PRIMARY KEY (`id`),
  UNIQUE KEY `Cliente` (`nome`)
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf8;
 
--
-- Extraindo dados da tabela `tblclientes`
--
 
INSERT INTO `tblclientes` (`id``nome``RZ``Ender``Complemento``NumLog``Ob``Bairro``Cidade``CEP``Estado``TelCel1``TelCel2``TelFixo``RG``CPF``CNPJ``EmailH``Obs``DataCadast``modified``Ocor``DescOcor``Bloq``bloqueado`VALUES
(33'Rosalvo Petrillo Risso''RosalvoPetrilloRissoME''Rua Alexandre Risso''casa''12''''Duas Pedras''Nova Friburgo''28.630-170''RJ''(22) 9-9961-0301''(22) 9-9961-0302''(22) 2528-9011''10196280-1''076.975.127-00''00.000.000/0000-00''rosalvopetrillorisso@gmail.com''''2020-02-19 14:13:54''2020-02-27 00:46:32''''''DESBLOQUEADO'NULL),
(34'Josy da Silva Storck''JosyME''Rua Alexandre Risso''casa''12''''Duas Pedras''Nova Friburgo''28.630-170''RJ''(22) 9-9965-4789''(22) 8-8888-8888''(22) 2528-9011''1212121212''212.124.545-12''21.212.454/5454-54''josystorck@gmail.com''''2020-02-19 14:21:10''2020-02-27 00:46:23''''''DESBLOQUEADO'NULL),
(35'Alberto''''''''''''''''''''''''''''''''''''2020-03-01 21:26:59''2020-03-05 18:15:44''''''DESBLOQUEADO''DESBLOQUEADO');
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `tbldetped`
--
 
DROP TABLE IF EXISTS `tbldetped`;
CREATE TABLE IF NOT EXISTS `tbldetped` (
  `id_peddt` int(11NOT NULL AUTO_INCREMENT,
  `reg_ped` int(11) DEFAULT NULL,
  `MercDetPed` int(11) DEFAULT NULL,
  `preco_vista` float DEFAULT NULL,
  `Preco_prazo` float DEFAULT '0',
  `QuantDetPed` float DEFAULT NULL,
  `subpreco` float DEFAULT NULL,
  KEY `MercDetPed` (`MercDetPed`),
  KEY `CodPed` (`id_peddt`),
  KEY `reg_ped` (`reg_ped`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
 
--
-- Extraindo dados da tabela `tbldetped`
--
 
INSERT INTO `tbldetped` (`id_peddt``reg_ped``MercDetPed``preco_vista``Preco_prazo``QuantDetPed``subpreco`VALUES
(1NULL14NULL01NULL);
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `tble-mail`
--
 
DROP TABLE IF EXISTS `tble-mail`;
CREATE TABLE IF NOT EXISTS `tble-mail` (
  `E-mail` varchar(255) DEFAULT NULL,
  `E-mailFixo` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `tblmercadorias`
--
 
DROP TABLE IF EXISTS `tblmercadorias`;
CREATE TABLE IF NOT EXISTS `tblmercadorias` (
  `id` int(11NOT NULL AUTO_INCREMENT,
  `Estoque` int(11) DEFAULT NULL,
  `Referencia` varchar(20) DEFAULT NULL,
  `Descricao` varchar(50) DEFAULT NULL,
  `Caixa` varchar(10) DEFAULT NULL,
  `Preco_unit_a_vista` decimal(19,2) DEFAULT '0.00',
  `Preco_caixa_a_vista` decimal(19,2) DEFAULT '0.00',
  `Preco_unit_a_prazo` decimal(19,2) DEFAULT '0.00',
  `Preco_caixa_a_prazo` decimal(19,2) DEFAULT '0.00',
  `modified` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `Excluir` tinyint(1) DEFAULT '0',
  `DataCadastMerc` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `bloq_merc` varchar(20) DEFAULT 'Desbloq.',
  PRIMARY KEY (`id`),
  UNIQUE KEY `NºRegMerc` (`id`),
  KEY `Descriçao` (`Descricao`),
  KEY `Estoque` (`Estoque`),
  KEY `Referencia` (`Referencia`)
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8;
 
--
-- Extraindo dados da tabela `tblmercadorias`
--
 
INSERT INTO `tblmercadorias` (`id``Estoque``Referencia``Descricao``Caixa``Preco_unit_a_vista``Preco_caixa_a_vista``Preco_unit_a_prazo``Preco_caixa_a_prazo``modified``Excluir``DataCadastMerc``bloq_merc`VALUES
(10NULL'001''Prato Transparente''10''5.00''50.00''6.00''60.00''2020-02-27 20:30:15'0'2020-02-19 18:31:53''Desbloq.'),
(11NULL'002''Panela de Pressão 4 lt''5''50.00''250.00''60.00''300.00''2020-02-27 20:30:11'0'2020-02-19 19:02:13''Desbloq.'),
(12NULL'003''xícaras''10''3.00''30.00''3.50''35.00''2020-02-27 20:30:23'0'2020-02-23 15:32:14''Desbloq.'),
(13NULL'004''Colher de prata''10''5.00''50.00''6.00''60.00''2020-03-04 22:05:31'0'2020-02-24 01:50:38''Desbloq.'),
(14NULL'005''Jogo de Talheres Jacomil''1''100.00''100.00''120.00''120.00''2020-02-27 20:30:04'0'2020-02-26 14:57:12''Desbloq.'),
(15NULL'006''Toalha de mesa''10''50.00''500.00''55.00''550.00''2020-02-27 20:30:19'0'2020-02-26 15:17:45''Desbloq.'),
(16NULL'007''Guardanapo''100''1.00''100.00''1.50''150.00''2020-02-27 20:30:01'0'2020-02-26 15:19:07''Desbloq.'),
(17NULL'AAA301''Frigideira''10''15.00''150.00''18.00''180.00''2020-02-27 23:11:40'0'2020-02-27 23:11:40''Desbloq.'),
(18NULL'008''Prato Lizo''10''5.00''50.00''6.00''60.00''2020-03-06 12:43:10'0'2020-03-06 12:43:10''Desbloq.'),
(19NULL'010''Prato coloridos''10''5.25''52.50''7.10''71.00''2020-03-06 19:04:29'0'2020-03-06 19:04:29''Desbloq.');
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `tblpedidos`
--
 
DROP TABLE IF EXISTS `tblpedidos`;
CREATE TABLE IF NOT EXISTS `tblpedidos` (
  `id_ped` int(11NOT NULL AUTO_INCREMENT,
  `TotalPed` decimal(19,4) DEFAULT '0.0000',
  `ClientePed` int(11) DEFAULT NULL,
  `DataPed` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `FormPag` varchar(255) DEFAULT NULL,
  `Prazo` varchar(255) DEFAULT NULL,
  `PagoPedido` tinyint(1) DEFAULT '0',
  `OcorPed` tinyint(1) DEFAULT '0',
  `ObsPed` varchar(255) DEFAULT NULL,
  `PedEnviado` varchar(10) DEFAULT NULL,
  `PedEnviado2` tinyint(1) DEFAULT '0',
  `ContarEM` tinyint(1) DEFAULT '0',
  `PedImed` tinyint(1) DEFAULT '0',
  PRIMARY KEY (`id_ped`)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8;
 
--
-- Extraindo dados da tabela `tblpedidos`
--
 
INSERT INTO `tblpedidos` (`id_ped``TotalPed``ClientePed``DataPed``FormPag``Prazo``PagoPedido``OcorPed``ObsPed``PedEnviado``PedEnviado2``ContarEM``PedImed`VALUES
(15'0.0000'33'2020-03-13 15:04:01'''''00''NULL000),
(16'0.0000'34'2020-03-13 15:05:48'''''00''NULL000),
(17'0.0000'34'2020-03-13 15:08:41'''''00''NULL000),
(18'0.0000'33'2020-03-13 15:12:14'''''00''NULL000),
(19'0.0000'33'2020-03-13 15:17:25'''''00''NULL000),
(20'0.0000'33'2020-03-13 15:21:05'''''00''NULL000),
(21'0.0000'34'2020-03-13 15:22:23'''''00''NULL000),
(22'0.0000'33'2020-03-13 15:23:09'''''00''NULL000),
(23'0.0000'34'2020-03-13 15:26:25'''''00''NULL000),
(24'0.0000'33'2020-03-13 15:28:58'''''00''NULL000);
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `usuarios`
--
 
DROP TABLE IF EXISTS `usuarios`;
CREATE TABLE IF NOT EXISTS `usuarios` (
  `id` int(11NOT NULL AUTO_INCREMENT,
  `nome` varchar(40NOT NULL,
  `email` varchar(40NOT NULL,
  `created` datetime NOT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
-- --------------------------------------------------------
 
--
-- Estrutura da tabela `vendas`
--
 
DROP TABLE IF EXISTS `vendas`;
CREATE TABLE IF NOT EXISTS `vendas` (
  `id_vendas` int(11NOT NULL AUTO_INCREMENT,
  `id_pedv` varchar(11) DEFAULT NULL,
  `id_mercv` int(11) DEFAULT NULL,
  `quant_vendas` float DEFAULT NULL,
  `preco_vendas` float DEFAULT NULL,
  `total_vendas` float DEFAULT NULL,
  PRIMARY KEY (`id_vendas`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
 
--
-- Extraindo dados da tabela `vendas`
--
 
INSERT INTO `vendas` (`id_vendas``id_pedv``id_mercv``quant_vendas``preco_vendas``total_vendas`VALUES
(5''101NULLNULL),
(6''145NULLNULL),
(7''171NULLNULL);
 
--
-- Constraints for dumped tables
--
 
--
-- Limitadores para a tabela `tbldetped`
--
ALTER TABLE `tbldetped`
  ADD CONSTRAINT `tbldetped_ibfk_1` FOREIGN KEY (`reg_ped`REFERENCES `tblpedidos` (`id_ped`);
COMMIT;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido, agradeço a atenção de todos:

<?php
session_start();
include_once("conexao.php");
 
$pedidos = "SELECT id_ped FROM tblpedidos ORDER BY id_ped DESC LIMIT 1";
$dado = mysqli_query($conn,$pedidos);
while($dados = mysqli_fetch_array($dado)) {
$dados1 = $dados['id_ped'];
}
echo "Nº do Pedido:$dados1";


 
foreach ($_SESSION['carrinho'] as $id => $qtd) {
 
    $merc = "SELECT Preco_caixa_a_vista FROM tblmercadorias WHERE id = $id";
    $dado = mysqli_query($conn,$merc);
    while($preco = mysqli_fetch_array($dado)) {
    $id1 = $preco['id_ped'];
    $preco1 = $preco['Preco_caixa_a_vista'];
    }
    $inserir = "INSERT INTO tbldetped (reg_ped, MercDetPed, preco_vista, QuantDetPed) VALUES ('$dados1','$id','$preco1','$qtd')";
    mysqli_query($conn$inserir) or die(mysqli_error($conn));

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Alkindar33
      Ultimamente tenho ficado em dúvida sobre o futuro das linguagens em relação a mercado de trabalho, eu trabalho atualmente com NodeJS mas sinto que a linguagem está se reproduzindo como coelho em termos de desenvolvedores aprendendo ela e por causa da lei de oferta do mercado tende a se pagar menos e etc e não estou muito contente com a linguagem em si. Mas tenho dúvida de qual linguagem escolher para conseguir melhores salários e qual deve crescer mais a longo prazo. Linguagens que eu vi para Web: Go, Elixir, Ruby e Rust.
      Alguém tem alguma ideia de qual pode ser uma boa linguagem para focar o aprendizado?
    • Por dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
    • Por dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
    • Por dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
    • Por mikuzuhara
      Estes são os arquivos principais do projeto em ruby on rails:
       
      routes.rb:
       
      Rails.application.routes.draw do root to: 'recipes#index' resources :recipes resources :recipe_types end  
      recipe_type.rb:
       
      class RecipeType < ApplicationRecord has_many :recipes end recipe.rb:
       
      class Recipe < ApplicationRecord validates :title, :recipe_type, :cuisine, :difficulty, :cook_time, :ingredients, :cook_method, presence: true belongs_to :recipe_type def cook_time_min "#{cook_time} minutos" end end  
      create_recipes.rb:
       
      class CreateRecipes < ActiveRecord::Migration[5.2] create_table :recipe_types do |t| t.string :name t.timestamps end def change create_table :recipes do |t| t.string :title t.string :recipe_type t.string :cuisine t.string :difficulty t.integer :cook_time t.belongs_to :recipe_type t.timestamps end end end  
      create_recipe_type.rb:
       
      class CreateRecipeTypes < ActiveRecord::Migration[5.2] def change create_table :recipe_types do |t| t.string :name t.timestamps end create_table :recipes do |t| t.string :title t.string :recipe_type t.string :cuisine t.string :difficulty t.integer :cook_time t.belongs_to :recipe_type t.datetime :published_at t.timestamps end end end recipes_controller.rb:
       
      class RecipesController < ApplicationController def index @recipes = Recipe.all end def show @recipe = Recipe.find(params[:id]) end def new @recipe = Recipe.new end def create @recipe = Recipe.new(recipe_params) if @recipe.save redirect_to @recipe else flash[:alert] = 'Você deve informar todos os dados da receita' render :new end end def edit @recipe = Recipe.find(params[:id]) end def update @recipe = Recipe.find(params[:id]) if @recipe.update(recipe_params) redirect_to @recipe else flash[:alert] = 'Você deve informar todos os dados da receita' render :edit end end private def recipe_params params.require(:recipe).permit(:title, :recipe_type, :cuisine, :difficulty, :cook_time, :ingredients, :cook_method) end end  
      index.html.erb:
       
      <h1>CookBook</h1> <p>Bem-vindo ao maior livro de receitas online</p> <%= link_to 'Enviar uma receita', new_recipe_path %> <% @recipes.each do |recipe| %> <h1><%= link_to recipe.title, recipe %></h1> <ul> <li><%= recipe.recipe_type %></li> <li><%= recipe.cuisine %></li> <li><%= recipe.difficulty %></li> <li><%= recipe.cook_time_min %></li> </ul> <% end %>  
      Passo o seguinte comando rspec especificamente em visitor_visit_homepage_spec.rb linha 11:
       
      :~/workspace/cookbook_parte7$ rspec ./spec/features/visitor_visit_homepage_spec.rb:11 Run options: include {:locations=>{"./spec/features/visitor_visit_homepage_spec.rb"=>[11]}} Visitor visit homepage and view recipe (FAILED - 1) Failures: 1) Visitor visit homepage and view recipe Failure/Error: recipe = Recipe.create(title: 'Bolo de cenoura', difficulty: 'Médio', recipe_type: recipe_type, cuisine: 'Brasileira', cook_time: 50, ingredients: 'Farinha, açucar, cenoura', cook_method: 'Cozinhe a cenoura, corte em pedaços pequenos, misture com o restante dos ingredientes') ActiveModel::MissingAttributeError: can't write unknown attribute `recipe_type_id` # ./spec/features/visitor_visit_homepage_spec.rb:14:in `block (2 levels) in <top (required)>' Finished in 0.04808 seconds (files took 1.72 seconds to load) 1 example, 1 failure Failed examples: rspec ./spec/features/visitor_visit_homepage_spec.rb:11 # Visitor visit homepage and view recipe   E depois de fazer as mudanças nos arquivos recipe.rb e create_recipe.rb, executei o seguinte comando novamente:
      $ rails db:migrate RAILS_ENV=test
       
      Ao baixar o repositório na máquina, dei os seguintes comandos:
       
      $ rails generate migration RemoveRecipe_typeToRecipe recipe_type:string
      $ rails db:migrate RAILSENV=test
      $ rails generate model recipe_type name:string
      $ rails db:migrate RAILS_ENV=test
       
      Modifiquei os arquivos recipetype.rb e createrecipe_type.rb conforme mencionado acima e passei o mesmo rails db:migrate mencionado.
       
      Não estou entendendo o por que do erro, os relacionamentos entre as tabelas não estão feitos?
       
      Estou partipando do processo seletivo da Locaweb, e faltam 4 desafios para concluir a entrega dos desafios e o prazo vai até 28/10/2019.
       
      Aguardo por um comentário, dica ou sugestão.
       
      Obrigado,
       
      Marcelino
       
×

Informação importante

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