Insertion problems in two Mysql PHP tables

Asked

Viewed 49 times

0

I am trying to make an INSERT in two tables, first I need to insert the information of the vehicle in Tablea 'vehicle_registered' and I need to insert the images in the table 'imagens_vehicle'. You’re entering the ELSE of the first INSERT, I wanted to know what I’m doing wrong.

<?php 
session_start();
require_once('conexao/conexao.php');

if(!empty($_POST['tipo_veiculo']) 
    && !empty($_POST['fabricante']) 
    && !empty($_POST['modelo']) 
    && !empty($_POST['valor_veiculo'])
    && !empty($_POST['placa_veiculo'])
    && !empty($_POST['renavam_veiculo'])
    && !empty($_POST['nome_documento'])){

    $id                      = $_SESSION['id_user'];
    $estado                  = $_POST['estado_veiculo'];
    $tipo                    = $_POST['tipo_veiculo'];
    $fabricante              = $_POST['fabricante'];
    $modelo                  = $_POST['modelo'];
    $ano_fabricacao          = $_POST['ano_fabricacao'];
    $ano_modelo              = $_POST['ano_modelo'];
    $cor                     = $_POST['cor_veiculo'];
    $combustivel             = $_POST['combustivel_veiculo'];
    $portas                  = $_POST['portas_veiculo'];
    $cambio                  = $_POST['cambio_veiculo'];
    $kilometragem            = $_POST['kilometragem_veiculo'];
    $dono                    = $_POST['dono_veiculo'];
    $cidade                  = $_POST['cidade_veiculo'];
    $valor                   = $_POST['valor_veiculo'];
    $descricao               = $_POST['descricao'];
    $placa                   = $_POST['placa_veiculo'];
    $renavam                 = $_POST['renavam_veiculo'];
    $nome_documento          = $_POST['nome_documento'];
    $alienado                = $_POST['alienado_veiculo'];
    $certificado             = $_POST['certificado_veiculo'];
    $garantia                = $_POST['garantia_veiculo'];
    $ipva                    = $_POST['ipva_veiculo'];
    $licenciado              = $_POST['licenciado_veiculo'];
    $revisoes                = $_POST['revisoes_veiculo'];
    $revisoes_concessionaria = $_POST['revisoes_concessionaria'];

    //INFO IMAGEM
    $file       = $_FILES['img'];
    $numFile    = count(array_filter($file['name']));

    //PASTA
    $folder     = '../images/veiculos';

    //REQUISITOS
    $permite    = array('image/jpeg', 'image/png');
    $maxSize    = 1024 * 1024 * 10;

    //MENSAGENS
    $msg        = array();
    $errorMsg   = array(
        1 => 'O arquivo enviado excede o limite definido na diretiva upload_max_filesize do php.ini.',
        2 => 'O arquivo excede o limite definido em MAX_FILE_SIZE no formulário HTML.',
        3 => 'O upload do arquivo foi feito parcialmente.',
        4 => 'Nenhum arquivo foi enviado.',
        6 => 'Pasta temporária ausênte.',
        7 => 'Falha em escrever o arquivo em disco.',
        8 => 'Uma extensão do PHP interrompeu o upload do arquivo.'
    );

    $query = "INSERT INTO veiculo_cadastrado
                (id_user,
                estado_veiculo,
                tipo_cadastro,
                fabricante_veiculo,
                modelo_veiculo,
                ano_fabricacao,
                ano_modelo,
                cor_veiculo,
                combutivel_veiculo,
                portas_veiculo,
                cambio_veiculo,
                kilometragem_veiculo,
                dono_veiculo,
                cidade_veiculo,
                valor_veiculo,
                descricao_veiculo,
                placa_veiculo,
                renavam_veiculo,
                nome_documento,
                alienado_veiculo,
                certificado_veiculo,
                garantia_veiculo,
                ipva_veiculo,
                licenciado_veiculo,
                revisoes_veiculo,
                revisoes_concessionaria)
                VALUES
                ('{$id}',
                '{$estado}',
                '{$tipo}',
                '{$fabricante}',
                '{$modelo}',
                '{$ano_fabricacao}',
                '{$ano_modelo}',
                '{$cor}',
                '{$combustivel}',
                '{$portas}',
                '{$cambio}',
                '{$kilometragem}',
                '{$dono}',
                '{$cidade}',
                '{$valor}',
                '{$descricao}',
                '{$placa}',
                '{$renavam}',
                '{$nome_documento}',
                '{$alienado}',
                '{$certificado}',
                '{$garantia}',
                '{$ipva}',
                '{$licenciado}',
                '{$revisoes}',
                '{$revisoes_concessionaria}')";

    $insereVeiculo  = mysql_query($query, $con);

    if($insereVeiculo){
        $_SESSION['certo'] = "Inserido com sucesso";
        $last = mysql_insert_id();
    } else{
        $msg = "Ocorreu um erro";

    }


    if($numFile <= 0)
        $_SESSION['aviso'] = 'Selecione uma imagem!';
    else{
        for($i = 0; $i < $numFile; $i++){
            $name   = $file['name'][$i];
            $type   = $file['type'][$i];
            $size   = $file['size'][$i];
            $error  = $file['error'][$i];
            $tmp    = $file['tmp_name'][$i];        

            $extensao = @end(explode('.', $name));
            $novoNome = rand().".$extensao";

            if($error != 0)
                $msg[] = "<b>$name : </b>".$errorMsg[$error];
            else if(!in_array($type, $permite))
                $msg[] = "<b>$name : </b> Erro imagem não suportada!";
            else if($size > $maxSize)
                $msg[] = "<b>$name : </b> Imagem ultrapassa limite de 10MB";
            else{

                if(move_uploaded_file($tmp, $folder."/".$novoNome))
                    $msg[] = "<b>$name : </b> Upload realizado com sucesso!";
                else{
                    $msg[] = "<b>$name : </b> Desculpe ocorreu um erro!";
                }

            }

        $insert = "INSERT INTO imagens_veiculo 
                    (id_veiculo,
                    imagem_veiculo)
                    VALUES 
                    ('{$last}',
                    '{$novoNome}')";
        $exe_insert = mysql_query($insert, $con);

        }


    }


} else{
    $msg = "Preencha todos os campos";
}

