Jump to content
Sign in to follow this  
Hijack

Registo de utilizador - não insere o nome da imagem.

Recommended Posts

Hijack

Boa noite, uma vez mais venho pedir a vossa ajuda.

Ao adicionar um novo utilizador preencho todos os campos e selecciono uma imagem que será a foto da pessoa em questão, o problema é que todos os dados são gravados excepto o nome do ficheiro e não estou a conseguir dar com o erro.

Aqui está o código:

head.php

<!DOCTYPE html>
<html lang="Pt">
 <head>
   <title>Painel de Administração</title>

   <link rel="stylesheet" href="css/layout.css" type="text/css" media="screen" />
   <link rel="stylesheet" href="css/managefiles.css" type="text/css" media="screen" />
   <!--[if lt IE 9]>
   <link rel="stylesheet" href="css/ie.css" type="text/css" media="screen" />
   <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
   <![endif]-->
   <!-- <script src="js/jquery-1.5.2.min.js" type="text/javascript"></script> -->
   <script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
   <script src="js/hideshow.js" type="text/javascript"></script>
   <script src="js/jquery.tablesorter.min.js" type="text/javascript"></script>
   <script type="text/javascript" src="js/jquery.equalHeight.js"></script>
   <script type="text/javascript" src="js/jquery-validate.js"></script>
   <script type="text/javascript" src="js/jquery-validate-messages-pt.js"></script>
   <script type="text/javascript" src="js/geral.js"></script>
   <!--<script type="text/javascript" src="js/tips.js"></script>-->
<!-- Place inside the <head> of your HTML -->
<script type="text/javascript" src="js/tinymce/tinymce.min.js"></script>
<script type="text/javascript">
tinymce.init({
   selector: "textarea#elm1",
   theme: "modern",
   language : 'pt_PT',
   width: 625,
   height: 250,
   plugins: [
        "advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker",
        "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
        "save table contextmenu directionality emoticons template paste textcolor"
  ],
  content_css: "css/content.css",
  toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | l      ink image | print preview media fullpage | forecolor backcolor emoticons", 
  style_formats: [
       {title: 'Bold text', inline: 'b'},
       {title: 'Red text', inline: 'span', styles: {color: '#ff0000'}},
       {title: 'Red header', block: 'h1', styles: {color: '#ff0000'}},
       {title: 'Example 1', inline: 'span', classes: 'example1'},
       {title: 'Example 2', inline: 'span', classes: 'example2'},
       {title: 'Table styles'},
       {title: 'Table row 1', selector: 'tr', classes: 'tablerow1'}
   ]
}); 
</script>

<script type="text/javascript">
   $(document).ready(function() 
       { 
           $(".tablesorter").tablesorter(); 
       } 
   );
   $(document).ready(function() {
   //Quando a pagina carrega...
   $(".tab_content").hide(); //Esconde o conteudo
   $("ul.tabs li:first").addClass("active").show(); //Activa a primeira tab
   $(".tab_content:first").show(); //Mostra o conteudo da primeira tab
   //Evento On Click
   $("ul.tabs li").click(function() {
       $("ul.tabs li").removeClass("active"); //Remove qualquer class "activa"
       $(this).addClass("active"); //Adiciona class "activa" ao tab seleccionado
       $(".tab_content").hide(); //Esconde  todo o conteudo da tab
       var activeTab = $(this).find("a").attr("href"); 
       $(activeTab).fadeIn(); //Fade in 
       return false;
   });
});
   </script>
   <script type="text/javascript">
   $(function(){
       $('.column').equalHeight();
   });
</script>
<script type="text/javascript">
 $(document).ready(function(){
   $(".btn").click(function(){
         var foto            = $("#foto").val();
         var nome            = $("#nome").val();
         var apelido        = $("#apelido").val();
         var email          = $("#email").val();
         var telefone        = $("#telefone").val();
         var telemovel       = $("#telemovel").val();
         var tel_trab        = $("#tel_trab").val();
         var senha            = $("#senha").val();
         var morada         = $("#morada").val();
         var cod_postal     = $("#cod_postal").val();
         var estado         = $("#estado").val();
         var id_funcao       = $("#id_funcao").val();
         var id_turma       = $("#id_turma").val();
         var id_ano            = $("#id_ano").val();          
         $(".retorno").html('<img src="images/loader.gif" alt="" />');
      $.ajax({  
         type: "POST",  
         url: "ajax/valida-cadastro.php",  
         data: "&foto="+ foto + "&nome="+ nome + "&apelido="+ apelido + "&email="+ email + "&telefone="+ telefone + "&telemovel="+ telemovel + "&tel_trab="+ tel_trab + "&senha="+ senha + "&morada="+ morada + "&cod_postal="+ cod_postal + "&estado="+ estado + "&id_funcao="+ id_funcao + "&id_turma="+ id_turma + "&id_ano="+ id_ano, 
         success: function(html){
             $(".retorno").html(html);
         }
     });
     return false;
   });
 });
