Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

João Junior

Formulario / Mysql

Recommended Posts

Eai pessoal, fiz um formulário de cadastro aqui e fiz as conexões com mysql junto com phpmyadmin.

Quando executo para incluir no banco, mas só aparece a mensagem "Erro, não possível inserir no banco de dados", talvez seja erro na configuração das variáveis, nao consegui achar.

 

cad_vitima.php

<td>Fatal:</td>
     <td width="29"><input checked="checked" name="user_fatal" type="radio" value="sim" />
        Sim</td>
        <td colspan="2"><input name="user_fatal" type="radio" value="nao" />
        Não</td>
      </tr>
      <tr>

      <td width="160">Nome:</td>
      <td colspan="3"><input name="user_nome" type="text" id="vnome" size="60" maxlength="60" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Natureza da Ocorrência</td>

      <td colspan="3"><input id="email" maxlength="60" name="user_natureza" size="60
      " type="text" />

      <span class="style1">*</span></td>

    </tr>

    <tr>

      <td>Sexo:</td>

      <td colspan="2"><input checked="checked" name="user_sexo" type="radio" value="Masculino" />
        Masculino </td>
      <td width="299"><input name="user_sexo" type="radio" value="Feminino" />
        Feminino <span class="style1">*</span></td>
      </tr>
    <tr>
      <td>Idade:</td>
      <td colspan="3"><input id="vidade" maxlength="40" name="user_idade" type="text" />
        *</td>
    </tr>
    <tr>
      <td>Estado Civil:</td>
      <td colspan="3"><select name="user_estadocivil" id="vestadocivil">
        <option>Solteiro(a)</option>
        <option>Casado(a)</option>
        <option>Viúvo(a)</option>
        <option>Divorciado(a)</option>
      </select>
      </td>
    </tr>
    <tr>
      <td>Endereço:</td>
      <td colspan="3"><input id="vendereco" maxlength="70" name="user_endereco" size="60" type="text" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Bairro:</td>
      <td colspan="3"><input id="vbairro" maxlength="20" name="user_bairro" type="text" /></td>
    </tr>
    <tr>
      <td>Cidade/UF:</td>
      <td colspan="3"><input id="vcidadeuf" maxlength="20" name="user_cidade" type="text" /></td>
    </tr>
    <tr>
      <td>CEP:</td>
      <td colspan="3"><input id="vcep" maxlength="20" name="user_cep" type="text" /></td>
    </tr>
    <tr>
      <td>Data de Nascimento:</td>
      <td colspan="3"><input id="vdatanascimento" maxlength="20" name="user_datanascimento" type="text" /></td>
    </tr>
    <tr>
      <td>Escolaridade:</td>
      <td colspan="3"><label for="vescolaridade"></label>
        <select name="user_escolaridade" id="vescolaridade">
          <option>Não Informado</option>
          <option>Completo</option>
          <option>Incompleto</option>
          <option>Ensino Fundamental</option>
          <option>Ensino Médio</option>
          <option>Ensino Superior</option>
          <option>Formação Técnica</option>
        </select></td>
    </tr>
    <tr>
      <td>Conhecia o Agressor?</td>
      <td colspan="3"><input checked="checked" name="user_agressor" type="radio" value="nao" />
Não
  <input name="user_agressor" type="radio" value="sim" />
  Sim</td>
    </tr>
    <tr>
      <td>Local do Crime:</td>
      <td colspan="3"><input id="vlocalcrime" maxlength="20" name="user_localcrime" type="text" /></td>
    </tr>
    <tr>
      <td colspan="3"><p>Breve Resumudo:          
        <label for="user_resumo"></label>
      </p></td>
      <td><textarea name="user_resumo" cols="50" rows="5" id="user_resumo" dir="ltr"></textarea></td>
    </tr>
    <tr>
      
      <td colspan="4"><p>
        
        <input id="vcadastrar" name="user_cadastrar" type="submit" value="Cadastrar" /> 
        
        <input id="vlimpar" name="user_limpar" type="reset" value="Limpar" />
        
        
        <span class="style1">* Campos com * são obrigatórios! </span></p>
        
        <p> </p></td>

