Jump to content

Recommended Posts

Bom dia, estou com um problema na minha sessão. Algumas páginas funcionaram e em outras não, mesmo usando o mesmo arquivo "sessao.php".

Eu tentei utilizar o "error_reporting('E_WARNING')" (para sumir o aviso da página) porém a sessão não funciona. Ele abre a página normalmente mesmo não estando logado.

Segue o arquivo e o erro. Preciso de segurança nas páginas

 

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /Baldeio/relatorioIndividualCm.php:1) in /home/valedotibagi/www/Baldeio/sessao.phpon line 2

 

<?php 
session_start();
if((!isset ($_SESSION['login']) == true) and (!isset ($_SESSION['senha']) == true))
{unset($_SESSION['login']);
unset($_SESSION['senha']);
header('location:login.php');}
$logado = $_SESSION['login'];
require('conecta.php');
?>




<?php 
include'sessao.php';
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sem título</title>
</head>
 <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">  
     <?php 
	  $idCm= $_GET['idcm'];
	  $sqlcm ="SELECT registro.dataViagem, registro.quantidade, registro.local, registro.hora, registro.dataAtual, login.nomeUsuario, cm.prefixo, motorista.nomeMotorista FROM registro INNER JOIN login ON login.idlogin = registro.login_idlogin INNER JOIN cm ON cm.idcm = registro.cm_idcm INNER JOIN motorista ON motorista.idmotorista = registro.motorista_idmotorista AND idcm = '$idCm' ORDER BY registro.dataViagem DESC";
	  $result_cm = mysqli_query($con, $sqlcm) or die('Falha na consulta de Usuário');
	 ?>
  </head>
  <body>
   <nav aria-label=''>
   <ul class='pager'>
   <li><a href='relatorioCm.php'>Voltar</a></li>
   <li><a href='painelAdm.php'> Tela Inicial </a></li>
   </ul>
   </nav>
 <!--INICIO TABELA-->
  <div class="py-5">
    <div class="container">
      <div class="row">
        <div class="col-md-12">      
          <table class="table table-hover">
  <thead>
    <tr>
          <th><center> MOTORISTA</center></th>
          <th><center><br> CM</center></th>
          <th><center></span>LOCAL</center></th>
          <th><center>DATA</center></th>
          <th><center> CADASTRANTE</center></th>
          <th><center><br>  HORÁRIO</center></th>
          <th><center>DATA DO CADASTRO</center></th>
    </tr>
  </thead>
  <?php
   	while($arrayCm = mysqli_fetch_array ($result_cm)){
		$dataViagem = $arrayCm ['dataViagem'];
		$prefixo = $arrayCm ['prefixo'];
		$local = $arrayCm ['local'];
    $motorista = $arrayCm ['nomeMotorista'];
		$hora= $arrayCm ['hora'];
		$dataAtual = $arrayCm ['dataAtual'];
		$nomeUsuario = $arrayCm ['nomeUsuario'];
			$dataCerta = date('d/m/Y', strtotime($dataViagem));	
		  $atualData = date('d/m/Y', strtotime($dataAtual));
				echo "<tr>";
        echo "<td> $motorista </center></td>";
				echo "<td><center> <i class='fa fa-truck' style='font-size:20px;'></i> $prefixo </center></td>";
				echo "<td><center> $local </center></td>";
				echo "<td><center> <span class='glyphicon glyphicon-calendar'></span> $dataCerta </center></td>";
				echo "<td><center> $nomeUsuario </center></td>";		
				echo "<td><center> <span class='glyphicon glyphicon-time'></span> $hora </center></td>";
				echo "<td><center> <span class='glyphicon glyphicon-calendar'></span>  $atualData </center></td>";
				echo "</tr>";
				echo "</tr>";		
         }
       ?> 
          </div>
      </div>
    </div>
  </div>
  <!--FIM DE TABELA-->
</body>
</html>

 

Share this post


Link to post
Share on other sites
2 minutos atrás, BlackMix disse:

Vamos lá..

você tem um espaço em:

 


<?php 
include'sessao.php';
?>

logo depois do php nos seus dois aquivos..

delete e teste.

Bom dia, retirei os espaços como você pediu, mas  ele ainda mostra que está com erro na linha 1 :c

Share this post


Link to post
Share on other sites
3 minutos atrás, BlackMix disse:

Como ficou agora?

Ficou dessa forma

 

 

<?php session_start();
if((!isset ($_SESSION['login']) == true) and (!isset ($_SESSION['senha']) == true))
{unset($_SESSION['login']);
unset($_SESSION['senha']);
header('location:/home/valedotibagi/www/Baldeio/login.php');}
$logado = $_SESSION['login'];
require('conecta.php');
?>

 

Share this post


Link to post
Share on other sites

Primeiro delete esses seus dados do post O.O'

e segundo eu não falei dos espaços nesse seu arquivo e sim dos primeiros que você postou rs..

 

O session_start(); não pode ter echos antes dele ou html, nada de dados antes.

Share this post


Link to post
Share on other sites
2 minutos atrás, BlackMix disse:

Primeiro delete esses seus dados do post O.O'

e segundo eu não falei dos espaços nesse seu arquivo e sim dos primeiros que você postou rs..

 

O session_start(); não pode ter echos antes dele ou html, nada de dados antes.

Eu deletei kkkkk juro que enviei sem querer. 

 

 

O primeiro ficou assim

<?php include'sessao.php';?>
<html>
<head>
<meta charset="utf-8">
<title>Documento sem título</title>
</head>
 <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">  
     <?php 
	  $idCm= $_GET['idcm'];
	  $sqlcm ="SELECT registro.dataViagem, registro.quantidade, registro.local, registro.hora, registro.dataAtual, login.nomeUsuario, cm.prefixo, motorista.nomeMotorista FROM registro INNER JOIN login ON login.idlogin = registro.login_idlogin INNER JOIN cm ON cm.idcm = registro.cm_idcm INNER JOIN motorista ON motorista.idmotorista = registro.motorista_idmotorista AND idcm = '$idCm' ORDER BY registro.dataViagem DESC";
	  $result_cm = mysqli_query($con, $sqlcm) or die('Falha na consulta de Usuário');
	 ?>
  </head>
  <body>
   <nav aria-label=''>
   <ul class='pager'>
   <li><a href='relatorioCm.php'>Voltar</a></li>
   <li><a href='painelAdm.php'> Tela Inicial </a></li>
   </ul>
   </nav>
 <!--INICIO TABELA-->
  <div class="py-5">
    <div class="container">
      <div class="row">
        <div class="col-md-12">      
          <table class="table table-hover">
  <thead>
    <tr>
          <th><center> MOTORISTA</center></th>
          <th><center><br> CM</center></th>
          <th><center></span>LOCAL</center></th>
          <th><center>DATA</center></th>
          <th><center> CADASTRANTE</center></th>
          <th><center><br>  HORÁRIO</center></th>
          <th><center>DATA DO CADASTRO</center></th>
    </tr>
  </thead>
  <?php
   	while($arrayCm = mysqli_fetch_array ($result_cm)){
		$dataViagem = $arrayCm ['dataViagem'];
		$prefixo = $arrayCm ['prefixo'];
		$local = $arrayCm ['local'];
    $motorista = $arrayCm ['nomeMotorista'];
		$hora= $arrayCm ['hora'];
		$dataAtual = $arrayCm ['dataAtual'];
		$nomeUsuario = $arrayCm ['nomeUsuario'];
			$dataCerta = date('d/m/Y', strtotime($dataViagem));	
		  $atualData = date('d/m/Y', strtotime($dataAtual));
				echo "<tr>";
        echo "<td> $motorista </center></td>";
				echo "<td><center> <i class='fa fa-truck' style='font-size:20px;'></i> $prefixo </center></td>";
				echo "<td><center> $local </center></td>";
				echo "<td><center> <span class='glyphicon glyphicon-calendar'></span> $dataCerta </center></td>";
				echo "<td><center> $nomeUsuario </center></td>";		
				echo "<td><center> <span class='glyphicon glyphicon-time'></span> $hora </center></td>";
				echo "<td><center> <span class='glyphicon glyphicon-calendar'></span>  $atualData </center></td>";
				echo "</tr>";
				echo "</tr>";		
         }
       ?> 
          </div>
      </div>
    </div>
  </div>
  <!--FIM DE TABELA-->