</script>
</head>

novoutilizador.php

<?php

include('conexao/config.php');

// A sessão precisa ser iniciada em cada página diferente
if (!isset($_SESSION)) session_start();

$nivel_necessario = 1;
$nivel_modo = 1;
// Verifica se não há a variável da sessão que identifica o usuário
if (!isset($_SESSION['UsuarioID']) OR ($_SESSION['UsuarioNivel'] < $nivel_necessario) OR ($_SESSION['UsuarioModo'] < $nivel_modo)) {
   // Destrói a sessão por segurança
   session_destroy();
   // Redireciona o visitante de volta pro login
   header("Location: ../login.php"); exit;
}

include ('sistema/core/head.php'); 

?>

<body>

<?php 
include 'includes/usertopbar.php'; ?>
   <!-- sidebar -->
<?php include'includes/asidesideb.php'; ?>
   <!-- fim da sidebar -->

<section id="main" class="column">
   <?php 

            @$emsg = $_GET['emsg'];
                switch ($emsg):
                   case 1:
                       echo '<h4 class="alert_success">Utilizador criado com sucesso.</h4>';
                       break;
                   case 2:
                       echo '<h4 class="alert_warning">Todos os campos são obrigatórios.</h4>';
                       break;
                   case 3:
                       echo '<h4 class="alert_warning">Tem de atribuir um estatuto.</h4>';
                       break;
                   case 4:
                       echo '<h4 class="alert_warning">Não foi possivel criar o utilizador, contacte o técnico</h4>';
                       break;
                   case 5:
                       echo '<h4 class="alert_warning">Falha ao carregar imagem, contacte o técnico</h4>';
                       break;
                       case 6:
                       echo '<h4 class="alert_error">O email fornecido já se encontra em uso, por favor escolha outro.</h4>';
                       break;
                       case 7:
                       echo '<h4 class="alert_warning">Tem de atribuir uma turma.</h4>';
                       break;
                   default:
                       echo '<h4 class="alert_info">Registe um novo utilizador!</h4>';
                       break;
               endswitch;
         ?> 

         <div id="caixa"><!-- Inicio da caixa -->

           <div id="conteudo">
 <div class="titulo">Registo de novos utilizadores</div>
 <div class="div">
   <table border="0" cellpadding="0" cellspacing="5px">

     <tr>
     <td>Função:</td>
       <td>
         <?php
           $sql = "SELECT id_funcao, funcao FROM funcoes;";
           $query = mysql_query($sql);
           ?>
               <select name="id_funcao" id="id_funcao" style="width:55%;">
                   <option value="">Selecione uma Função</option>
               <?php
                   while ($resultado = mysql_fetch_assoc($query)){
                   echo "<option value=". $resultado['id_funcao'] .">". $resultado['funcao'] ."</option>";
               }
                   ?>
               </select>
       </td>
     </tr>
     <tr>
     <td width="105">Fotografia:</td>
       <td><input type="file" id="foto" name="foto" value="" /></td>
     </tr>
     <tr>
     <td width="105">Nome completo:</td>
       <td><input type="text" id="nome" name="nome" value="" /></td>
     </tr>
     <tr>
     <td>Apelido:</td>
       <td><input type="text" id="apelido" name="apelido" value="" /></td>
     </tr>
     <tr>
     <td>E-mail:</td>
       <td><input type="text" id="email" name="email" value="" /></td>
     </tr>
     <tr>
     <td>Telefone:</td>
       <td><input type="text" id="telefone" name="telefone" value="" /></td>
     </tr>
      <tr>
     <td>Telemovel:</td>
       <td><input type="text" id="telemovel" name="telemovel" value="" /></td>
     </tr>
      <tr>
     <td>Telefone trabalho:</td>
       <td><input type="text" id="tel_trab" name="tel_trab" value="" /></td>
     </tr>
      <tr>
     <td>Senha:</td>
       <td><input type="button" id="genPass" value="Gerar Senha!"><br /><input type="password" id="senha" name="senha" style="width:180px;" onchange= "return passwordValidation(this)"></td>
     </tr>
       <tr>
     <td>Morada:</td>
       <td><input type="text" id="morada" name="morada" value="" /></td>
     </tr>
       <tr>
     <td>Codigo Postal:</td>
       <td><input type="text" id="cod_postal" name="cod_postal" value="" /></td>
     </tr>
     <tr>
     <td>Ano:</td>
       <td>
      <?php
                               $sql = "SELECT id_ano, ano_escolaridade FROM anoescolaridade;";
                               $query = mysql_query($sql);
                               ?>
                           <select name="id_ano" id="id_ano" style="width:55%;">
                               <option value="">Atribua um Ano</option>
                               <?php
                               while ($resultado = mysql_fetch_assoc($query)){


                       echo "<option value=". $resultado['id_ano'] .">". $resultado['ano_escolaridade'] ."</option>";
               }
               ?>
                           </select>
     </tr>
     <tr>
     <td>Turma:</td>
       <td>
     <?php
                               $sql = "SELECT id_turma, turma FROM turmas;";
                               $query = mysql_query($sql);
                               ?>
                           <select name="id_turma" id="id_turma" style="width:55%;">
                               <option value="">Atribua uma Turma</option>
                               <?php                

                                   while ($resultado = mysql_fetch_assoc($query)){


                       echo "<option value=". $resultado['id_turma'] .">". $resultado['turma'] ."</option>";
               }
               ?>
                           </select>
     </tr>
      <tr>
              <td>Ativar conta:</td>
              <td>
               <select name="estado" id="estado" style="width:55%;">
                   <option value="inativo">Inativo</option>
                   <option value="ativo">Ativar</option>
               </select>
           </td>
      </tr>
   </table>
   <div class="retorno"></div>
   <input type="button" class="btn" value="Cadastrar" /> <input type="reset" class="btn" value="Limpar" />
 </div>
