Ir para conteúdo
Fórum Script Brasil
  • 0

sitema de cadastro


auad

Pergunta

Bom dia !

Preciso de ajuda, tenho um código de cadastro mas não consigo gravar no banco, onde está o erro???

Agraço ajuda desde já.

Obrigado

 

Jorge Auad

 

***segue meu codigo:

<?php
include "conn.php";

$acao = @$_GET['acao'];

$error = @$_GET['sizeof'];

if ($acao == "cadastro") {

// Recebendo valores
$datacomp = $_POST["datacomp"];
$carro = $_POST["carro"];
$anomod = $_POST["anomod"];
$placa = $_POST["placa"];
$cor = $_POST["cor"];
$origem = $_POST["origem"];
$valorcomp = $_POST["valorcomp"];
$situa = $_POST["situa"];
$info = $_POST["info"];

// datacomp
if ($datacomp == "") {
    $error[0] = "Preencha a data";
}

// carro
if ($carro == "") {
    $error[1] = "Preencha o nome do Carro";
}

// anomod
if ($anomod == "") {
    $error[2] = "Preencha o Ano/Modelo";
}

// placa
if ($placa == "") {
    $error[3] = "Preencha o nome do Carro";
}

// cor
if ($cor == "") {
    $error[4] = "Preencha a cor do Carro";
}

// origem
if ($origem == "") {
    $error[5] = "Preencha a origem (nac/Imp) do Carro";
}
// valorcomp
if ($valorcomp == "") {
    $error[6] = "Preencha o valor pago";
}

// situa
if ($situa == "") {
    $error[7] = "Preencha a situação do Carro";
}

// Caso não haja nenhum erro
if (sizeof($error) == 0) {


$query = mysql_query("INSERT INTO veiculos VALUES ('', '$datacomp', '$carro', '$anomod', '$placa', '$cor', '$origem', '$valorcomp', '$situa, '$info')");

if ($query) {
    echo "<script language='javascript'>alert('Cadastro efetuado com sucesso')</script>";
} else {
    echo "<script language='javascript'>alert('Não foi possivel realizar o cadastro no momento')</script>";
}

}

}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro de Veículos</title>
<link href="estilo.css" rel="stylesheet" type="text/css" />
</head>

<body>
<div id="principal">
<h1>Cadastro de Veículos</h1>
<?php
// Caso haja erros
if (sizeof($error) != 0) {
    // Exibe os erros
    foreach ($error as $err) {
        echo "<font color='red'><b>" .$err . "</b></font><br />";
    }
}
?>
<form method="post" action="cadastro.php?acao=cadastro">
<p><strong>Data da Compra:</strong><br /><input name="datacomp" type="date" value="<?php if (sizeof($error) != 0) { echo $datacomp; } ?>" /></p>
<p><strong>Carro:</strong><br /><input name="carro" type="text" value="<?php if (sizeof($error) != 0) { echo $carro; } ?>" /></p>
<p><strong>Ano / Modelo:</strong><br /><input name="anomod" type="text" value="<?php if (sizeof($error) != 0) { echo $anomod; } ?>" /></p>
<p><strong>Placa:</strong><br /><input name="placa" type="text" value="<?php if (sizeof($error) != 0) { echo $placa; } ?>" /></p>
<p><strong>Cor:</strong><br /><input name="cor" type="text" value="<?php if (sizeof($error) != 0) { echo $cor; } ?>" /></p>
<p><strong>Origem:</strong><br /><input name="origem" type="text" value="<?php if (sizeof($error) != 0) { echo $origem; } ?>" /></p>
<p><strong>Valor da Compra:</strong><br /><input name="valorcomp" type="text" value="<?php if (sizeof($error) != 0) { echo $valorcomp; } ?>" /></p>
<p><strong>Situação:</strong><br /><input name="situa" type="text" value="<?php if (sizeof($error) != 0) { echo $situa; } ?>" /></p>
<p><strong>Informações Adicionais:</strong><br /><textarea name="info" cols="30" rows="5"><?php if (sizeof($error) != 0) { echo $info; } ?></textarea></p>
<p><input type="submit" value="Cadastrar" /></p>
</form>
</div>
<a href='index.php'>Voltar</a>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

"Não consegue"? Por quê? Qual é o problema? Dá erro? Qual? Descreva sua dúvida

Retire os "@" do seu código. Isso é pura gambiarra. Veja mais aqui: http://rberaldo.com.br/boas-praticas-programacao-php/#arroba

Habilite todas as mensagens de erro como mostrado aqui: http://rberaldo.com.br/as-mensagens-de-erros-mais-comuns-do-php/#enable_errors

Tutorial de sistema de cadastro: http://blog.ultimatephp.com.br/sistema-de-cadastro-php-mysql-pdo/

 

PS: funções mysql_* estão obsoletas desde o PHP 5.5  e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/


 

Link para o comentário
Compartilhar em outros sites

  • 0

Olá!

Tente assim:

Arquivo connection.php

<?php

// variáveis para conexão com banco de dados online
$host = 'localhost';
$user = 'root';
$password = '';
$database = 'scriptbrasil';

// estabelecer conexão:
$sqli = new mysqli($host, $user, $password);

// verificando se conectou de boas:
if ($sqli->connect_error) {
   // se houver alguma falha, exibe mensagem:
   echo '<p class="error">Falha na conexão: ' . $sqli->connect_error . '</p>';
}

// definir o padrão de caracteres
if (!$sqli->set_charset('utf8')) {
   // se não conseguir definir o padrão de caracteres, exibe o padrão disponível
   echo "<p class='error'>Seu charset não é utf8, chefe!<br>$sqli->character_set_name()</p>";
}

