Jump to content
emmanuelsiqueira30

Querys para 3 tabelas não executam

Recommended Posts

Pessoal o problema é o seguinte estou tentando inserir a informação de matrícula de alunos utilizando 3 tabelas.

1 - matricula

2 - contasreceber

3 - parcelareceber

 

Mas as querys da tabela contasreceber e parcelareceber não executam e também o outro problema é que a data das parcelas ficam dando o ano de 2020 em vez de 2019.

Agradeço toda ajuda possível.

cadMatriculaView

<!DOCTYPE html>
<html>
<title>Matrícula do aluno</title>
<head>
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>
<body>
<?php include 'menuView.php'; ?></br></br>

<?php ini_set( 'default_charset', 'UTF-8' );
ini_set( 'mbstring.http_output', 'UTF-8' );
ini_set( 'mbstring.internal_encoding', 'UTF-8' );
header("Content-Type: text/html; charset=UTF-8",true);  
?>

<font face="verdana" size="4">
	<form action="../Model/cadMatriculaModel.php" method="POST">
		
		<fieldset>
			<legend>CONSULTA DE ALUNO</legend>
			<label for="proprietario_id_prop">Digite o CPF do aluno: </label>
				<input type="text" class="form-control" name="textbox" id="textbox" placeholder="Digite CPF do aluno"></br>
					ALUNO: <select class="form-control" name="id_aluno" id="select" style="width: 400px">
						<?php
							include ("../Controller/conexao.php");
							$query = "SELECT * FROM aluno";
							$consulta = mysqli_query($con,$query); 
							while ($dados = mysqli_fetch_assoc($consulta)) { ?>
								<option value="<?php echo $dados['idaluno']; ?>"><?php echo $dados['cpfaluno'] . " - " . $dados['nomealuno']; ?></option> <?php 
							}
						?>
					</select></br>
		</fieldset>
		
		<fieldset>
			<legend>ESCOLHA DO CURSO</legend>
					CURSO: <select class="form-control" name="id_curso" id="select">
						<?php
							include ("../Controller/conexao.php");
							$query = "SELECT * FROM curso";
							$consulta = mysqli_query($con,$query); 
							while ($dados = mysqli_fetch_assoc($consulta)) { ?>
								<option value="<?php echo $dados['id_curso']; ?>"><?php echo $dados['nome_curso'] . " - " . $dados['turno_curso']; ?></option> <?php 
							}
						?>
					</select></br>
		</fieldset>
		
		TIPO DE PAGAMENTO: <select name="tipo_pag_matricula">
							<option value="1">A PRAZO</option>
					   </select></br>
		
		DIA DO VENCIMENTO: <input type="number" name="dt_venc_pag_matricula" maxlength="2">
		NÚMERO DE PARCELAS: <input type="number" name="n_parc_matricula" maxlength="2">
		DESCONTO: <input type="number" name="desc_matricula" style="width: 50px" value="0">% </br>
		
		<span style="color: red; font-size: 8pt">* Campos obrigatórios.</span></br>
		<button type="submit" name="btninserir">INSERIR MATRÍCULA</button>
	</form>
</font>

<script>
jQuery.fn.filterByText = function(textbox, selectSingleMatch) {
        return this.each(function() {
            var select = this;
            var options = [];
            $(select).find('option').each(function() {
                options.push({value: $(this).val(), text: $(this).text()});
            });
            $(select).data('options', options);
            $(textbox).bind('change keyup', function() {
                var options = $(select).empty().data('options');
                var search = $(this).val().trim();
                var regex = new RegExp(search,"gi");
              
                $.each(options, function(i) {
                    var option = options[i];
                    if(option.text.match(regex) !== null) {
                        $(select).append(
                           $('<option>').text(option.text).val(option.value)
                        );
                    }
                });
                if (selectSingleMatch === true && $(select).children().length === 1) {
                    $(select).children().get(0).selected = true;
                }
            });            
        });
    };

    $(function() {
        $('#select').filterByText($('#textbox'), false);
      $("select option").click(function(){
        alert(1);
      });
    });