</div><!--conteudo--> 

  <div class="clear"></div>



       </div><!-- Fim da caixa -->
<?php 
include('sistema/core/footer.php');
?>

valida-cadastro.php

<?php


// A sessão precisa ser iniciada em cada página diferente
if (!isset($_SESSION)) session_start();

$nivel_necessario = 1;
$nivel_modo = 1;


// Verifica se não há a variável da sessão que identifica o usuário
if (!isset($_SESSION['UsuarioID']) OR ($_SESSION['UsuarioNivel'] < $nivel_necessario) OR ($_SESSION['UsuarioModo'] < $nivel_modo) /*OR ($_SESSION['UsuarioEstatuto'] === FALSE)*/) {
   // Destrói a sessão por segurança
   session_destroy();
   // Redireciona o visitante de volta pro login
   echo "<meta http-equiv='refresh' content='0; url=../../login.php'>"; exit(); 
}

 sleep(1);
 include"../conexao/config.php";
 require('../phpmailer/config.php');

 // POST's
 $email  = strip_tags(trim(mysql_escape_string($_POST['email'])));
 $nome   = strip_tags(trim(mysql_escape_string($_POST['nome'])));
 $apelido   = strip_tags(trim(mysql_escape_string($_POST['apelido'])));
 $morada   = strip_tags(trim(mysql_escape_string($_POST['morada'])));
 $cod_postal = strip_tags(trim(mysql_escape_string($_POST['cod_postal'])));
 $telefone = strip_tags(trim(mysql_escape_string($_POST['telefone'])));
 $telemovel = strip_tags(trim(mysql_escape_string($_POST['telemovel'])));
 $teltrabalho = strip_tags(trim(mysql_escape_string($_POST['tel_trab'])));
 $funcao = $_POST['id_funcao'];
 $turma = $_POST['id_turma'];
 $ano_escola = $_POST['id_ano'];
 $senha  = strip_tags(trim(mysql_escape_string($_POST['senha'])));
 $estado = strip_tags(trim(mysql_escape_string($_POST['estado'])));
 $encrypt = hash('sha512', $senha);
 $codigo = hash('sha512', $email);

 $foto     = ($_FILES['foto']['name']);
 $pasta = "../fotoperfil/";
 $pasta = $pasta . basename( $_FILES['foto']['name']);

 // VERIFICA SE O E-MAIL ESTÁ CADASTRADO
 $verifica = mysql_query("SELECT * FROM paineladm_usuarios WHERE email = '".$email."'") or die("Erro ao consultar!");