inserir_vitima.php

<?php
    //verifica se existe conexão com bd, caso não tenta criar uma nova
    $conexao = mysql_connect("localhost","root","") //porta, usuário, senha
    or die ( mysql_error() );; //caso não consiga conectar mostra a mensagem de erro mostrada na conexão
     
    $select_db = mysql_select_db("db_vitima"); //seleciona o banco de dados
     
    //Abaixo atribuímos os valores provenientes do formulário pelo método POST
    $user_fatal = $_POST["user_fatal"];
	$user_nome = $_POST["user_nome"]; 
    $user_natureza = $_POST["user_natureza"];
	$user_sexo = $_POST["user_sexo"];
    $user_idade = $_POST["user_idade"];
	$user_estadocivil = $_POST["user_estadocivil"];
	$user_endereco = $_POST["user_endereco"];
	$user_bairro = $_POST["user_bairro"];
	$user_cidade = $_POST["user_cidade"];
	$user_cep = $_POST["user_cep"];
	$user_datanascimento = $_POST["user_datanascimento"];
	$user_escolaridade = $_POST["user_escolaridade"];
	$user_agressor = $_POST["user_agressor"];
	$user_localcrime = $_POST["user_localcrime"];
	$user_resumo = $_POST["user_resumo"];
     
    $string_sql = "INSERT INTO proc_clientes (id,user_fatal,user_nome,user_natureza,user_sexo,user_idade,user_estadocivil,user_endereco,user_bairro,user_cidade,user_cep,user_datanascimento,user_escolaridade,user_agressor,user_localcrime,user_resumo) VALUES (null, 'user_fatal','$user_nome','$user_natureza','$user_sexo','$user_idade','$user_estadocivil','$user_endereco','$user_bairro','$user_cidade','$user_cep','$user_datanascimento','$user_escolaridade','$user_agressor','$user_localcrime','$user_resumo')"; //String com consulta SQL da inserção
     
    mysql_query($string_sql,$conexao); //Realiza a consulta
     
    if(mysql_affected_rows() == 1){ //verifica se foi afetada alguma linha, nesse caso inserida alguma linha
        echo "<p>Cadastro feito com sucesso</p>";
        echo '<a href="cad_requerente.php">Cadastro de Vitima Realizado! Cadastrar Requerente</a>'; //Apenas um link para retornar para o formulário de cadastro
    } else {
        echo "Erro, não possível inserir no banco de dados";
    }
     
    mysql_close($conexao); //fecha conexão com banco de dados 
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

1º não vi a tag <form> em lugar algum.... se você colocou informou o atributo "method" como POST msm...?

 

2º na sua variavel $string_sql o campo user_fatal esta sem $... coloque $user_fatal....

 

3º aspas simples não interpreta variavel ...então na sua sql tenta inverter... abra a string com aspas simples e quando for colocar uma variavel coloque entre aspas duplas

Compartilhar este post


Link para o post
Compartilhar em outros sites

3º aspas simples não interpreta variavel ...então na sua sql tenta inverter... abra a string com aspas simples e quando for colocar uma variavel coloque entre aspas duplas

Nesse item, a forma como ele fez está correta, se as aspas estiverem dentro do apóstrofo o php interpretará o sifrão como texto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O primeiro código la de cima, o cad_vitima.php pegando o form no começo.