echo $msg;

Form

<form method="post" action="php/insereVeiculo.php" enctype="multipart/form-data">

<div class="col-xs-12">
	<div class="text-top-form">
		<h2><i class="fa fa-car" aria-hidden="true"></i> Veículo</h2>
	</div>
</div>

<div class="col-sm-12 col-xs-12">
	<div class="form-group">
		<label class="radio-inline"><input type="radio" name="estado_veiculo" value="Novo">Novo</label>
		<label class="radio-inline"><input type="radio" name="estado_veiculo" value="Usado">Usado</label>
	</div>
</div>

<div class="col-sm-4 col-xs-12">
	<div class="form-group">
		<span class="obr">Tipo: *</span>
		<select name="tipo_veiculo" class="form-control option-bold custom-field">
			<option selected>-</option>
			<?php while($row_tipo_veiculo = mysql_fetch_assoc($tipo_veiculo)){ ?>
				<option><?php echo $row_tipo_veiculo['tipo_veiculo']; ?></option>
			<?php } ?>
		</select>
	</div>
</div>

<div class="col-sm-4 col-xs-12">
	<div class="form-group">
		<span class="obr">Fabricante: *</span>
		<select id="fabricante" name="fabricante" class="form-control option-bold custom-field">
			<option selected>-</option>
			<?php while($row_marcas = mysql_fetch_assoc($marcas)){ ?>
				<option value="<?php echo $row_marcas['id'] ?>"><?php echo $row_marcas['nome']; ?></option>
			<?php } ?>
		</select>
	</div>
</div>
					
<div class="col-sm-4 col-xs-12" id="pot">
	<div class="form-group">
		<span class="obr">Veículo: *</span>
		<select id="modelo" name="modelo" class="form-control option-bold custom-field">
			<option disabled selected>Selecione o Fabricante</option>
		</select>
	</div>
</div>

<div class="col-xs-12 col-sm-4">
	<div class="form-group">
		<span class="obr">Ano de Fabricação: *</span>
		<select name="ano_fabricacao" class="form-control custom-field option-bold">
			<option selected>-</option>
			<option>2017</option>
			<option>2016</option>
			<option>2015</option>
			<option>2014</option>
			<option>2013</option>
		</select>
	</div>
</div>
				
<div class="col-xs-12 col-sm-4">
	<div class="form-group">
		<span class="obr">Ano do Modelo: *</span>
		<select name="ano_modelo" class="form-control custom-field option-bold">
			<option selected>-</option>
			<option>2017</option>
			<option>2016</option>
			<option>2015</option>
			<option>2014</option>
			<option>2013</option>
		</select>
	</div>
