Ir para conteúdo

POWERED BY:

Arquivado

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

KMRodrigo

[Resolvido] Problema com Tabela Dinamica

Recommended Posts

Galera já tive problemas com essa função antes, o Willian Bruno que me passou a função, ele me ajudou a arruma-la me ensinando sobre this e etc. Hoje eu consigo ler a função e entender todos os comando mas está dando um erro esquisito vamos lah

 


<?php

if( $_SERVER['REQUEST_METHOD']=='POST' )
{
$SE_numServico2 = $_POST["SE_numServico"];
$SE_emitente2 = $_POST["SE_emitente"];

mysql_connect("localhost", "root", "");  
mysql_select_db("leadersystem");
	$sql = "INSERT INTO nf_servicos ( id, SE_unidade, SE_quantidade, SE_discriminacao, SE_valorUnitario, SE_ISS, SE_IRRF, SE_numServico, SE_emitente) VALUES ";

	$values = Array();
	for( $i=0; $i<count( $_POST['SE_unidade'] ); $i++ )
	{
		$values[] = "(NULL, '".filter( $_POST['SE_unidade'][$i] )."',
				'".filter( $_POST['SE_quantidade'][$i] )."' ,
				'".filter( $_POST['SE_discriminacao'][$i] )."' ,
				'".filter( $_POST['SE_valorUnitario'][$i] )."' ,
				'".filter( $_POST['SE_ISS'][$i] )."' ,
				'".filter( $_POST['SE_IRRF'][$i] )."','$SE_numServico2', '$SE_emitente2')";
	}
	mysql_query ($sql.implode( ',', $values ));
	echo "<script>alert('Salvo Com sucesso');</script>"; 
}

function filter( $str ){
return addslashes( $str );//deixo demais filtros e validações por sua conta
}
?>

<?php 
include("seguranca.php"); // Inclui o arquivo com o sistema de segurança
protegePagina(); // Chama a função que protege a página
include("style/funcao.php");	
$SE_numServico = $_GET["numServico"];
$SE_emitente = $_GET["emitente"];

?>


<html>
<head>
<link rel="stylesheet" type="text/css" href="style/style.css" />





<script type="text/javascript">
$(document).ready(function(){
$('#form_prepare').submit(function(){
	var $this = $( this );

	var SE_unidade = $this.find("input[name='SE_unidade']").val(),
		SE_quantidade = $this.find("input[name='SE_quantidade']").val(),
		SE_discriminacao = $this.find("input[name='SE_discriminacao']").val();
		SE_valorUnitario = $this.find("input[name='SE_valorUnitario']").val(),
		SE_ISS = $this.find("input[name='SE_ISS']").val(),
		SE_IRRF = $this.find("input[name='SE_IRRF']").val();


		var tr = '<tr>'+ 
                       '<td bgcolor="#63B8FF">'+SE_unidade+'</td>'+
                       '<td bgcolor="#63B8FF">'+SE_quantidade+'</td>'+
				    '<td bgcolor="#63B8FF">'+SE_discriminacao+'</td>'+
				    '<td bgcolor="#63B8FF">'+SE_valorUnitario+'</td>'+
				    '<td bgcolor="#63B8FF">'+SE_ISS+'</td>'+
				    '<td bgcolor="#63B8FF">'+SE_IRRF+'</td>'+
                       '<td width ="3px" bgcolor="red" class="excluir"><img src="Style/del.png"></td>'+
                       '<td style="display:none"><input type="hidden" name="SE_unidade[]" value="'+SE_unidade+'" />'+
                       '<input type="hidden" name="SE_quantidade[]" value="'+SE_quantidade+'" /></td>'+
                       '<input type="hidden" name="SE_discriminacao[]" value="'+SE_discriminacao+'" /></td>'+
                       '<input type="hidden" name="SE_valorUnitario[]" value="'+SE_valorUnitario'" /></td>'+
                       '<input type="hidden" name="SE_ISS[]" value="'+SE_ISS+'" /></td>'+
					'<input type="hidden" name="SE_IRRF[]" value="'+SE_IRRF+'" /></td>'+
                       '</tr>'; 





	$('.excluir').live('click',function(){
	$( this ).parent('tr').remove();
	});				

    	$('#grid').find('tbody').append( tr );

	return false;
});
});
</script>



<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Leader System</title>

</head>
<body onload="horizontal();">
<div id="center">