<form action="inserir_vitima.php" method="post" onsubmit="return">  <table width="617" border="0">    <tr>      <th width="194" scope="col"><img src="imgs/img1.jpg" alt="" width="301" height="129" align="right" /></th>      <th width="1" scope="col"> </th>      <th width="342" scope="col"><img src="imgs/img2.png" width="402" height="172" align="right" /></th>    </tr>  </table>  <table style="width: 625px; font-family: Arial, Helvetica, sans-serif; font-size: medium; font-style: italic;" border="0">    <tbody>      <tr>        <td colspan="4" style="text-align: left; font-weight: bold; font-size: x-large;">Cadastro da Vítima:</td>      </tr>      <tr>        <td colspan="4" style="text-align: left; font-weight: bold; font-size: x-large;"> </td>      </tr>      <tr align="left">        <td>Fatal:</td>     <td width="29"><input checked="checked" name="user_fatal" type="radio" value="sim" />        Sim</td>        <td colspan="2"><input name="user_fatal" type="radio" value="nao" />        Não</td>      </tr>      <tr>      <td width="160">Nome:</td>      <td colspan="3"><input name="user_nome" type="text" id="vnome" size="60" maxlength="60" />        <span class="style1">*</span></td>    </tr>    <tr>      <td>Natureza da Ocorrência</td>      <td colspan="3"><input id="email" maxlength="60" name="user_natureza" size="60      " type="text" />      <span class="style1">*</span></td>    </tr>    <tr>      <td>Sexo:</td>      <td colspan="2"><input checked="checked" name="user_sexo" type="radio" value="Masculino" />        Masculino </td>      <td width="299"><input name="user_sexo" type="radio" value="Feminino" />        Feminino <span class="style1">*</span></td>      </tr>    <tr>      <td>Idade:</td>      <td colspan="3"><input id="vidade" maxlength="40" name="user_idade" type="text" />        *</td>    </tr>    <tr>      <td>Estado Civil:</td>      <td colspan="3"><select name="user_estadocivil" id="vestadocivil">        <option>Solteiro(a)</option>        <option>Casado(a)</option>        <option>Viúvo(a)</option>        <option>Divorciado(a)</option>      </select>      </td>    </tr>    <tr>      <td>Endereço:</td>      <td colspan="3"><input id="vendereco" maxlength="70" name="user_endereco" size="60" type="text" />        <span class="style1">*</span></td>    </tr>    <tr>      <td>Bairro:</td>      <td colspan="3"><input id="vbairro" maxlength="20" name="user_bairro" type="text" /></td>    </tr>    <tr>      <td>Cidade/UF:</td>      <td colspan="3"><input id="vcidadeuf" maxlength="20" name="user_cidade" type="text" /></td>    </tr>    <tr>      <td>CEP:</td>      <td colspan="3"><input id="vcep" maxlength="20" name="user_cep" type="text" /></td>    </tr>    <tr>      <td>Data de Nascimento:</td>      <td colspan="3"><input id="vdatanascimento" maxlength="20" name="user_datanascimento" type="text" /></td>    </tr>    <tr>      <td>Escolaridade:</td>      <td colspan="3"><label for="vescolaridade"></label>        <select name="user_escolaridade" id="vescolaridade">          <option>Não Informado</option>          <option>Completo</option>          <option>Incompleto</option>          <option>Ensino Fundamental</option>          <option>Ensino Médio</option>          <option>Ensino Superior</option>          <option>Formação Técnica</option>        </select></td>    </tr>    <tr>      <td>Conhecia o Agressor?</td>      <td colspan="3"><input checked="checked" name="user_agressor" type="radio" value="nao" />Não  <input name="user_agressor" type="radio" value="sim" />  Sim</td>    </tr>    <tr>      <td>Local do Crime:</td>      <td colspan="3"><input id="vlocalcrime" maxlength="20" name="user_localcrime" type="text" /></td>    </tr>    <tr>      <td colspan="3"><p>Breve Resumudo:                  <label for="user_resumo"></label>      </p></td>      <td><textarea name="user_resumo" cols="50" rows="5" id="user_resumo" dir="ltr"></textarea></td>    </tr>    <tr>            <td colspan="4"><p>                <input id="vcadastrar" name="user_cadastrar" type="submit" value="Cadastrar" />                 <input id="vlimpar" name="user_limpar" type="reset" value="Limpar" />                        <span class="style1">* Campos com * são obrigatórios! </span></p>                <p> </p></td>          </tr>  </tbody></table></form></body></html>

