Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

T.P.

Recuperar nome de usuario do session

Recommended Posts

Estou fazendo um sistema de upload via ftp que joga os arquivos pra uma pasta conforme o nome do usuário logado, pois bem o upload está perfeito, o login também está funcionando certinho, porém não estou conseguindo recuperar o nome do usuário... Como faço isso?

 

tentei já com esse código e nada de aparecer...

 

<?  session_start();   echo $_SESSION["loginz"] = $login;echo "$login";?>

Desde já agradeço a ajuda.... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
  xavrim disse:

Para quê você está dando echo?

echo $_SESSION["loginz"] = $login;
Na verdade peguei de algum tópico onde tinha a mesma duvida aqui no imasters.... vou tentar inserir no inicio do código então, a seção está sendo criada corretamente porque o login está 100% funcional..... Quanto a letras maiusculas não estão sendo usadas.....Alguem sabe se o servidor tem como desabilitar o resgate de dados das sesions, estou testando isso on-lineValores sendo puxados pra criação da session
$login = $_POST['login'];$senha = $_POST['senha'];
Antes que falem que é o z no final do login aquilo ali foi erro de digitação quando passei aqui pro imasters o código....Uma pergunta se no login tiver um array liberando os dados pra consulta tem como eu recuperar eles, porque estou achando que é o servidor, meu colega aqui teve o mesmo problema quando tentou recuperar dados no sistema dele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Calma T.P,grita não. relaxa :Dbem no servidor so se tiver com algum erro de configuração. mais bem vamos la. no inicio da página você está inicializando a sessão ou ela esta entre tags html????se tiver altera e coloca no topo da pagina. antes de qualquer tag html.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Bruno Capella disse:

Calma T.P,grita não. relaxa :Dbem no servidor so se tiver com algum erro de configuração. mais bem vamos la. no inicio da página você está inicializando a sessão ou ela esta entre tags html????se tiver altera e coloca no topo da pagina. antes de qualquer tag html.

O grito foi pra vcs notarem a duvida.... http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif A abertura da session é a primeira coisa que está no código porque é uma página restrita protegida pelo login....

Compartilhar este post


Link para o post
Compartilhar em outros sites

vamos fazer uma coisa pra não perder mais tempo. posta seu codigo de login, seu codigo de verificação se es´ta ou nao logado e a pagina que você quer que seja mostrado o nome. assim vai facilitar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Login, só ta faltando ai a configuração com a bd que não nos interresa nese caso.

//Define as váriaveis e recebe os valores do formulário$login = $_POST['login'];$senha = $_POST['senha'];//Inclui o script do SQL Shieldinclude 'sql_shield.php';//Bloquea o método GET , isto previne acesso direto ao arquivo ou envio dos dados pela URL bloquear_get();//Verifica se existem elementos usados em SQL  sql_banlist();  //Algum campos ficou em branco? if(empty($login) || empty($senha)) {   exit("<script>alert('Alguns campos estão em branco')</script><script>history.go(-1)</script>");  }//Verificar se existem simbolos nas variaveis $senha e $login  if((eregi("[^0-9a-zA-Z]", $login)) ||	(eregi("[^0-9a-zA-Z]", $senha))) 	{  exit("<script>alert('Simbolos ou caracteres especiais não são permitidos , favor usar somente letras ou números nos campos')</script><script>history.go(-1)</script>");  }//Conecta ao servidor MySQL$conectar = mysql_connect("$SQLHOST","$SQLLOGIN","$SQLPASS");$db = mysql_select_db($DATABASE,$conectar);  //Cria um array dos valores prontos para serem consultados$loginz = array_fill(5,6, $login);$mysql1 = array();$senhaz = array_fill(5,6, $senha);$mysql2 = array();//Previne que os dados alterem o estado da query$mysql1['login'] = mysql_real_escape_string($loginz['6']);$mysql2['senha'] = mysql_real_escape_string($senhaz['6']);//Procura os valores no banco de dados$login_check = mysql_query("SELECT login FROM usuarios WHERE login='{$mysql1['login']}'");$resultados_login = mysql_num_rows($login_check);$senha_check = mysql_query("SELECT senha FROM usuarios WHERE login='{$mysql1['login']}' AND senha='{$mysql2['senha']}'");$resultados_senha = mysql_num_rows($senha_check);//Exibe alertas e retorna a operação caso os valores estejam incorretosif (($resultados_login <= 0) || ($resultados_senha <= 0)) { echo "<script>alert('Nome ou senha incorreto')</script><script>window.location='login.php'</script>"; }else {session_start();$_SESSION["ses_login"]=$login;echo "<script>window.location.href='painel.php'</script>";}//Fecha a conexão com o MySql , exibe o alerta de sucesso e redireciona para a página de loginmysql_close();?>

 

 

Script de upload onde estou querendo pegar o login do session pra setar a página