<form action="" method='post' id="form_prepare">




		<center><fieldset>

		<label>Unidade: <input type="text" name="SE_unidade" /></label>
			<label>Quantidade: <input type="text" name="SE_quantidade" /></label>
			<label>Discriminação: <input type="text" name="SE_discriminacao" /></label>
			<label>Valor Unitário: <input type="text" name="SE_valorUnitario" /></label>
			<label>ISS: <input type="text" name="SE_ISS" /></label>
			<label>IRRF: <input type="text" name="SE_IRRF" ></label>

			<label><input type="submit" name="ok" value="Ok" /></label>
		</fieldset></center>
	</form><!-- /form_prepare -->


<form action="" method="post" id="form_insert">
	<table id="grid" border = "1" align="center" width ="50%" >
		<thead>
			<tr>
				<th bgcolor="#1874CD" >Unidade</th>
				<th bgcolor="#1874CD" width="10%" >Qtde</th>
				<th bgcolor="#1874CD" width="10%" >Discriminação</th>
				<th bgcolor="#1874CD" width="10%" >V. Unitario</th>
				<th bgcolor="#1874CD" width="10%" >ISS</th>
				<th bgcolor="#1874CD" >IRRF</th>
			</tr>
		</thead>
		<tbody>
		</tbody>
	</table><!-- /grid -->

		<tr>

	<td><input name="SE_emitente" type="text"  id="SE_emitente" size="10" maxlength="100"value="<?php 
			echo $SE_emitente;

		?>" > </td>
	<td><input name="SE_numServico" type="text" id="SE_numServico" size="10" maxlength="100" value="<?php echo $SE_numServico;?>" ></td>

</tr>	
	<br>
		<center><fieldset ></fieldset>
		<label><input type="submit" name="cadastrar" value="Cadastrar" /></label>
	</center></form>




</div>

</body>
</html>

 

quando eu clico no "ok" para adicionar campo a tabela ele cai na condição do IF lah de cima, porém em outra página q uso isso ele n cai na condição clicando no OK (form_prepare). E se eu retirar aquela função do IF que cai no BD simplesmente ele recarrega a página quando clico no (form_prepare) sem acontecer nda, como se ele n funcionasse o $('#grid').find('tbody').append( tr );

Compartilhar este post


Link para o post
Compartilhar em outros sites

quando eu clico no "ok" para adicionar campo a tabela ele cai na condição do IF lah de cima,

if do php.

 

porém em outra página q uso isso ele n cai na condição clicando no OK (form_prepare).

mostre o código dessa outra página.

 

E se eu retirar aquela função do IF que cai no BD simplesmente ele recarrega a página quando clico no (form_prepare) sem acontecer nda, como se ele n funcionasse o $('#grid').find('tbody').append( tr );

não entendi absolutamente nada

 

você está confundindo as coisas, se aparecer o html virtual, então funcionou o append().

Compartilhar este post


Link para o post
Compartilhar em outros sites

obrigado bruno vou resumir o outro código aqui

 

Edit.

PHP e Javascript.




<?php



if( $_SERVER['REQUEST_METHOD']=='POST' )
{
$DE_referencia = $_POST["DE_referencia"];
$DE_numReferencia = $_POST["DE_numReferencia"];

mysql_connect("localhost", "root", "");  
mysql_select_db("leadersystem");
	$sql = "INSERT INTO despesas ( id, DE_descricao, DE_valor, DE_moeda, DE_referencia, DE_numReferencia) VALUES ";

	$values = Array();
	for( $i=0; $i<count( $_POST['DE_descricao'] ); $i++ )
	{
		$values[] = "(NULL, '".filter( $_POST['DE_descricao'][$i] )."',
				'".filter( $_POST['DE_valor'][$i] )."' ,
				'".filter( $_POST['DE_moeda'][$i] )."','$DE_referencia', '$DE_numReferencia')";
	}
	mysql_query ($sql.implode( ',', $values ));
	echo "<script>alert('Salvo Com sucesso');</script>"; 
}

function filter( $str ){
return addslashes( $str );
}
?>



<?php 
include("seguranca.php"); // Inclui o arquivo com o sistema de segurança
include("style/funcao.php");
protegePagina(); // Chama a função que protege a página
$CO_numReferencia = $_GET['numReferencia'];		


	?>


