Pesquisar neste blog

Mostrando postagens com marcador Banco de Dados. Mostrar todas as postagens
Mostrando postagens com marcador Banco de Dados. Mostrar todas as postagens

02/12/2023

Inserindo dados na tablela com PHP + ESP32 #10

Saída gerada no phpMyAdmin4















<?php
    $hostname = "localhost";
    $username = "root";
    $password = "";
    $database = "sensor_db";

    $conn = mysqli_connect($hostname, $username, $password, $database);

    if (!$conn) {
        die("Connection failed: ".mysqli_connect_error());
    }

    echo "Database connection is OK";
    echo ('<br>');

    $sql = "INSERT INTO dht11 (temperature, humidity) VALUES (24, 45)";

    if (mysqli_query($conn, $sql)) {
        # code...
        echo "\n";
        echo "\nNovo registro criado com sucesso !";
    }else {
        echo "\nErro: ". $sql . "<br>" .mysqli_error($conn);
    }
?>



Código em linguagem C para o ESP32:

//https://www.youtube.com/watch?v=VEN5kgjEuh8&ab_channel=AhmadLogs

#include <WiFi.h>
#include <HTTPClient.h>

String URL = "http://192.168.1.12/5 Esp32-Temperatura/test_data.php";

const char* ssid = "XXXX";
const char* password = "XXX";

int temperature = 50;
int humidity = 70;

void setup(){
  Serial.begin(115200);
  connectWiFi();
  
}

void connectWiFi(){
  WiFi.mode(WIFI_OFF);
  delay(1000);

  WiFi.mode(WIFI_STA);

  WiFi.begin(ssid, password);
  Serial.println("Conectando no WiFi");

  while(WiFi.status() != WL_CONNECTED){
    delay(500);
    Serial.print(".");
  }

  Serial.print("Conectado em: "); Serial.println(ssid);
  Serial.print("IP address: "); Serial.println(WiFi.localIP());
  delay(1000);
  
}

void loop(){
  if(WiFi.status() != WL_CONNECTED){
    connectWiFi();
 }

  String postData = "Temperatura = "+String(temperature)+"&humidity="+ String(humidity);

  HTTPClient http;
  http.begin(URL);

  int httpCode = http.POST(postData);
  String payload = http.getString();
  http.addHeader("Content-Type", "application/x-www-form-urlencoded");
  
  Serial.print("URL: ");Serial.print(URL);
  Serial.print("Data: ");Serial.print(postData);
  Serial.print("httpCode: ");Serial.print(httpCode);
  Serial.print("payload: ");Serial.print(payload);
  Serial.println("-------------------");
  delay(4000);
}

29/06/2023

CRUD com PHP

Objetivo: Fazer um CRUD em PHP

Saída do designer em PHP














Arquivo 1: cadastrar_pessoa.php