<?session_start();// Verifica se o usuário efetuou login e se a sessão existeif (!isset($_SESSION["ses_login"])) {exit("<script>window.location.href='login.php'</script>");}?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><link rel="stylesheet" href="css.css" type="text/css" /><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Feek - Área Restrita</title></head><body><div id="geral"><div id="menu"><img src="imagens/upload.gif" /> <li><a href="painel.php" target="_self">Enviar Arquivos</a></li><img src="imagens/separador.gif" /><img src="imagens/email.gif" /> <li><a href="newsletter.php" target="_self">Controle Neswletter</a></li></div><div id="centro"><div id="arquivo"><form name="frmFtp" method="post" enctype="multipart/form-data"><input name="arquivo" type="file" size="55" maxlength="55"><br /><input type="submit" name="btnEnviar" value="Enviar"></form></div><div id="texto"> <h1> Observações</h1>Tamanho Máximo 200 MB<br />	Tipos de Arquivos: .ZIP, .RAR e .PDF<br />  </p>  //Aqui é onde quero exibir o nome do login só para ver se ele está pegando pra depois jogar ele lá no endereço da pasta//<?  session_start();   $login = $_SESSION["login"];echo "$login";?></div></div></div>						 						   </body></html> <? $server = "ftp.*****.com.br";     $usuario = "******";     $senha  = "*******";   //VERIFICA SE O FORM FOI ENVIADO PARA CONECTAR E ENVIAR O ARQUIVO AO FTP if($_POST) {     //RECEBE O ARQUIVO  $arqName = $_FILES[arquivo][name];    $arqTemp = $_FILES[arquivo][tmp_name];      //CONECTA AO FTP  $conn = ftp_connect($server)  or die ("ERRO AO CONECTAR AO SERVIDOR DE FTP ".$server); //TENTA EFETUAR O LOGIN COM USUÁRIO E SENHA DE ACESSO  if(@ftp_login($conn, $usuario, $senha) ) {  //ENVIA O ARQUIVO   $status = ftp_put($conn, '/public_html/restrito/'.$arqName, $arqTemp, FTP_ASCII);     //VERIFICA SE O ARQUIVO FOI ENVIADO  if($status) { 	echo "<div id=\"msg\">O arquivo <strong>$arqName</strong> foi enviado com Sucesso!</div>";    }//FECHA IF ( status )   else { 	echo "<div id='msg'>Erro! Aconteceu algum problema no envio do arquivo.</div>";    }//FECHA ELSE 	}//FECHA IF (LOGIN)	else {   echo "<div id='msg'>Não foi possível efetuar a conexão. Verifique o usuário e a senha de acesso.</div>";	}//FECHA ELSE		//TERMINA A EXECUÇÃO	die;   }//FECHA IF ( POST ) ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

ae é erro de digitação. olha como ta sendo criada a seua sessão $_SESSION["ses_login"]=$login;olha como você ta reuperando. $login = $_SESSION["login"];ta vendo o erro. tenta assim. login = $_SESSION["ses_login"];

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vixi é mesmo... mas eu peguei isso pronto.... valew pela ajuda...

 

Agora deu certo.....

 

porém surgiu outro problema

 

$status = ftp_put($conn, '/public_html/restrito/$login/'.$arqName, $arqTemp, FTP_ASCII);

No lugar de adicionar o nome do usuario no lugar do $login ele esta adicionando o $login na frente do nome do arquivo, ele nem se quer esta colocando o nome do usuario, retirando dali fica tudo normal no upload

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu to querendo que o arquivo seja jogada pra uma pasta com o mesmo nome do login usado pra acessar a página... no caso estava usando o $login pra que ele jogase o nome do login do cara ali, porém no lugar de fazer isso ele acrencentar $login ao nome do arquivo...Por exemploo arquivo bg1.gif era pra ser enviado pra pasta /restrito/adminPorém ele foi enviado para /restrito e foi renomeado para $loginbg1.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse é o caminho né $status = ftp_put($conn, '/public_html/restrito/'.$arqName, $arqTemp, FTP_ASCII);tenta assim. $status = ftp_put($conn, '/public_html/restrito/$login/'.$arqName, $arqTemp, FTP_ASCII);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu tentei assim, mas ai ele enfiou o $login na frente do nome do arquivo e jogou em uma pasta abaixo ¬¬

Compartilhar este post


Link para o post
Compartilhar em outros sites

então vamos la$login = $_SESSION["ses_login"];$diretorio = "/public_html/restrito/";$dir_final = $diretorio.login."/";ftp$status = ftp_put($conn,$dir_final.$arqName, $arqTemp, FTP_ASCII);tenta assim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte erro e nada de upload, volto a afirmar que deixando só /public_html/restrito/ vai tranquilo o upload....Warning: ftp_put() [function.ftp-put]: Rename/move failure: No such file or directory in /home/freek/public_html/restrito/painel.php on line 84to começando a achar que a função ftp_put só aceita caminho direto....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.