</script>



</body>
</html>

cadMatriculaModel

 

<?php
	
	include("../Controller/conexao.php");
	include("../Controller/util.php");
	
	header('Content-Type: text/html; charset=utf-8');
	
	$id_aluno = $_POST['id_aluno'];
	$id_curso = $_POST['id_curso'];
	$data_matricula = date("Y-m-d");
	$codunico_matricula = bin2hex(random_bytes(8));
	$tipo_pag_matricula = $_POST['tipo_pag_matricula'];
	$dt_venc_pag_matricula = $_POST['dt_venc_pag_matricula'];
	$desc_matricula = $_POST['desc_matricula'];
	$n_parc_matricula = $_POST['n_parc_matricula'];
	
	$sql_valor_curso = "SELECT * FROM curso WHERE id_curso = $id_curso";
	$result_valor_curso = mysqli_query($con,$sql_valor_curso);
	$row_valor_curso = mysqli_fetch_assoc($result_valor_curso);
	$valor_curso = $row_valor_curso['valor_curso'];
	
	$valor_final = $valor_curso - $desc_matricula;
	
	$dt_curso_ini  = $row_valor_curso['data_inicio_curso'];
	$dt_curso_fim  = $row_valor_curso['data_fim_curso'];
 	$dif = strtotime($dt_curso_fim) - strtotime($dt_curso_ini);
 	$periodo_curso_meses = floor($dif / (60 * 60 * 24 * 30));
 	
	$valor_parc = $valor_final / $periodo_curso_meses;
	
	$sqlmatriculaexistente = "SELECT * FROM matricula WHERE id_curso = $id_curso AND id_aluno = $id_aluno AND codunico_matricula = $codunico_matricula";
	$resultmatriculaexistente = mysqli_query($con,$sqlmatriculaexistente);
	
	if (resultmatriculaexistente > 0) {
		echo "<script>alert('Matrícula já existente.'); location='../View/cadMatriculaView.php';</script>";	
	}
	else {
		
		$sqlmatricula = "INSERT INTO matricula (id_aluno,id_curso,data_matricula,codunico_matricula,tipo_pag_matricula,dt_venc_pag_matricula,desc_matricula,n_parc_matricula) 
		VALUES ('$id_aluno','$id_curso','$data_matricula','$codunico_matricula','$tipo_pag_matricula','$dt_venc_pag_matricula','$desc_matricula','$n_parc_matricula')";
		$resultmatricula = mysqli_query($con,$sqlmatricula);
		$ultimamatricula = mysqli_insert_id($con);
		echo $ultimamatricula;
				
		$sqlcr = "INSERT INTO contasreceber (id_matricula_cr,valor_total_cr,desc_cr,valor_final_cr,n_parc_cr) 
		VALUES ('$ultimamatricula','$valor_curso','$desc_matricula','$valor_final','$n_parc_matricula')";
		$resultcr = mysqli_query($con,$sqlcr);
		$ultimacr = mysqli_insert_id($con);
		echo $ultimacr;
				
		$desc_pr = 0;
		$valor_final_pr = $valor_parc;
		
		for($x = 0; $x < $n_parc_matricula; $x++){
			
			$dia = date("d");
			$mes = date("m");
			$ano = date("Y");
			
			$dt_venc_pr = date("Y/m/d",strtotime("+".$x." month",mktime(0, 0, 0,$dia,$mes,$ano)));
			echo $dt_venc_pr;
 			
			$sqlpr = "INSERT INTO parcelareceber (id_cr_pr,valor_parc_pr,desc_pr,valor_final_pr,dt_venc_pr,dt_pg_pr,valor_pg,valor_pag_pr) 
			VALUES ('$ultimamatricula','$valor_parc','$desc_pr','$valor_final_pr','$dt_venc_pr','?','?')";
			$resultpr = mysqli_query($con,$sqlpr);
		
		}		
		
	}
	
	if ($resultmatricula && resultpr) {
			//echo "<script>alert('Cadastro realizado com sucesso.'); location='../View/cadMatriculaView.php';</script>";
	} else {
			//echo "<script>alert('Erro ao cadastrar.'); location='../View/cadMatriculaView.php';</script>";
			echo mysqli_error($con);
	}
		
	$con->close();		
	