</body>
</html>

 

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 Chris Martin
      Pessoal, estou com um problema com relacionamentos no laravel. (Inclusive pode ser até falta de atenção minha), mas quebrei a cabeça demais e não consegui; Tenho as tabelas 'arquiteto' e 'cliente' e um arquiteto tem vários clientes, só que não consegui fazer o relacionamento aparecer na tabela 'cliente' tenho o campo `arquiteto_id' que referencia o 'id' da tabela 'arquitetos', só que quando fiz a relação na model Arquiteto ela não está aparecendo class Arquiteto extends Model{ protected $fillable = [...]; public function clientes() { return $this->hasMany('App\Cliente'); } }  
    • By inousi
      Quando faço login, não reconhece user/email já registrado anteriormente no bd.
      Scripts para registro e login de usuário:
      - registro usuário.php
      - server.php
      - login.php
      O de registro de usuário está ok. Faz o registro no bd (mysql).
      O de login resulta na mensagem: "Wrong username/password". (linha 79 do server.php) - apesar de ter sido confirmado o registro e conferida sua gravação no bd (users.php)
       
      script server.php
      <?php session_start(); // initializing variables $user_name = ""; $user_email = ""; $errors = array(); // connect to the database $db_sys = mysqli_connect('localhost', 'root', '', 'sys'); // REGISTER USER if (isset($_POST['user_reg'])) { // receive all input values from the form $user_name = mysqli_real_escape_string($db_sys, $_POST['user_name']); $user_email = mysqli_real_escape_string($db_sys, $_POST['user_email']); $user_pass1 = mysqli_real_escape_string($db_sys, $_POST['user_pass1']); $user_pass2 = mysqli_real_escape_string($db_sys, $_POST['user_pass2']); // form validation: ensure that the form is correctly filled ... // by adding (array_push()) corresponding error unto $errors array if (empty($user_name)) { array_push($errors, "Username is required"); } if (empty($user_email)) { array_push($errors, "Email is required"); } if (empty($user_pass1)) { array_push($errors, "Password is required"); } if ($user_pass1 != $user_pass2) { array_push($errors, "The two passwords do not match"); } // check the database a user does not already exist with the same username and/or email $user_check_query = "SELECT * FROM users WHERE user_name='$user_name' OR user_email='$user_email' LIMIT 1"; $result = mysqli_query($db_sysgo, $user_check_query); $user = mysqli_fetch_assoc($result); if ($user) { // if user exists if ($user['user_name'] === $user_name) { array_push($errors, "Username already exists"); } if ($user['user_email'] === $user_email) { array_push($errors, "email already exists"); } } // Register user if there are no errors if (count($errors) == 0) { //encrypt the password $user_pass = md5($user_pass1); $query = "INSERT INTO users (user_name, user_email, user_pass) VALUES('$user_name', '$user_email', '$user_pass')"; mysqli_query($db_sys, $query); $_SESSION['user_name'] = $user_name; $_SESSION['success'] = "You are now logged in"; header('location: index.php'); } } // LOGIN USER if (isset($_POST['login'])) { $user_name = mysqli_real_escape_string($db_sys, $_POST['user_name']); $user_pass = mysqli_real_escape_string($db_sys, $_POST['user_pass']); if (empty($user_name)) { array_push($errors, "Username is required"); } if (empty($user_pass)) { array_push($errors, "Password is required"); } if (count($errors) == 0) { $user_pass = md5($user_pass); $query = "SELECT * FROM users WHERE user_name='$user_name' AND user_pass='$user_pass'"; $results = mysqli_query($db_sys, $query); if (mysqli_num_rows($results) == 1) { $_SESSION['user_name'] = $user_name; $_SESSION['success'] = "You are now logged in"; header('location: index.php'); }else { //AQUI ESTÁ O ERRO QUE MOSTRA array_push($errors, "Wrong username/password"); } } } ?> <?php if (count($errors) > 0) : ?> <div class="error"> <?php foreach ($errors as $error) : ?> <p><?php echo $error ?></p> <?php endforeach ?> </div> <?php endif ?>  
      login.php
      <?php include('server.php') ?> <!DOCTYPE html> <html> <head> <title>Login</title> <link rel="stylesheet" type="text/css" href="user_style.css"> </head> <body> <div class="header"> <h2>Login</h2> </div> <form method="post" action="login.php"> <?php include('errors.php'); ?> <div class="input-group"> <label>Username</label> <input type="text" name="user_name" > </div> <div class="input-group"> <label>Password</label> <input type="password" name="user_pass"> </div> <div class="input-group"> <button type="submit" class="btn" name="login">Login</button> </div> <p> Not yet a member? <a href="reg_user.php">Sign up</a> </p> </form> </body> </html>  
    • By Sapinn
      Salveee! Certo a dúvida que trarei aqui agora é bem complexa e eu sinceramente não sei se é realmente possível mas acho que não custa nada perguntar.
       
      Fiz um site de envio de textos, onde o aluno envia um texto e o professor corrigi até ai blz, queria saber como eu poderia fazer pra quando o professor marcar uma palavra aprece-se uma caixa de dialogo onde ele colocaria, por exemplo, a correção da palavra ou alguma explicação e essas informações seriam enviadas para o banco de dados quando o aluno acessa a correção desse texto e o ele passa-se  mouse por cima dessa palavra apareceria a correção em um balãozinho. Como exemplo desse comportamento que acabei de citar temos o google documents que faz algo desse jeito. Queria saber se isso pode ser possível sem exigir muito código ou muita coisa. Desde já agradeço.
    • By vmmh
      Alguma alma caridosa que me possa ajudar ?
      há dias que ando com este problema e não consigo resolver. Ficaria eternamente grato se alguém pudesse ajudar
       
      o codigo abaixo em localhost funciona na perfeição , mas em produção , no lado do servidor , nada... HTTP error 500.
      o pedido que estou a fazer está noutro dominio com porta 81 e no meu dominio uso certificado de segurança. Será por aí?
      de qualquer forma o wsdl está   aqui:
       
       
      $client = new SoapClient('https://dekrainspecoes.pt/acp/PROD_CustomUI_ACP_Member_Validation_WS.WSDL');
      $result = $client->QueryByNumCartao(array('N_Cartao' => "705684011673122085"));
      if (!empty($result->QueryByNumCartao_Output->Cartao_Ativo)) {
       
          echo 'The userId : '.$result->QueryByNumCartao_Output ->Pessoa_ID;
      }
       
      $JSON = json_encode($result);
    • By tiagodolf
      Bem, quero que o PHP mostre o resultado de um questionario, porem no começo ja apresenta erro. Sou leigo em PHP.


      CODE HTML:



      CODE PHP:


      ERRO APRESENTAD:

×

Important Information

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