<?php
// 6 funções
Class Pessoa{


    private $pdo;
    // CONEXÃO COM O BANCO DE DADOS
    public function __construct($dbname, $host, $user, $senha) // tudo ok
    {
        try
        {
            $this->pdo = new PDO("mysql:dbname=".$dbname.";host=".$host,$user);
        }
        catch (PDOException $e) {//erro para o PDO
            echo "Erro com o Banco de Dados: ".$e->getMessage();
            exit();
        }
        catch(Exception $e){ // Erros genéricos
            echo "Erro genérico: ".$e->getMessage();
            exit();
        }
    }
    //------- BUSCAR DADOS E EXIBIR NO LADO DIREITO DA TELA ----------
    public function buscarDados() // tudo ok
    {
        $res = array();
        $cmd = $this->pdo->query("SELECT * FROM pessoa ORDER BY id");
        $res = $cmd->fetchAll(PDO::FETCH_ASSOC);// economiza memória
        return $res;
    }
    // FUNÇÃO DE CADASTRAR PESSOAS NO BANCO DE DADOS
    public function cadastrarPessoa($nome, $telefone, $email)
    {
        // Antes de cadastrar verificar se já tem o EMAIL cadastrado
        $cmd = $this->pdo->prepare("SELECT id FROM pessoa WHERE email = :e");
        $cmd->bindValue(":e", $email);
        $cmd->execute();
        if ($cmd->rowCount() > 0)  //se > 0 email já existe no BD
        {
            return false;
        }else  // não foi encontrado no BD
        {
            $cmd = $this->pdo->prepare("INSERT INTO pessoa(nome, telefone, email)
            VALUES (:n, :t, :e)");
            $cmd->bindValue(":n", $nome);
            $cmd->bindValue(":t", $telefone);
            $cmd->bindValue(":e", $email);
            $cmd->execute();
            return true;
        }
    }
    // MÉTODO PARA EXCLUIR PESSOA
    public function excluirPessoa($id) // tudo ok
    {
        $cmd = $this->pdo->prepare("DELETE FROM pessoa WHERE id = :id");
        $cmd->bindValue(":id", $id);
        $cmd->execute();
    }

    // BUSCAR DADOS DE UMA PESSOA
    public function buscarDadosPessoa($id) // tudo ok
    {
        $res = array();
        $cmd = $this->pdo->prepare("SELECT * FROM pessoa WHERE id = :id");
        $cmd->bindValue(":id", $id);
        $cmd->execute();
        $res = $cmd->fetch(PDO::FETCH_ASSOC);//economiza memória
        return $res;
    }

    // ATUALIZAR DADOS NO BANCO DE DADOS
   
    public function atualizarDados($id, $nome, $telefone, $email){ // tudo ok
       
        $cmd = $this->pdo->prepare("UPDATE pessoa SET nome = :n, telefone = :t,
        email = :e WHERE id = :id");
        $cmd->bindValue(":n", $nome);
        $cmd->bindValue(":t", $telefone);
        $cmd->bindValue(":e", $email);
        $cmd->bindValue(":id", $id);
        $cmd->execute();
    }
}
?>


Arquivo 2: index.php

<?php
require_once 'classe_pessoa.php';
$p = new Pessoa("crudpdo", "localhost", "root", "");
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Cadastro de Pessoa</title>
    <link rel="stylesheet" href="estilo.css">
</head>
<body>
    <?php
    if (isset($_POST['nome']))
    //CLICOU NO BOTÃO CADASTRAR OU EDITAR
    {
        if (isset($_GET['id_up']) && !empty($_GET['id_up']))
        {
            $id_upd = addslashes($_GET['id_up']);
            $nome = addslashes($_POST['nome']);
            $telefone = addslashes($_POST['telefone']);
            $email = addslashes($_POST['email']);
            if (!empty($nome) && !empty($telefone) && !empty($email))
            {
                $p->atualizarDados($id_upd, $nome, $telefone, $email);
               
                header("location: index.php");
            }
            else
            {
                ?>
                    <div class="aviso">
                        <img src="aviso.png" alt="">
                        <h4>Preencha todos os campos !</h4>
                    </div>
                <?php
            }
        }
        // ---------------------------- CADASTRAR ----------------------------
        else
        {
            $nome = addslashes($_POST['nome']);
            $telefone = addslashes($_POST['telefone']);
            $email = addslashes($_POST['email']);
            if(!empty($nome) && !empty($telefone) && !empty($email))
            {
                //cadastrar
                if (!$p->cadastrarPessoa($nome, $telefone, $email))
                {
                    ?>
                        <div>
                            <img src="aviso.png" alt="">
                            <h4>Email já está cadastrado !</h4>
                        </div>
                    <?php
                }
            }
            else
            {
                ?>
                    <div class="aviso">
                        <img src="aviso.png" alt="">
                        <h4>Preencha todos os campos !</h4>
                    </div>
                <?php
            }
        }
    }
    ?>
    <?php
        if (isset($_GET['id_up'])) //SE A PESSOA CLICOU EM EDITAR
        {
            $id_update = addslashes($_GET['id_up']);
            $res = $p->buscarDadosPessoa($id_update);
        }

    ?>
    <section id = "esquerda">
        <form action="" method = "POST">
            <h2>CADASTRAR PESSOA</h2>
            <label for="nome">Nome</label>
            <input type="text" name = "nome" id = "nome"
            value="<?php if(isset($res)){echo $res['nome'];} ?>">
           
            <label for="telefone">Telefone</label>
            <input type="text" name="telefone" id="telefone"
            value="<?php if(isset($res)){echo $res['telefone'];} ?>">

            <label for="email">Email</label>
            <input type="email" name="email" id="email"
            value= "<?php if(isset($res)) {echo $res['email']; } ?>">

            <input type="submit"
            value= "<?php if (isset($res)) { echo "Atualizar"; }else { echo
    "Cadastrar"; } ?>">
        </form>
    </section>
    <section id="direita">
        <table>
            <tr id="titulo">
                <td>NOME</td>
                <td>TELEFONE</td>
                <td colspan="2">EMAIL</td>
            </tr>
            <?php
                $dados = $p->buscarDados();
                if(count($dados) > 0)//TEM PESSOAS NO BANCO DE DADOS
                {
                    for($i=0; $i < count($dados); $i++)
                    {
                        echo "<tr>";
                        foreach ($dados[$i] as $k => $v)
                        {
                            if($k != "id")
                            {
                                echo "<td>".$v."</td>";
                            }
                        }
                        ?>
                            <td>
                                <?php echo $dados[$i]['id'] ?>                              
                                <a href="index.php?id_up=<?php echo $dados[$i]['id']; ?>">Editar</a>
                                <a href="index.php?id=<?php echo $dados[$i]['id']; ?>">Excluir</a>
                            </td>
                        <?php
                        echo "</tr>";
                    }                    
                }
                else // O BANCO DE DADOS ESTÁ VAZIO
                {
                    ?>
                    </table>

                        <div class="aviso">
                            <h4>Ainda não há pessoas cadastradas !</h4>
                        </div>
                    <?php
                }
            ?>
        </table>
    </section>
</body>
</html>

<?php
    if (isset($_GET['id'])) {
        $id_pessoa = addslashes($_GET['id']);
        $p->excluirPessoa($id_pessoa);
        header("location: index.php");//atualiza a página após o clique
    }
?>


Arquivo 3: estilo.css

*{
    padding: 0px;
    margin: 0px;
    font-family: arial;
}

label, input{
    display: block;
    line-height: 30px;
    height: 30px;
    outline: none;
    font-size: 13pt;
    width: 100%;
}

form{
    width: 330px;
    background-color: rgba(0, 0, 0, 0.2);
    padding: 20px;
    margin: 30px auto; /*automático dos lados*/
}

input[type="submit"]{
    margin-top: 10px;
    cursor: pointer;
}

#esquerda{
    width: 35% ;
    height: 500px;
    float: left;
}