o código do banco mysql.

-- phpMyAdmin SQL Dump-- version 4.0.4-- http://www.phpmyadmin.net---- Máquina: localhost-- Data de Criação: 05-Maio-2014 às 11:38-- Versão do servidor: 5.6.12-log-- versão do PHP: 5.4.12SET 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 utf8 */;---- Base de Dados: `db_provitima`---- ------------------------------------------------------------ Estrutura da tabela `proc_clientes`--CREATE TABLE IF NOT EXISTS `proc_clientes` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `user_nome` varchar(60) NOT NULL,  `user_natureza` varchar(20) NOT NULL,  `user_sexo` varchar(10) NOT NULL,  `user_idade` varchar(10) NOT NULL,  `user_cidade` varchar(20) NOT NULL,  `user_estadocivil` varchar(20) NOT NULL,  `user_endereco` varchar(60) NOT NULL,  `user_email` varchar(20) NOT NULL,  `user_ddd` int(2) NOT NULL,  `user_telefone` int(20) NOT NULL,  `user_bairro` varchar(20) NOT NULL,  `user_estado` varchar(20) NOT NULL,  `user_datanascimento` date NOT NULL,  `user_login` varchar(10) NOT NULL,  `user_senha` varchar(10) NOT NULL,  `user_escolaridade` varchar(20) NOT NULL,  `user_autor` varchar(20) NOT NULL,  `user_localcrime` varchar(20) NOT NULL,  `user_fatal` varchar(20) NOT NULL,  `user_resumo` text NOT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;/*!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 */;

alguem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dê um print_r antes da execução da sql;


$string_sql = "INSERT INTO proc_clientes (id,user_fatal,user_nome,user_natureza,user_sexo,user_idade,user_estadocivil,user_endereco,user_bairro,user_cidade,user_cep,user_datanascimento,user_escolaridade,user_agressor,user_localcrime,user_resumo) VALUES (null, 'user_fatal','$user_nome','$user_natureza','$user_sexo','$user_idade','$user_estadocivil','$user_endereco','$user_bairro','$user_cidade','$user_cep','$user_datanascimento','$user_escolaridade','$user_agressor','$user_localcrime','$user_resumo')";

print "<pre>";
print_r($string_sql);
exit();

Fazendo isso, você vai ser capaz de ver o que ele está cadastrando

 

Outra coisa

 

nessa parte do seu código no inserir_vitima.php

$select_db = mysql_select_db("db_vitima")

Você parece estar selecionando o banco de dados "db_vitima";

E na estrutura da sua base de dados o nome parece ser outro

--Base de Dados: `db_provitima`

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia

 

Alguns erros:

 

Dois postos e vigula no final do Or die

 

or die ( mysql_error() );;

 

 

Corrigindo:

 

$conexao = mysql_connect("localhost","root","") or die (mysql_error());

  1. <?php
  2. //verifica se existe conexão com bd, caso não tenta criar uma nova
  3. $conexao = mysql_connect("localhost","root","") //porta, usuário, senha
  4. or die ( mysql_error() );; //caso não consiga conectar mostra a mensagem de erro mostrada na conexão
  5. $select_db = mysql_select_db("db_vitima"); //seleciona o banco de dados

Compartilhar este post


Link para o post
Compartilhar em outros sites

como ja dito acima, verifique o nome do banco de dados;

na sql, aparentemente há 1 erro nesse trecho:

VALUES (null, 'user_fatal',

tente assim:

VALUES (null, '$user_fatal',

use 1 "or die" no comando "select db" e na sql tb..

mas - não me leve a mal - ha varios outros problemas com a tabela do banco de dados;

sugiro dar 1 boa estudada em modelagem (projeto) de banco de dados.

1 dica: comece c/ 1 tabela bem menor (3 ou 4 colunas, no maximo).

ai fica bem mais facil "debugar".

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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