if(empty($email)){
 echo 'Introduza o email!';
}elseif(empty($nome )){
 echo 'Introduza o nome!';
}elseif(empty($apelido)){
 echo 'Introduza o apelido!';
}elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)){
 echo 'Introduza um e-mail válido!';
}elseif(empty($telefone)){
 echo 'Introduza o numero de telefone!';
}elseif(empty($telemovel)){
 echo 'Introduza o numero de telemovel!';
}elseif(empty($teltrabalho)){
 echo 'Introduza o numero de telefone do local de trabalho!';
}elseif(empty($senha)){
 echo 'Introduza uma senha!';
}elseif(empty($morada)){
 echo 'Introduza a morada!';
}elseif(empty($cod_postal)){
 echo 'Forneça o codigo postal!';
}elseif(mysql_num_rows($verifica) >= 1){
 echo 'O e-mail já se encontra registado!';
}else{

 $codigo = hash('sha512', $email);
 $data   = date('d/m/Y H:i');

 $assunto = 'Conta de acesso criada';

 // Mensagem de texto para o remetente //
 $mensagem = "
 Olá <strong>$nome $apelido</strong>, foi criada uma conta no sistema de gestão de conteudos do site do $tituloBase!
 <br />
 Dados de acesso ao painel de administração, por favor conserve esta mensagem.
 <br />
 <br />
 <p><strong>Painel de administração:</strong> <a href=\"$urlBase/login.php\">login.php</a>
 <br />
 <p><strong>Utilizador:</strong> $email
 <br />
 <strong>Senha:</strong> $senha </p>
 <br /> 
 <p><strong>Função:</strong> $funcao
 <br />
 <strong>Turma:</strong> $turma 
 <br />
 <strong>Ano:</strong> $ano_escola </p>
 <br />
 <a href=\"$urlBase/confirma.php?email=$email&codigo=$codigo\">Ativar Conta</a>
 <br />
 <br />
 Atenciosamente: <strong>$tituloBase</strong>
 <br />
 <br />
 Enviado em: $data
 <br />
 <br />
 Esta mensagem foi enviada automaticamente. <strong>Por favor não responda a este e-mail</strong>.
 O endereço de e-mail é usado exclusivamente para o envio de e-mails.";

 // Envia a mensagem para o remetente //
 sendMail($assunto, $mensagem, $emailBase, $tituloBase, $email, $email);

  $cadastra = mysql_query("INSERT INTO paineladm_usuarios(foto, nome, apelido, email, telefone, telemovel, tel_trab, senha, morada, cod_postal, estado, id_funcao, id_turma, id_ano, datacad, codigo) VALUES ('$foto', '$nome', '$apelido', '$email', '$telefone', '$telemovel', '$teltrabalho', '{$encrypt}', '$morada', '$cod_postal', '$estado', '$funcao', '$turma', '$ano_escola', NOW(), '{$codigo}')");

 echo '<font color="#009933">Foi enviado para o e-mail do utilizador, um link para ativação da conta!</font>';
?>
<script type="text/javascript">
 $(document).ready(function(){
     $("#foto").val('');
   $("#nome").val('');
   $("#apelido").val('');
   $("#email").val('');
   $("#telefone").val('');
   $("#telemovel").val('');
   $("#tel_trab").val('');
   $("#senha").val('');
   $("#morada").val('');
   $("#cod_postal").val('');
   $("#estado").val('');
   $("#id_funcao").val('');
   $("#id_turma").val('');
   $("#id_ano").val('');

 });
</script>
<?php }?>

Se alguém me puder ajudar agradeço.

Abraço a todos

Edited by Hijack

Share this post


Link to post
Share on other sites
HappyHippyHippo

não estás a enviar o ficheiro ... ajax não serve para esse tipo de situação

Edited by HappyHippyHippo

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Hijack

Obrigado por ter respondido HappyHippyHippo

Então neste caso tenho de retirar a parte do ajax e utilizo um formulario normal é isso?

Edited by Hijack

Share this post


Link to post
Share on other sites
HappyHippyHippo

existem plugins do jquery para envio asincrono de ficheiros.

caso contrário, terás mesmo de fazer um formulário normal ou usar html5 + FileAPI


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Hijack

Ok, obrigado uma vez mais HappyHippyHippo, vou pesquisar melhor sobre esses plugins e depois volto aqui para mostrar os resultados e fechar o tópico.

Obrigado uma vez mais.

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
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.