Suporte » Ajustando o WordPress » Como conectar e cadastrar dados no banco do WordPress?

  • Resolvido gtw7375

    (@gtw7375)


    No meu site, há uma seção chamada “Minha Prancha Ideal”.

    É um formulário onde o usuário irá inserir seus dados e haverá uma mensagem de retorno com o tipo de prancha ideal para a pessoa.

    Primeira etapa, fazer o formulário: Feito;

    Agora eu preciso me conectar e cadastrar os dados no banco. Criei uma tabela no banco do WordPress chamada “minhaprancha”. Porém, não estou conseguindo cadastrar os dados nela :confused:

    O código de conexão e cadastro está assim:

    <?php
    global $wpdb;
    
      $nome = "";
      $email = "";
      $estilo = "";
      $experiencia = "";
      $altura = "";
      $peso = "";
    
      //VÁRIÁVEIS
      if(!empty($_POST)){
         $nome = $_POST['nome'];
         $email = $_POST['email'];
         $estilo = $_POST['estilo'];
         $experiencia = $_POST['experiencia'];
         $altura = $_POST['altura'];
         $peso = $_POST['peso'];
    
         cadastrar($nome,$email,$estilo,$experiencia,$altura,$peso);
         calcularIMC($estilo,$experiencia,$altura,$peso);
    
      }
    
      function cadastrar($nome,$email,$estilo,$experiencia,$altura,$peso){          //INSERE OS DADOS NO BANCO
          try{
    
                 $wpdb->insert( "INSERT INTO aa_minhaprancha("."nome, email, estilo, experiencia, altura, peso) VALUES (". ":nome', ':email', ':estilo', ':experiencia', ':altura', ':peso')");
    
              if($wpdb->rowCount() > 0)
                  return true;
              else
                  return false;
    
          }catch(PDOException $e){
             echo "Erro ao incluir na tabela categoria ".$e->getMessage();
          }
       }
    ?>
Visualizando 1 resposta (de um total de 1)
  • Criador do tópico gtw7375

    (@gtw7375)

    Para inserir os dados necessariamente eu preciso utilizar a $wpdb e o ->insert(funções próprias do WordPress)?

    Como o banco do WP é um banco como qualquer outro parti da lógica que também posso fazer a conexão de uma forma direta:

    <?php
        /*CONEXAO COM O BANCO DE DADOS*/
        define('DB_NAME', 'meubanco');
        define('DB_USER', 'meuusuario');
        define('DB_PASSWORD', 'minhasenha');
        define('DB_HOST', 'localhost');
        define('DB_CHARSET', 'utf8mb4');
        define('DB_COLLATE', '');
    
        function conectar(){
    
            $dsn = "mysql:host=".DB_HOST.";dbname=".DB_NAME."";
    
            try{
                $conectar = new PDO($dsn, DB_USER, DB_PASSWORD);
                $conectar->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            }catch(PDOException $e)
            {
               echo "Erro ao conectar ao banco". $e->getMessage();
            }
            return $conectar;
        }

    e no código de cadastro, eu troquei a $wpdb por uma variável qualquer. Nomeei-a de $insercao.

    Está conectando e cadastrando perfeitamente. Agora, tem algum problema em fazer essa conexão direta ou eu preciso me conectar (inserir, consultar e etc) utilizando a $wpdb como um boa prática?

Visualizando 1 resposta (de um total de 1)
  • O tópico ‘Como conectar e cadastrar dados no banco do WordPress?’ está fechado para novas respostas.