Ir para conteúdo

POWERED BY:

Arquivado

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

P3rukao

Easy PHP Upload + AJAX

Recommended Posts

aew galera... achei um script muito massa pra fazer upload de arquivos... é o Easy PHP Upload.

Sendo que eu queria deixar os meus projetos mais dinamicos, e "acessiveis"... tipo... queria fazer que quando o cara fosse fazer o upload de algum arquivo... ele possa fazer as verificações(validaçoes) necessárias... e retornar os erros(alertas) se tiverem, via ajax, para que não haja a perda dos dados.... "que é mó xatu o cara ter que ficar digitando tudinovo!!!"

 

» Alguem saca como juntar as duas aplicações...???

» O que devo fazer (e como) pra fazer essas validações???

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa man xP ...

 

ae vai um exemplo de validacao ... eh so adpta ...

 

um cadastro por exemplo... aqui o cara vai digita o nome do usuario

<script src="../prototype.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">

function check(user)
{
   $('message').innerHTML='aguarde verificando...';
	var url = 'ajx_response_check.php?user='+user;
	new Ajax.Request(url,
		{   
		  onSuccess: function(transport) 
			{	 
			   $('message').innerHTML = transport.responseText;
			}
		 }); 
}
</script>

 

aqui ele verifica se o usuario ja existe e manda a resposta ...

<?php
//sleep(3);

if($_GET['user']!='')
{
  require("../Connections/conn.php");
  $sql = sprintf("select count(usuario) as qts from usuarios where usuario='%s'",$_GET['user']);
//  echo($sql);
  $res = mysql_query($sql,$conn);
  $data = mysql_fetch_assoc($res);
  
  if($data['qts'] == 1)
	  echo utf8_encode('Já está sendo usado!');
  else
   echo('OK!');
  
}else
 echo utf8_encode("Digite um usuário");
?>

valww espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara... até que eu saquei... mas na hora de montar aqui eu me embolei....

» Podes me dar um exemplo de validação básica mesmo com o ajax....???

 

Tipo... um form normal... com um campo (input) mesmo, e uma validação em outro script retornando uma mensagem de erro...

 

Acho que assim, já dá pra mim tentar caminhar sozinho!!! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

<script src="../prototype.js" type="text/javascript"></script> //adiciona o JSprototype
<script language="javascript" type="text/javascript"> //TAG

function check(user) //funcao que cheka o usuario
{
   $('message').innerHTML='aguarde verificando...'; // msg que ele mostra enquanto tive executando a funcao
	var url = 'ajx_response_check.php?user='+user; //a url do arquivo que vai faze essa verificacao
	new Ajax.Request(url, //estanciando objeto do JSprototype
		{  
		  onSuccess: function(transport) // se deu certo pegao resultado
			{	
			   $('message').innerHTML = transport.responseText; //mostra o resultado no lugar do aguardando 
			}
		 });
}
</script>

ajx_response_check.php

<?php
//sleep(3); // em localhost nen vai da pra ver o aguardando ... entao se quiser verificar manda ele para no estagio 3

if($_GET['user']!='') //
{
  require("../Connections/conn.php");
  $sql = sprintf("select count(usuario) as qts from usuarios where usuario='%s'",$_GET['user']); // comando sql
//  echo($sql);
  $res = mysql_query($sql,$conn);//executa a sql
  $data = mysql_fetch_assoc($res);// pega a linha associada
  
  if($data['qts'] == 1) // se tive uma linha ... ( se ja tive um usuario com esse nome )
	  echo utf8_encode('Já está sendo usado!');
  else //se nao 
   echo('OK!');
  
}else
echo utf8_encode("Digite um usuário"); //caso nao estiver nada na caixa
?>

link pro jsprototype ( meu upload )

http://rapidshare.com/files/210430631/prototype.js.html

 

 

valww espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Will, bacana o teu código, já estou olhando-o...

 

mas tow tentando entender uma outra coisa tbm....

tipo... eu monto o meu form... declaro o script do ajax no topo do meu index... e preparo para enviar...

mas eu queria por exemplo... enviar os dados pelo form quando o cara apertasse o botao de enviar (submit).... e isso poderia ser com varios campos inputs de meu form que precisassem ser validados... pois pretendo usar isso num form de upload de arquivos...

 

Pelo que vi... o ajax soh recebe os dados por GET... mas ele naum envia por POST tbm naum??? ô.õ

Compartilhar este post


Link para o post
Compartilhar em outros sites

ERM... mais ou menos... pelo que eu vi desse form.... ele apenas valida no javascript e exibe a janela com os erros.... poderia até ser nesse estilo.... mas achei esse aqui que acho que fica mais "pancada"... ;) http://www.alexandremagno.net/portfolio_dev/site/contato, tirado desse tuto (http://www.alexandremagno.net/blog/2008/01/22/ajax-form/)... ele é perfeito pra maioria das aplicações com ajax... no quesito formulario eu digo...

 

Outro massa que eu axei foi esse: http://tetlaw.id.au/view/javascript/really...ield-validation, http://www.rodrigopacheco.com/validacao-de...php/#comment-23...

 

 

 

No geral... queria soh entender mais uma coisa (axo =/):

 

» No ajax.... eu uso um script ajax... ou jquery... que monta a estrutura, com as requisições XMLHTTP(ou seja lá o que for).... e chamo uma página php que recebe os dados via GET, por exemplo (esse seria a mesma página que eu usaria pra minha validação antiga sem o ajax)...

Nessa minha página que recebe os dados... eu colocaria nas minhas mensagens que eu quisesse exibir... apenas um "echo algo"... dai essa minha mensagem seria mostrada na tela principal... num lugar que eu especificasse.... né isso???

 

» Mas no meu caso, eu tenho algummas páginas que exibem uma mensagem de sucesso ou erro... e redirecionam para outra página...

Se eu por o meu comando normal de redirecionar logo após o echo "texto", ou echo "<script>"... funcionaria tbm???

Compartilhar este post


Link para o post
Compartilhar em outros sites

puts ( hehe puts lembra ruby ^^) man ... tambem to comesando a aprende (na verdade ate agora so copiei codigo e adptei) ... nao saberia te responde ... alias to tomando um chocolate do AJAX des de hoje de manha por causa desse XMLHTTPRequest ...^^

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.