0
Well I’m having trouble importing a select list to db, I configured but still gives error, no matter the selected item
follows the codes:
<?php
session_start();
?>
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="utf-8">
<title>CRUD - Cadastrar</title>
</head>
<body>
<h1>Cadastrar Usuário</h1>
<?php
if (isset($_SESSION['msg'])) {
echo $_SESSION['msg'];
unset($_SESSION['msg']);
}
?>
<form method="POST" action="processa.php">
<label>Nome: </label>
<input type="text" name="nome" placeholder="Digite o nome completo"><br><br>
<label>E-mail: </label>
<input type="email" name="email" placeholder="Digite o seu melhor e-mail"><br><br>
<label>Posição Principal </label>
<select name="Posição">
<option value="Atacante">Atacante</option>
<option value="Meia">Meia</option>
<option value="Volante">Volante</option>
<option value="Zagueiro">Zagueiro</option>
</select>
<input type="submit" value="Cadastrar">
</form>
</body>
</html>
<?php
session_start();
include_once("conexao.php");
$nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); //nome
$email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL); //sobrenome
$Posição = filter_input(INPUT_POST, 'Posição', FILTER_SANITIZE_STRING); //posição principal
//echo "Nome: $nome <br>";
//echo "E-mail: $email <br>";
$result_usuario = "INSERT INTO usuarios (nome, email, principal_position, created) VALUES ('$nome', '$email', $Posição, NOW())";
$resultado_usuario = mysqli_query($conn, $result_usuario);
if(mysqli_insert_id($conn)){
$_SESSION['msg'] = "<p style='color:green;'>Usuário cadastrado com sucesso</p>";
header("Location: index.php");
}else{
$_SESSION['msg'] = "<p style='color:red;'>Usuário não foi cadastrado com sucesso</p>";
header("Location: index.php");
}
-- phpMyAdmin SQL Dump
-- version 4.6.4
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Tempo de geração: 13/11/2017 às 00:52
-- Versão do servidor: 5.7.14
-- Versão do PHP: 7.0.10
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
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 */;
--
-- Banco de dados: `comunikar`
--
-- --------------------------------------------------------
--
-- Estrutura para tabela `usuarios`
--
CREATE TABLE `usuarios` (
`id` int(11) NOT NULL,
`nome` varchar(220) NOT NULL,
`email` varchar(220) NOT NULL,
`Posição` varchar(220) NOT NULL,
`created` datetime NOT NULL,
`modified` datetime DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Fazendo dump de dados para tabela `usuarios`
--
INSERT INTO `usuarios` (`id`, `nome`, `email`, `created`, `Posição`,`modified`) VALUES
(1, 'Matheus', '[email protected]', `atacante`,'2017-11-12 22:35:47', NULL),
(2, 'matheus1', '[email protected]', `atacante`,'2017-11-12 22:37:15', NULL),
(3, 'matheus2', '[email protected]', `atacante`,'2017-11-12 22:39:14', NULL),
(4, 'matheus4', '[email protected]', `atacante`,'2017-11-12 22:41:21', NULL),
(5, 'matheus5', '[email protected]', `atacante`,'2017-11-12 22:42:49', NULL),
(6, 'matheus6', '[email protected]', `atacante`,'2017-11-12 22:48:27', NULL);
--
-- Índices de tabelas apagadas
--
--
-- Índices de tabela `usuarios`
--
ALTER TABLE `usuarios`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT de tabelas apagadas
--
--
-- AUTO_INCREMENT de tabela `usuarios`
--
ALTER TABLE `usuarios`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
<?php
$servidor = "localhost";
$usuario = "root";
$senha = "";
$dbname = "dados";
//Criar a conexao
$conn = mysqli_connect($servidor, $usuario, $senha, $dbname);
Follow the error while importing db
Comando SQL:
--
-- Fazendo dump de dados para tabela `usuarios`
--
INSERT INTO `usuarios` (`id`, `nome`, `email`, `created`, `Posição`,`modified`) VALUES
(1, 'Matheus', '[email protected]', `atacante`,'2017-11-12 22:35:47', NULL),
(2, 'matheus1', '[email protected]', `atacante`,'2017-11-12 22:37:15', NULL),
(3, 'matheus2', '[email protected]', `atacante`,'2017-11-12 22:39:14', NULL),
(4, 'matheus4', '[email protected]', `atacante`,'2017-11-12 22:41:21', NULL),
(5, 'matheus5', '[email protected]', `atacante`,'2017-11-12 22:42:49', NULL),
(6, 'matheus6', '[email protected]', `atacante`,'2017-11-12 22:48:27', NULL)
Mensagens do MySQL : Documentação
#1054 - Coluna 'atacante' desconhecida em 'field lis
t'
In the attacking field you are not inserting single quotes but another character that is like the one in the database column. exchange the '
' for ' '
– Nicolas Pereira
@Nicolaspereira you say this in db?
– Matheus Abreu
The correct way is:
(1, 'Matheus', '[email protected]', 'atacante','2017-11-12 22:35:47', NULL),
– Nicolas Pereira
I tested here but without success, I think my problem is in the tags, in the part of CREATE TABLE
usuarios
(id
int(11) NOT NULL,nome
varchar(220) NOT NULL,email
varchar(220) NOT NULL,Posição
varchar(220) NOT NULL,created
datetime NOT NULL,modified
datetime DEFAULT NULL ) ENGINE=Myisam DEFAULT CHARSET=utf8;– Matheus Abreu
@Nicolaspereira in the position part, I do not know if varchar is correct for a select list
– Matheus Abreu