<html>
<head>
<iframe style="display:none;" name="recebForm" ></iframe>  
<link rel="stylesheet" type="text/css" href="style/style.css" />

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#form_prepare').submit(function(){
	var $this = $( this );

	var DE_descricao = $this.find("input[name='DE_descricao']").val(),
		DE_moeda = $this.find("input[name='DE_moeda']").val(),
		DE_valor = $this.find("input[name='DE_valor']").val();

		var tr = '<tr>'+ 
                       '<td bgcolor="#63B8FF">'+DE_descricao+'</td>'+
                       '<td bgcolor="#63B8FF">'+DE_moeda+'</td>'+
				    '<td bgcolor="#63B8FF">'+DE_valor+'</td>'+
                       '<td width ="3px" bgcolor="red" class="excluir"><img src="Style/del.png"></td>'+
                       '<td style="display:none"><input type="hidden" name="DE_descricao[]" value="'+DE_descricao+'" />'+
                       '<input type="hidden" name="DE_valor[]" value="'+DE_valor+'" /></td>'+
					'<input type="hidden" name="DE_moeda[]" value="'+DE_moeda+'" /></td>'+
                       '</tr>'; 





	$('.excluir').live('click',function(){
	$( this ).parent('tr').remove();
	});				

    	$('#grid').find('tbody').append( tr );

	return false;
});
});
</script>



 

HTML

<!----------------------------------------------Começa Auto Tabela ------------------------------------------->

<form action="" method="post" id="form_prepare">




		<center><fieldset>

		<label>Descricao: <input type="text" name="DE_descricao" /></label>
			<label>Valor: <input type="text" name="DE_valor" /></label>
			<label>Moeda: <input type="text" name="DE_moeda" size="5" value="U$$">    

					</label>

			<label><input type="submit" name="ok" value="Ok" /></label>
		</fieldset></center>
	</form><!-- /form_prepare -->


<form action="" method="post" id="form_insert">
	<table id="grid" border = "1" align="center" width ="40%" >
		<thead>
			<tr>
				<th bgcolor="#1874CD" >Descricao</th>
				<th bgcolor="#1874CD" width="10%" >Moeda</th>
				<th bgcolor="#1874CD" >Valor</th>
			</tr>
		</thead>
		<tbody>
		</tbody>
	</table><!-- /grid -->

		<tr>

	<td><input name="DE_numReferencia" type="number" style="display:none;" id="DE_numReferencia" size="4" maxlength="10"value="<?php 
			echo $CO_numReferencia;

		?>" > </td>
	<td><input name="DE_referencia" type="hidden" id="DE_referencia" size="10" maxlength="10" <?php echo "value='$mes-$year' ";?> ></td>

</tr>	
	<br>
		<center><fieldset style="display: none;"></fieldset>
		<label><input type="submit" name="cadastrar" value="Cadastrar" /></label>
	</center></form><!-- /form_insert -->

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se expliquei bem, o que acontece é q o código n tah gerando a tabela dinâmica.

Mas no segundo código que postei exatamente igual só q com outras variáveis está funcionando normalmente.

 

ps.

SE_discriminacao = $this.find("input[name=SE_discriminacao]").val();

 

essa linha está comk ; no final e deve ser `,` mas ja concertei n é isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

existem vários erros de sintaxe nos seus códigos.

 

por exemplo: cadê o fechamento do form_prepare submit?

e cadê o return false dele ?

 

 

você importou a lib jQuery ?

 

<script type="text/javascript">
$(document).ready(function(){
       alert( 'jQuery iniciado!' );
       $('#form_prepare').submit(function(){
             alert( 'prepare enviado!' );

 

vá debugando o teu código.

 

Aperta Ctrl+Shift+J no Firefox, veja os erros e corrija.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ah sim, dps q postei aqui tmb vi o do Jquery Bruno. Tmb n resolveu, debuguei com o Chrome, vo tentar com o firefox

 

Hohoho Vlw bruno, na verdade deste primeiro post q eu fiz encontrei 3 erros

1); por ","

2)Importar o Jquery.

3)Faltou concatenar '<input type="hidden" name="SE_valorUnitario[]" value="'+SE_valorUnitario'" /></td>'+ após a variavel.

 

Os dois primeiros encontrei antes de você postar a dica do Firefox, acontece q esqueci de avisar aqui.

 

Bom, tópico resolvido.

(n entendi o faltou o return False)

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.