Ir para conteúdo

POWERED BY:

Arquivado

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

heltonitba

[Resolvido] Erro em um simples formulário

Recommended Posts

E ae galera, tudo tranquilo?

Estou tentando fazer este código simples funcionar, mas já me revirei e não estou conseguindo. Preciso da ajuda de vcs.

 

É o seguinte, a função "$.post();" não está conseguindo mandar as informações para "cadastroMembros.php"

 

 

 

O que está no arquivo: index.php

 

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

$(document).ready(function(){
jQuery("#form_membros").submit(function() {					
	var url		= $("#url").attr("value");
	var capitao     = $('#capitao').val();
	var area 	= $("input[name='area']:checked").val();

	$.post('cadastroMembros.php', 
                  {url: url, capitao:capitao, area:area}, 
                  function(data) {
		alert("FUNCIONOU")
				}
                 );


                 });
	 });				
</script>



........
........


<body>

       <form id="form_membros" method="post">     
               <div class="facebookURL">

		<input id="url" name="facebook" type="url" size="40"  />
		<input id="capitao" type="checkbox" name="capitao" value="1"/> Capitão
		<input id ="area" type="radio" name="area" value="gestao" /> Gestão<br />
		<input id ="area" type="radio" name="area" value="eletronica" /> Eletrônica<br />
		<input id ="area" type="radio" name="area" value="mecanica" /> Mecânica<br />
		<input class="botao" type="submit" value="Enviar" />

	</div> 
       </form>
   </body>


 

 

 

 

cadastroMembros.php

 

<?
include("../config.php"); // arquivo de conexão ao banco	

$url                      =   $_POST['url'];
$capitao                  =   $_POST['capitao'];
$area                     =   $_POST['area'];

/* Funções */
$idName = getIDName($url); 
$IDface = (int)facebookID($idName);		
$nome = facebookName($IDface);
$photo = facebookPicture($IDface);



	mysql_query( "
			INSERT INTO membros SET
			nome						=	'".$nome."',
			facebookPhoto				        =	'".$photo."',
			facebookID					=	'".$IDface."',
			capitao						=	'".$capitao."'				
			;
	" ) or die(mysql_error());
?>

 

 

Quando substituo os valores dos " $_POST's " por variáveis, a inserção acontece perfeitamente.

Quando dou um "alert(url + capitao + area);", ele mostra que as variáveis estão preenchidas.

Já tentei usar a função $.ajax(); e continua a mesma coisa..

 

Não sei o que estou errando!!!

 

 

grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se "tudo" funciona, então qual o erro ?

 

vamos debugar:

 

function(data) {
     alert( data );
}

 

e no php coloque um:

var_dump( $_POST );

 

veja se as variaveis chegam corretamente no alert

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem nenhuma ação.

 

Adicionei um alert após o "var area = ....."

 

alert(url + capitao + area);

 

Ele mostrou todas as variáveis, corretamente.

 

Mas o alert dentro do $.post não mostra nada:

 

$.post('cadastroMembros.php', {url: url, capitao:capitao, area:area}, function(data) {
					alert(data);

				});

 

 

Do mesmo jeito ocorre com o var_dump($_POST);

 

Até usei a função $().html(data), para ver se imprimia dentro de uma ID, mas sem sucesso também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem nenhuma ação.

então a requisição está falhando.

 

http://wbruno.com.br/2011/04/14/como-debugar-ajax-firebug/

http://wbruno.com.br/2011/03/31/como-debugar-javascript-firefox-erros-comuns/

 

acompanhe pelo Firebug, aba REDE subaba XHR oque está acontecendo com o teu ajax.

Compartilhar este post


Link para o post
Compartilhar em outros sites

William, valeu, seus links me ajudaram.

 

Mais eu consegui apenas quando mudeis 3 intens:

 

1º - Retirar o formulário e trocar por um botão.

<input type="button" id="envia" value="Enviar" />

 

 

2º - Com essa mudança, a ação mudou de "submit" para "click"

e a adição do dataType "html" no final do $.post(); de acordo com o link

 

 $.post("cadastroMembros.php",{ url: varUrl, capitao: varCapitao, area:varArea},
				function(data){
				loadMembros();
			}, "html"); 

 

3º - Mudança no nome das variáveis. Em vez de:

{url: url, capitao: capitao, area:area}

mudou para:

{url: varUrl, capitao: varCapitao, area:varArea}

 

Pois ele não conseguia identificar, muito estranho!!!

 

É isso ai, valeu!

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.