Ir para conteúdo

POWERED BY:

Arquivado

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

cravoley

[Resolvido] Problema com o prototype.

Recommended Posts

Eae pessoal.

 

Já vasculhei metade do forum e não achei nada parecido. Dei uma procurada no google também e não sei mais o que fazer.

 

Bom, o problema é o seguinte. Eu tenho uma função em JS que faz um Ajax.Updater chamando um outro arquivo .php, Tenho algumas funções que fazem isso, inclusive a função está funcionando porque se eu trocar o arquivo .php que ela chama funciona perfeitamente. Alguém saberia me dizer o que pode ser isso?

 

Tudo que tem de código neste arquivo .php que eu estou chamando é uma tabela com 1/2 duzia de campos e o resto tudo em PHP. Será que até o php já ta dando pau com o IE? :blink:

Compartilhar este post


Link para o post
Compartilhar em outros sites

manda o code pra nos olharmos...t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Função javascript que chama o arquivo

 

function processarEstoque()
	{
		//var param = Form.serialize('formulario');
		new Ajax.Updater('informativo_estoque', 'modulos/balanco/estoque/estoque_resultado.inc.php',{parameters:$('formulario').serialize(true)});
	}

 

 

Arquivo estoque_resultado.inc.php

 

<?
require_once('../../../geral/geral.php');

foreach ($_POST['quantidade'] as $q) {
	$data[] = 'quantidade[]='.$q;
}

foreach ($_POST['part_number'] as $p) {
	$data[] = 'part_number[]='.$p;
}

foreach ($_POST['vazio'] as $p) {
	$data[] = 'vazio[]='.$p;
}
$post_data = implode('&',$data);
?>

<h4>Inventário do Estoque</h4>
<form action="modulos/balanco/estoque/protocolo.php" id="Formulario22" method="post" target="_blank">
<table width="100%" border="1" cellpadding="0" cellspacing="0">
	<tr>
		<th>P/N</th>
		<th>Físico</th>
		<th>Contábil</th>
		<th>Diferença</th>
		<th>Observações</th>
	</tr>
	<?
	$i = 0;
	$sql_pn = "SELECT p.* ,est.*
			FROM 
				{$table_prefix}part_numbers p, 
				{$table_prefix}estoque est,
				{$table_prefix}sites si,
				{$table_prefix}equipamentos_sites eqs,
				{$table_prefix}equipamentos eq
			WHERE 
				p.id = est.part_number_id
				AND eqs.site_id = est.site_id
				AND eqs.equipamento_id = eq.id
				AND si.id = est.site_id
				AND est.site_id = {$site}
			GROUP BY p.id 
			ORDER BY p.nome ASC";
	$qry_pn = $mysql->query($sql_pn);
	$num_pn = $mysql->records($qry_pn);

	if ($num_pn) {
		while ($rs_pn = $mysql->fetch($qry_pn)) {
			$estoque = ($rs_pn->quantidade + ($rs_pn->variacao));
			$diff = ($_POST['quantidade'][$i] - $estoque);
			if ($diff != 0) {
				$mensagem = '<strong class="erro">Fazer ajuste</strong>';
				$erro = 1;
			} else {
				$mensagem = ' ';
			}
	?>
	<tr>
		<td><?=$rs_pn->nome?></td>
		<td><?=$_POST['quantidade'][$i]?></td>
		<td><?=$estoque?></td>
		<td><?=$diff?></td>
		<td>
		<?=$mensagem?>
		<input type="hidden" name="estoque[]" value="<?=$estoque;?>">
		<input type="hidden" name="quantidade[]" value="<?=$_POST['quantidade'][$i]?>">
		<input type="hidden" name="contabil[]" value="<?=$rs_pn->quantidade?>">
		<input type="hidden" name="part_number[]" value="<?=$_POST['part_number'][$i]?>">
		<input type="hidden" name="vazio[]" value="<?=$_POST['vazio'][$i]?>">
		</td>
	</tr>
	<? $i++;}
	}
	?>
</table>
</form>
<? if (!$erro) { ?>
<input type="button" value="Gerar Relatório" class="confirmar" onclick="confirmarEstoque()" />
<? } else { ?>
<p>Verifique os itens que necessitam de ajuste. Se necessário entre em contato com a gestão.</p>
<a href="java script:;" onclick="selectEstoqueSite(<?=$_POST['site']?>,'<?=$post_data?>')">Voltar</a>
<? } ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

...?

 

 

Primeiro, aonde esta a div/span(ou sei lá o que) com id 'informativo_estoque'? Veja se ela esta dentro de uma tag form (se tiver não é para funcionar mesmo).

Compartilhar este post


Link para o post
Compartilhar em outros sites

...?

 

 

Primeiro, aonde esta a div/span(ou sei lá o que) com id 'informativo_estoque'? Veja se ela esta dentro de uma tag form (se tiver não é para funcionar mesmo).

 

É uma div. Ela esta em outro arquivo. que é o onde deve ser carregado esse conteudo.

 

 

E o problema que esta ocorrendo é que quando é testado no IE isso parece que existe um loop infinito no código. Pois ele fica carregando sem parar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cravoley, então veja se ela não esta dentro de uma tag form.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cravoley, então veja se ela não esta dentro de uma tag form.

Sim, ela se encontra dentro de um form.

 

Mas o que esta acontecendo é o seguinte, se eu alterar o arquivo que eu chamo ele processa beleza, agora se eu chamo esse arquivo estoque_resultado.inc.php parece que ele entra num loop infinito e fica processando infinitamente. Só que isso só ocorre no IE. No FF funciona que é uma beleza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O grande problema é que no IE você não pode inserir um form dentro de um outro form dinamicamente, isso faz sentido já que na propria especificações da W3C ditam que isto é proibido.

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.