Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Autista23

[Resolvido] Minhas encomendas e problema no registo(PAP)

Mensagens Recomendadas

Autista23

Boas venho por este meio porque tenho uns problemas na minha pap , não estou a conseguir buscar dados de uma tabela porque me dá estes erros:

 Fatal error: Uncaught Error: Maximum function nesting level of '256' reached, aborting! in C:\xampp\htdocs\pap_salgado\MinhasEncomendas.php on line 1

 Error: Maximum function nesting level of '256' reached, aborting! in C:\xampp\htdocs\pap_salgado\MinhasEncomendas.php on line 1

 

Também após resolver este problema gostaria de poder mostrar a minha tabela com as encomendas do cliente consoante o codcliente , código das minhas encomendas:


 

<?php

include("minhasencomendas.php");

$consulta = "SELECT CodCliente FROM Encomendas ";
$conconsulta = $mysqli->query($consulta) or die ($mysqli->error);
?>
<html>
<head>
<meta charset= "utf8">
</head>
<body>
<table>
<tr>
<td>Teste1</td>
<td>Teste2</td>
<td>Teste3</td>
<td>Teste4</td>

</tr>
<?php while($dado = $conconsulta->fetch_array()){ ?>
<td><?php echo $dado["CodEncomenda"]; ?></td>
<td><?php echo $dado["produto"]; ?>Teste2</td>
<td><?php echo $dado["Descricao"]; ?>Teste3</td>
<td><?php echo $dado["MetodoPagamento"]; ?>Teste4</td>
</tr>
<?php } ?>
</table>
</body>
</html>

 

Além de este problema que  estou a ter ,também estou a ter outro que é quando faço um registo tudo o que tem acentos e ç tem este problema , isto só acontece no registo de cliente visto que resolvi o mesmo problema de registo de encomendas noutra página com este código ( mysqli_set_charset($conn, "utf8"); )

Mas como nesta página é por require e não conexão penso que está a dar problema por isso porque costumo fazer o codigo mysqli charset mas nao resulta aqui penso que é mesmo de chamar a conexao diferentemente mas aqui está o código da página:

<!DOCTYPE HTML>
<?php

session_start();
    require('conn/bd.php');
     $conn = mysqli_connect("localhost","root","","db_pap"); 
    //não funciona mysqli_set_charset($conn, "utf8");

    // Se os valores estiverem corretos introduz na base de dados //
    if (isset($_POST['username']) && isset($_POST['password'])){
        
        $username = trim($_POST['username']);
        $username = strip_tags($username);
        $username = htmlspecialchars($username);
        
        $nome = trim($_POST['nome']);
        $nome = strip_tags($nome);
        $nome = htmlspecialchars($nome);
        
        $password = trim($_POST['password']);
        $password = strip_tags($password);
        $password = htmlspecialchars($password);
        
        $telemovel = trim($_POST['telemovel']);
        $telemovel = strip_tags($telemovel);
        $telemovel = htmlspecialchars($telemovel);
        
        $morada = trim($_POST['morada']);
        $morada = strip_tags($morada);
        $morada = htmlspecialchars($morada);
        
        $email = trim($_POST['email']);
        $email = strip_tags($email);
        $email = htmlspecialchars($email);
        
        
        
        
        !$error = null;
        
        
        //teste limpa os erros e habilita os erros//
          $success = false;
  $errors = [];
            //teste utilizador//
  
  if (empty($username)) {
   $errors[] = "Por favor introduza o seu utilizador .";
  } else if (strlen($username) < 3) {
   $errors[] = "O seu nome de utilizador deverá conter pelo menos 3 caracteres.";
  }
  
  
    // Validação de password //
  if (empty($password)){
    $errors[] = "Por favor introduza uma password.";
  } else if(strlen($password) < 5) {
   $error = true;
   $errors[] = "A password deverá conter pelo menos 5 caracteres.";
  }
        
         
  // Validação de email basica //
  if ( !filter_var($email,FILTER_VALIDATE_EMAIL) ) {
   $errors[] = "Por favor introduza um e-mail válido.";
  } else {
   // Verificar se o email já é existente //
   $query = "SELECT Email FROM clientes WHERE Email='$email'";
   $result = mysqli_query($connection,$query);
   $count = mysqli_num_rows($result);
   if($count!=0){
    $errors[] = "O e-mail que introduziu já está em uso.";
   }
  }

        
        
        
  // Validação de nome basica //

  if (empty($nome)) {
   $errors[] = "Por favor introduza o seu nome completo.";
  } else if (strlen($nome) < 3) {
   $errors[] = "O nome deverá ter pelo menos 3 caracteres.";
  }
  
   
  //teste morada//
  
  if (empty($morada)) {
   $errors[] = "Por favor introduza a sua morada .";
  } else if (strlen($morada) < 3) {
   $errors[] = "Preencha a morada corretamente.";
  } 
  
  
 
  
  //teste telemovel //
   if (empty($telemovel)){
    $errors[] = "Por favor introduza o seu número de telémovel.";
  } else if(strlen($telemovel) < 9) {
   $error = true;
   $errors[] = "O telemovel deverá conter 9 dígitos.";
  }
  
 
  
  // Query //
    
        if( !count($errors) ) {
        $query = "INSERT INTO `clientes` (Nome, Morada, Telemovel, Email, Username, Password) VALUES ('$nome','$morada','$telemovel','$email','$username','$password')";
        $result = mysqli_query($connection, $query);
        // não funciona mysqli_set_charset($connection, "utf8"); 
        if($result){
            $success = true;
            $errors[] = "Utilizador registado com sucesso.";
        }else{
            $errors[] ="O registo falhou.";
        }
        }
    }
    
    //dropdown utilizadores logados
    function AddForLoggedInUsers(){

        if(!empty($_SESSION['Username']) ) { 
           $htm = '
            <div class="dropdown">
           <button2 href="#" class="dropdown-toggle" data-toggle="dropdown-menu" role="button" aria-haspopup="true" aria-expanded="false"><span class="fa fa-user-circle"></span> '. $_SESSION['Username'] .'</button2>
           <div class="dropdown-content">
            <a href="#"><span class="fa fa-shopping-cart"></span> Minhas Encomendas</a>
            
            <a href="login.php?link=sair"><span class="fa fa-sign-out"></span> Sair da Conta</a>
            </div>
            </div>    
            ';
        }else{
            $htm = '<a href="login.php" data-target="login.php" id="loginbtn"><span class="fa fa-user-circle"></span> Login</a>';
        }

        return $htm;
    }
    
?>

Basicamente o que eu queria era as encomendas a ir buscar o codcliente e mostrar as encomendas consoante o codcliente e quando faço um registo que os acentos e ç funcionem (Está UTF-8 na database)

Obrigado pela ajuda !

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Autista23

Pessoal corrigi o erro da inserção da base de dados com acentos etc já não necessito ajuda nessa parte apenas nas minhas encomendas

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.