?>

 

Share this post


Link to post
Share on other sites

Oi boa noite,

 

Tente adicionar o código no arquivo para definir o timezone correto:

date_default_timezone_set(America/Sao_Paulo);

 

As vezes o seu servidor está com um date time diferente do nosso, percebi que você está pegando a data atual do servidor na variável:

$data_matricula = date("Y-m-d");

Pois no trecho que você mostra, teoricamente era para capturar os dados do dia, mês e ano atual (quando eu faço esse post o ano 19):

$dia = date("d");
$mes = date("m");
$ano = date("Y");

 

Share this post


Link to post
Share on other sites

OK, mas o grande problema do código é não executar o for para salvar as informações das parcelas.

Em 22/06/2019 at 00:49, André Severino disse:

Oi boa noite,

 

Tente adicionar o código no arquivo para definir o timezone correto:


date_default_timezone_set(America/Sao_Paulo);

 

As vezes o seu servidor está com um date time diferente do nosso, percebi que você está pegando a data atual do servidor na variável:


$data_matricula = date("Y-m-d");

 

Pois no trecho que você mostra, teoricamente era para capturar os dados do dia, mês e ano atual (quando eu faço esse post o ano 19):


$dia = date("d");
$mes = date("m");
$ano = date("Y");

OK, mas o grande problema do código é não executar o for para salvar as informações das parcelas.

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Camilavip
      Boa noite a todos, estou tendo um probleminha em gravar a senha criptografada, na verdade editar, pois quando gravo vai certo, mas na edição não está dando certo.
      A baixo quando cadastro o cliente é assim, e está indo perfeito.
       
      $nome = $_POST['nome']; $email = $_POST['email']; $login = $_POST['login']; $senha = sha1($_POST['senha']); Mas na hora da edição como está um pouco diferente estou tentando colocar esse sha1 em todo lugar e não está dando
      nome='$_POST[nome]', email='$_POST[email]', login='$_POST[login]', senha='$_POST[senha]', Então no de cima no cadastro está ok, mas na edição não sei mais aonde coloco esse sha1 para dar certo ou é burrice minha mesmo,
    • By Wallcrawler
      Olá pessoal tudo bem? Estou tentando fazer a cópia de uma imagem que está disponível na web e salvar em uma pasta no meu projeto. Essa imagem está sob protocolo SSL mas navegador consegue acessá-la normalmente. Mas o meu script php é bloqueado, e não entendo o porquê.
       
      Segue o código que estou usando:
      <?php //error_reporting(E_ALL ^ E_DEPRECATED); //ini_set('display_errors', 1); //die('Script travado!'); $start = microtime(true); set_time_limit(0); function save_image($inPath,$outPath) { //Download images from remote server $in = fopen($inPath, 'rb'); $out = fopen($outPath, 'wb'); while ($chunk = fread($in,8192)) { fwrite($out, $chunk, 8192); } fclose($in); fclose($out); } include_once ($_SERVER['DOCUMENT_ROOT'] . '/grpi/include/classes/Rpi.class.php'); include_once ($_SERVER['DOCUMENT_ROOT'] . '/grpi/include/functions.class.php'); $func = new FuncoesAuxiliares(); $rpi = new Rpi(); if(!isset($_GET['num_processo'])) { $rows = $rpi->Consulta('select num_processo, classe, especificacao from processos order by num_processo ASC limit 1'); } else { $rows = $rpi->Consulta("select num_processo, classe, especificacao from processos where num_processo > '" . $_GET['num_processo'] . "' order by num_processo ASC limit 1"); } $registros = 0; $arrayInsert = array(); $qtd_caracteres_total = 14; foreach ($rows as $rs) { //$rs['num_processo'] $zeros = ''; $qtd_char_processo = strlen($rs['num_processo']); //Fill zeros for($i=0; $i < ($qtd_caracteres_total - $qtd_char_processo); $i++) { $zeros .= '0'; } echo('BR5' . $zeros . $rs['num_processo'] . '<br>'); $url = 'http://www.tmdn.org/tmview/trademark/image/BR5' . $zeros . $rs['num_processo']; //Aqui tento acessar a imagem e salvar na pasta correspondente save_image($url, __DIR__ .'/logo/' . $rs['num_processo'] . '.jpg'); //copy('https://www.tmdn.org/tmview/trademark/image/BR5' . $zeros . $rs['num_processo'], __DIR__ .'/logo/' . $rs['num_processo'] . '.jpg'); $processo = $rs['num_processo']; $registros++; } $registros = number_format($registros, 0, ',', '.'); // Display Script End time $time_end = microtime(true); //dividing with 60 will give the execution time in minutes other wise seconds $execution_time = ($time_end - $start)/60; //execution time of the script echo '<b>Total Execution Time:</b> '. $execution_time .' Mins <hr><br><br>Registros: ' . $registros . '<br><br>'; echo("<a href='down_logo.php?num_processo=" . $processo ."' target='_self'>Próxima página</a><br><br>"); ?> O erro retornado é o seguinte:
       
      Warning: fopen(): SSL: Connection reset by peer in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 10

      Warning: fopen(http://www.tmdn.org/tmview/trademark/image/BR500000825642590): failed to open stream: HTTP request failed! in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 10

      Warning: fread() expects parameter 1 to be resource, boolean given in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 12

      Warning: fclose() expects parameter 1 to be resource, boolean given in /home/storage/8/23/2c/euregistrogrpi/public_html/grpiv2/rpi/down_logo.php on line 16
       
      Só que se você tentar acessar o endereço no browser, diretamente, a imagem aparece:
       
      https://www.tmdn.org/tmview/trademark/image/BR500000825642590 
       
      Onde posso estar errando? Obrigado pela atenção de todos.
    • By violin101
      Caros amigos,
       
      saudações...
       
      Estou escrevendo uma rotina de Carrinho de Compras e estou com problema na Library CART.
       
      Quando a Descrição do Produto ultrapassa 25 caracteres, o CART não é inserido.
       
      A library CART, estou chamando direto no AUTOLOAD.
       
      Como consigo resolver esse problema ?
       
      O Código para inserir está assim:
      <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Carrinho extends CI_Controller { public function __construct() { parent::__construct(); $this->load->model('site/carrinho_model'); } public function index() { $this->addCart(); } public function addCart() { //Recebe dados via POST $id_produto = $this->input->post("idPrds"); $descricao = $this->input->post("namPrds"); //Problema nesse Campo quando ultrapassa 25 caracteres - Não INSERE $quantidade = $this->input->post("qtds"); $preco = $this->input->post("vlrPrds"); $insert_dados = array( 'id' => $id_produto, 'name' => $descricao, 'price' => $preco, 'qty' => $quantidade ); $this->cart->insert($insert_dados); $this->load->view('site/estilo/header', $this->data); $this->load->view('site/carrinho'); } }  
       
      Grato,
       
      Cesar
       
       
       
       
    • By Bruno Ferreira da Silva
      Estou utilizando laravel 5.8.
      Meu problema é o seguinte, estou realizando o login com usuário e senha. O sistema entra na condição e debuga corretamente o usuário logado. e no mesmo momento que eu altero a url para ..../dashboard, ele redireciona como se estivesse deslogando. mas na segunda tentativa isso não acontece, ele realiza o login normalmente. Ai isso se repete sempre que troca de usuário. 
       
      O controller da dashboard chama apenas a view e mais nada. 
      public function authenticate(Request $request) { $credentials = $request->only('email', 'password'); if (Auth::attempt($credentials)) { dd(Auth::user()); return redirect()->intended('dashboard'); } }  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.