h2{
    text-align: center;
}

#direita{
    margin-top: 30px;
    width: 65%;
    height: 500px;
    float: left;

}

table {
    background-color: rgba(0, 0, 0, 0.2);
    width: 90%;
    margin: auto;
}

tr{
    line-height: 30px;
}

tr#titulo{
    font-weight: bold;
    background-color: rgba(0,0,0, .6);
    color: white;
}

td{
    padding: 0px 5px;
}

a{
    background-color: white;
    color: black;
    padding: 5px;
    margin: 0px 5px;
    float: left;
}

.aviso {
   
    width: 90%;
    height: 50px;
    margin: 30px auto 0px auto; /* margin no auto */
}
img {
    width: 50px;
    display: block;
    float: left; /*flutuar à esquerda*/
}
h4{
    float: left;
    line-height: 50px;
}


Créditos para: Mirian TechCod


09/02/2023

Consultas avançadas no phpMyAdmin #09





<?php

#Conexão com o banco de dados MySQL

$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";

$conexao = mysqli_connect($servidor, $usuario, $senha, $database);

$consulta = mysqli_query($conexao, "SELECT ALUNOS.nome_aluno, cursos.nome_curso
    FROM ALUNOS, CURSOS, ALUNOS_CURSOS WHERE ALUNOS_CURSOS.id_aluno = ALUNOS.id_aluno
    AND ALUNOS_CURSOS.id_curso = CURSOS.id_curso;");

echo '<table border = 2><tr><th>Nome do aluno</th><th>&ensp; Nome do curso</th></tr>';
while ($linha = mysqli_fetch_array($consulta)) {
    echo '<tr><td>'.$linha['nome_aluno'].'</td>';
    echo '<td>'.$linha['nome_curso'].'</td></tr>';
}

echo '</table>';


Saída gerada














08/02/2023

Consultas no phpMyAdmin #08

  Necessário realizar o download do arquivo na página: https://www.phpmyadmin.net/downloads/ 
e salvar na pasta do xampp ' C:\xampp\htdocs\ '

<?php

#Conexão com o banco de dados MySQL

$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";

$conexao = mysqli_connect($servidor, $usuario, $senha, $database);

echo '<table border=3>
        <tr>
            <th>&nbsp; id &nbsp; &#160;</th>
            <th>&ensp; &ensp;  Nome  &ensp; &emsp; &emsp;</th>
            <th>Data de nascimento</th>
        </tr>';

$consulta = mysqli_query ($conexao, "SELECT *FROM ALUNOS");

while ($linha = mysqli_fetch_array($consulta)) {
    echo '<tr><td>'.$linha['id_aluno'].'</td>';
    echo '<td>'.$linha['nome_aluno'].'</td>';
    echo '<td>'.$linha['data_nascimento'].'</td></tr>';
}

echo '</table>';


Saída gerada no localhost/web/































Dados salvo no phpMyAdmin











07/02/2023

Alterando tabela no phpMyAdmin #07

 Necessário realizar o download do arquivo na página: https://www.phpmyadmin.net/downloads/ 
e salvar na pasta do xampp ' C:\xampp\htdocs\ '

<?php

#Conexão com o banco de dados MySQL

$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";

$conexao = mysqli_connect($servidor, $usuario, $senha, $database);

mysqli_query($conexao, "ALTER TABLE CURSOS CHANGE id id_curso
    INT NOT NULL AUTO_INCREMENT");

Saída gerada no servidor










06/02/2023

Update phpMyAdmin #06



<?php

#Conexão com o banco de dados MySQL

$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";

$conexao = mysqli_connect($servidor, $usuario, $senha, $database);
if (mysqli_query($conexao, "UPDATE ALUNOS SET nome_aluno = 'Jose Miguel'
    WHERE id_aluno = 7")){
    echo ('Alterado com sucesso !');
}else {
    echo ('Falha ao alterar dados');
}

Saída gerada na SQL




03/02/2023

Deletando dados no phpMyAdmin #05

Necessário realizar o download do arquivo na página: https://www.phpmyadmin.net/ e salvar na pasta do xampp ' C:\xampp\htdocs\ '

Arquivo: index.php

<?php

#Conexão com o banco de dados MySQL

$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";

$conexao = mysqli_connect($servidor, $usuario, $senha, $database);
if (mysqli_query($conexao, "DELETE FROM ALUNOS WHERE id_aluno = 3")) {
    echo 'Apagado com sucesso !';
}else {
    echo ('Falha ao apagar dados');
}

Saída gerada no servidor phpMyAdmin




02/02/2023

Inserindo dados na tabela PHP MyAdmin #04

Necessário realizar o download do arquivo na página: download phpMyAdmin e salvar 
na pasta do xampp ' C:\xampp\htdocs\ '



Arquivo: index.php

<?php

#Conexão com o banco de dados MySQL

$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";

$conexao = mysqli_connect($servidor, $usuario, $senha, $database);

# Gerando tabelas usando PHP
# Tabela cursos (nome do curso, carga horária)
$query = "CREATE TABLE IF NOT EXISTS CURSOS(
    id_curso int not null auto_increment,
    nome_curso varchar(255) not null,
    carga_horaria int not null,
    primary key (id_curso)
)";

$executar = mysqli_query($conexao, $query);

# Tabela alunos (nome do aluno, data nascimento)
$query = "CREATE TABLE IF NOT EXISTS ALUNOS (
    id_aluno int not null auto_increment,
    nome_aluno varchar(255) not null,
    data_nascimento varchar(255),
    primary key(id_aluno)
)";

$executar = mysqli_query($conexao, $query);

# Tabela alunos_cursos (aluno, curso)
$query = "CREATE TABLE IF NOT EXISTS ALUNOS_CURSOS(
    id_aluno_curso int not null auto_increment,
    id_aluno int not null,
    id_curso int not null,
    primary key(id_aluno_curso)  
)";