// selecionar/abrir o banco de dados para trabalhar
if (!$sqli->select_db($database)) {
   // se o banco de dados não for encontrado
   echo "<p class='error'>Banco de dados não encontrado, chefe!</p>";
}

Outro arquivo:

<?php
error_reporting(E_ALL);
include 'connection.php';
// inicia as variáveis do formulário:
$datacomp = $carro = $anomod = $placa = $cor = $origem = $valorcomp = $situa = $info = null;

$error = isset($_GET['sizeof']) ? $_GET['sizeof'] : null;

if (isset($_POST['datacomp'])) { // se datacomp foi postada

// Recebendo valores
   extract($_POST);
// define as mensagens de erro para cada campo
   $error_msgs = [
       'datacomp' => 'Preencha a Data',
       'carro' => 'Preencha o nome do Carro',
       'anomod' => 'Preencha o Ano/Modelo',
       'placa' => 'Preencha o nome do Carro',
       'cor' => 'Preencha a cor do Carro',
       'origem' => 'Preencha a origem (nac/Imp) do Carro',
       'valorcomp' => 'Preencha o Valor Pago',
       'situa' => 'Preencha a Situação do Carro',
   ];
   // checar se algum dos campos em $error_msgs está vazio:
   foreach ($error_msgs as $k => $v) {
      if (empty($$k)) {
         $error[] = $v;
      }
   }
// Caso não haja nenhum erro
   if (sizeof($error) == ) {

      $save = $sqli->query("INSERT INTO veiculos VALUES ('', '$datacomp', '$carro', '$anomod', '$placa', '$cor', '$origem', '$valorcomp', '$situa', '$info')");

      if ($sqli->error) {
         echo "<script language='javascript'>alert('Não foi possivel realizar o cadastro no momento')</script>" . $sqli->error;
      } else {
         echo "<script language='javascript'>alert('Cadastro efetuado com sucesso')</script>";
      }
   }
}
?>
<!doctype html>
<html lang='pt-br'>
   <head>
      <meta charset='utf-8'>
      <title>Cadastro de Veículos</title>
      <link href="estilo.css" rel="stylesheet">
   </head>

   <body>
      <div id="principal">
         <h1>Cadastro de Veículos</h1>
         <?php
// Caso haja erros
         if (sizeof($error)) {
            // Exibe os erros
            foreach ($error as $err) {
               echo "<font color='red'><b>" . $err . '</b></font><br>';
            }
         }
         ?>
         <form method="post">
            <p><strong>Data da Compra:</strong><br>
               <input name="datacomp" type="date" value="<?= $datacomp ?>" required></p>
            <p><strong>Carro:</strong><br>
               <input name="carro" type="text" value="<?= $carro ?>" ></p>
            <p><strong>Ano / Modelo:</strong><br>
               <input name="anomod" type="text" value="<?= $anomod; ?>"></p>
            <p><strong>Placa:</strong><br>
               <input name="placa" type="text" value="<?= $placa; ?>"></p>
            <p><strong>Cor:</strong><br>
               <input name="cor" type="text" value="<?= $cor; ?>"></p>
            <p><strong>Origem:</strong><br>
               <input name="origem" type="text" value="<?= $origem; ?>"></p>
            <p><strong>Valor da Compra:</strong><br>
               <input name="valorcomp" type="text" value="<?= $valorcomp; ?>"></p>
            <p><strong>Situação:</strong><br>
               <input name="situa" type="text" value="<?= $situa; ?>" required></p>
            <p><strong>Informações Adicionais:</strong><br>
               <textarea name="info" cols="30" rows="5"><?= $info; ?></textarea></p>
            <p><input type="submit" value="Cadastrar" ></p>
         </form>
      </div>
      <a href='index.php'>Voltar</a>
   </body>
</html> 

 

Ué! O sistema do fórum comeu um zero ali:

sahncBX.png

Talvez tenha comido mais alguns caracteres

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpa mas não sei onde postar. Alguém aí para ajudar? O meu problema é que criei um formulario com o campo nome e email em flash e php. Eu acho que o php está errado. Alguém aí para ajudar? Segue o codigo:

<?php
    $dest = $_POST['destino'];
    $head = 'From ".$_POST['email']."\n";

    $msg = "-----------DADOS------------ \n"
    $msg.= "NOME:  ".$_POST['nome']."\n";
    $msg.= 'EMAIL: ".$_POST['email']."\n";
    $msg.= 'HORA:  ".date('h:i:s a  ")."\n";
    $msg.= "-------------------------------\n\n";
    $msg.= "Mensagem: \n";
    $msg.= $_POST['mensagem']."\n\n";
    $msg.= "-------------------------------\n";

    if (mail($dest, "Cadastro de leads", $msg. $head)) {
        echo "resposta=ok";
    }
    else
    {
        echo "resposta=error";
    {
?>

Link para o comentário
Compartilhar em outros sites

  • 0

Meu velho, não conhecemos o teu arquivo "conn.php", entretanto, considerando que esteja tudo certo com ele, olha essa linha:

$query = mysql_query("INSERT INTO veiculos VALUES ('', '$datacomp', '$carro', '$anomod', '$placa', '$cor', '$origem', '$valorcomp', '$situa, '$info')"); 

Se tu perceber, no "$situa" está faltando uma aspas simples...

Ahhh! As observações do Beraldo são muito pertinentes... dá uma olhada nos links dele ;)

 

Abraço fera!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...