</div>

						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
									<span class="obr">Cor: </span>
									<select name="cor_veiculo" class="form-control custom-field option-bold">
										<option selected>-</option>
										<option>Branco</option>
										<option>Roxo</option>
										<option>Preto</option>
										<option>Cinza</option>
									</select>
							</div>
						</div>
				
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
									<span class="obr">Combustível: *</span>
									<select name="combustivel_veiculo" class="form-control custom-field option-bold">
										<option selected>-</option>
										<option>Gasolina</option>
										<option>Alcool</option>
										<option>Diesel</option>
										<option>Flex</option>
										<option>Gás</option>
									</select>
							</div>
						</div>
					
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
									<span class="obr">Portas: </span>
									<select name="portas_veiculo" class="form-control custom-field option-bold">
										<option selected>-</option>
										<option>1P</option>
										<option>2P</option>
										<option>3P</option>
										<option>4P</option>
									</select>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
									<span class="obr">Câmbio: *</span>
									<select name="cambio_veiculo" class="form-control custom-field option-bold">
										<option selected>-</option>
										<option>Manual</option>
										<option>Automático</option>
										<option>CVT</option>
									</select>
							</div>
						</div>
					
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">kilometragem: *</span>
								<input type="text" name="kilometragem_veiculo" class="form-control custom-field" placeholder="-" >
							</div>
						</div>
				
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">Dono: </span>
								<select name="dono_veiculo" class="form-control custom-field option-bold">
									<option selected>-</option>
									<option>Único Dono</option>
									<option>Segundo Dono</option>
									<option>Mais de dois donos</option>
								</select>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">Cidade do Veículo: *</span>
								<input type="text" name="cidade_veiculo" class="form-control custom-field" value="<?php echo $_SESSION['cidade_user']; ?>">
							</div>
						</div>
						
						<div class="col-xs-12">
							<div class="text-top-form">
								<h2><i class="fa fa-money" aria-hidden="true"></i> Valor de Venda</h2>
							</div>
						</div>
					
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">Valor: *</span>
								<input type="text" name="valor_veiculo" class="form-control custom-field" placeholder="-" >
							</div>
						</div>
						
						<div class="col-xs-12 no-padding">
							<div class="text-top-form">
								<h2><i class="fa fa-cog" aria-hidden="true"></i> Descrição</h2>
							</div>
						</div>
						
						<div class="col-xs-12">
							<textarea name="descricao" class="custom-field-textarea form-control" style="height: 250px;"></textarea>
						</div>
						
						<div class="col-xs-12 no-padding" style="margin-top: 15px;">
						<div class="text-top-form">
							<h2><i class="fa fa-folder-open-o" aria-hidden="true"></i> Documentação do Veículo</h2>
						</div>
					</div>
					
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">Placa: </span>
								<input type="text" name="placa_veiculo" class="form-control custom-field" placeholder="-" >
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">Renavam:</span>
								<input type="text" name="renavam_veiculo" class="form-control custom-field" placeholder="-" >
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="form-group">
								<span class="obr">Nome Documento</span>
								<input type="text" name="nome_documento" class="form-control custom-field" placeholder="-" >
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0; margin-top: 10px;">
								<label>
									<input type="radio" name="alienado_veiculo" value="Alienado">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										Alienado
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0; margin-top: 10px;">
								<label>
									<input type="radio" name="certificado_veiculo" value="Com Certificado">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										Com Certificado
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0; margin-top: 10px;">
								<label>
									<input type="radio" name="garantia_veiculo" value="Garantia de Fabrica">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										Garantia de Fábrica
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0;">
								<label>
									<input type="radio" name="ipva_veiculo" value="IPVA Pago">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										IPVA Pago
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0;">
								<label>
									<input type="radio" name="licenciado_veiculo" value="Licenciado">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										Licenciado
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0;">
								<label>
									<input type="radio" name="revisoes_veiculo" value="Todas revisões feitas pela agenda do carro">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										Todas revisões feitas pela agenda do carro	
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 col-sm-4">
							<div class="radio" style="border:0;">
								<label>
									<input type="radio" name="revisoes_concessionaria" value="Todas revisões feitas pela concessionária">
										<span class="cr"><i class="cr-icon glyphicon glyphicon-ok-sign"></i></span>
										Todas revisões feitas pela concessionária
								</label>
							</div>
						</div>
						
						<div class="col-xs-12 no-padding">
							<div class="text-top-form">
								<h2><i class="fa fa-picture-o" aria-hidden="true"></i> Imagens Veículo</h2>
							</div>
						</div>
						
							<div class="col-md-12 col-sm-12 col-xs-12 nopadding">
                              <div class="form-group uploadImages">
                                 <label class="col-sm-4 col-form-label">
                                    ENVIE AS IMAGENS<br>
                                    <small> Selecione as imagens do seu veículo.</small>
                                 </label>
                                 <div class="col-sm-8 col-md-8">
                                    <div id="upload-ad-images" class="dropzone"></div>
                                 </div>
                              </div>
							</div>
						
						<input class="button-new-anuncio btn-default" type="submit" name="img[]" value="Adicionar Anúncio" />
			
</form>

1 answer

0

I believe the error is here :

if($inserts)

about Insert mysql_query does not return true to achieve this must use the command

mysql_affected_rows

to analyze how many lines were affected.

mysql_query : http://php.net/manual/en/function.mysql-query.php

For SELECT, SHOW, DESCRIBE or EXPLAIN commands, mysql_query() returns a Resource if successful, or FALSE if failed.

For other types of SQL queries, UPDATE, DELETE, DROP, etc., mysql_query() returns TRUE in case of success or FALSE in case of error.

The returned result resource can be passed to mysql_fetch_array(), and other functions to manipulate result tables, to access the returned data.

Use mysql_num_rows() to get how many rows were returned for a SELECT or mysql_affected_rows() command to get how many rows were affected by a DELETE, INSERT, REPLACE, or UPDATE command.

mysql_query() will also fail and return FALSE if the user does not have permissions to access the table(s) referenced by the query.

mysql_affected_rows : http://php.net/manual/en/function.mysql-affected-rows.php

  • I made this change and I realized that it only runs the first INSERT, but it gives the return that "Error occurred" only that it does the INSERT correctly in the database. In the second INSERT it stops in the "Select an image"

  • Change the question and post the html code with the upload form.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.