$executar = mysqli_query($conexao, $query);

# Inserir dados nas tabelas
$query = "INSERT INTO ALUNOS(nome_aluno, data_nascimento) VALUES
('Jenifer', '10-15-1991')";

$executar = mysqli_query($conexao, $query);

$query = "INSERT INTO ALUNOS(nome_aluno, data_nascimento) VALUES
('Carlos', '31-01-2003')";

$executar = mysqli_query($conexao, $query);


# Inserir cursos
$query = "INSERT INTO CURSOS(nome_curso, carga_horaria) VALUES
('Técnico em Eletrônica', 10)";
$executar = mysqli_query($conexao, $query);

# Alunos curso
$query = "INSERT INTO ALUNOS_CURSOS(id_aluno, id_curso) VALUES (12, 4)";
mysqli_query($conexao, $query);
if ($conexao) {
    echo ("Inserido com sucesso !");
}

Criando tabelas no PHP MyAdmin #03

Saída gerada no servidor





















<?php

#Conexão com o banco de dados MySQL
$servidor = "localhost";
$usuario = "root";
$senha = "";
$database = "aula_php";
$conexao = mysqli_connect($servidor, $usuario, $senha, $database);
if ($executar) {
    echo ("Executado com sucesso !");
}
# Gerando tabelas usando PHP
# Tabela cursos (nome do curso, carga horária)
$query = "CREATE TABLE IF NOT EXISTS CURSOS(
    id_curso int not null auto_increment,
    nome_curso varchar(255) not null,
    carga_horaria int not null,
    primary key (id_curso)
)";

$executar = mysqli_query($conexao, $query);
if ($executar) {
    echo ("1. Tabela CURSOS executado com sucesso !<br>");
}else{
    echo "Falha ao executar tabela CURSOS<br>";
}

# Tabela alunos (nome do aluno, data nascimento)
$query = "CREATE TABLE IF NOT EXISTS ALUNOS (
    id_aluno int not null auto_increment,
    nome_aluno varchar(255) not null,
    data_nascimento varchar(255),
    primary key(id_aluno)
)";

$executar = mysqli_query($conexao, $query);
if ($executar) {
    echo ("2. Tabela ALUNOS executado com sucesso !<br>");
}else {
    echo "Falha ao executar tabela ALUNOS<br>";
}

# Tabela alunos_cursos (aluno, curso)
$query = "CREATE TABLE IF NOT EXISTS ALUNOS_CURSOS(
    id_aluno_curso int not null auto_increment,
    id_aluno int not null,
    id_curso int not null,
    primary key(id_aluno_curso)  
)";

$query = mysqli_query($conexao, $query);
if ($executar) {
    echo ("3. Tabela ALUNOS_CURSOS executado com sucesso !<br>");
}