Ir para conteúdo

POWERED BY:

Arquivado

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

barogana

como retornar o que está sendo processado em json

Recommended Posts

Por gentileza, alguém pode me orientar como fazer o json retornar o que está sendo processado.

 

Explico.

 

em um form, envio os parametros para uma chamada php (json), que irá ler um arq txt com muitas linhas.

preciso que seja informado em qual linha está sendo realizado o processo.

Isto é quase (se não o é) um counter.

Já pesquisei em diversos sites, mas não consegui encontrar uma solução.

 

Preciso receber o OK do json (quando o status for zero (0) para retornar ao meu inicial.

 

Realmente, não conseguí nenhum link que me desse o caminho das pedras.

 

Agradeço imensamente, se alguém puder

me orientar.

 

 

meu form:

<script>
$(document).ready(function () {
	
	$('#importacao').hide();
	$('.btn-importar').click( function() { 
		id		=$("#FldID").val();
		evento	=$('#FldModalidadeID').val();
		dtstring="id="+id+"&evento="+evento;
		$('#importacao').show();
		$.ajax({type: "POST", 
			url:		"importarc/importarc_db.php",
			data:		dtstring,
			dataType:	"json",
			success: 	function(json) 
			{
				if (json.status == 0)
				{
					bootbox.alert("Processado");
					LoadPage("#mp","importarc/importarc.php");
					return false;
				} else {
					bootbox.alert("Erro ao processar");
				}
				$("#mp").load("white.php");
				$("#mp").load("importar/importar.php");
				return false;
			}
		});
	});
});
</script>
</head>

<form class="form-horizontal" role="form">
	<div class="form-group">
		<label for="cpf" class="col-md-2 col-sm-2 col-lg-2 control-label text-right" >ID</label>
		<div class="col-md-6 col-sm-6  col-lg-6">
			<input type="text" class="form-control" id="FldID" name="FldID" value="<?php print $id; ?>" readonly>
			<input type="text" class="form-control" id="FldName"name="FldName"value="<?php print $nome;?>" readonly>
		</div>
	</div>


	<div class="form-group">
		<label for="cpf" class="col-md-2 col-sm-2 col-lg-2 control-label text-right" >Arquivo</label>
		<div class="col-md-6 col-sm-6  col-lg-6">
			<input type="text" class="form-control" id="FldArquivo" name="FldArquivo" value="<?php print $arquivo; ?>" readonly>
		</div>
	</div>

	<div class="form-group" style="padding-bottom:1px;margin-bottom:1px;">
		<div class="col-md-10 col-sm-10 text-center">
			<input type="button" id="importar" name="importar" class="btn btn-primary btn-importar" value="Importar">
		</div>
	</div>
<!---
DIV criada para mostrar o que está sendo executado no script de processamento.
--->
	<div id="importacao" class="form-group">
		<label for="cpf" class="col-md-2 col-sm-2 col-lg-2 control-label text-right" >Processando</label>
		<div class="col-md-6 col-sm-6  col-lg-6">
			<input type="text" class="form-control" id="fldcnt" name="fldcnt" readonly>
		</div>
	</div>
</form>
</div>

script to processo php

<?php
ini_set('max_execution_time', 0);

include_once("connect.php");
include_once("functions_db.php");
header('Content-type: application/json');

$modo	= isset($_POST['modo']) ? $_POST['modo']: "";
$id	= isset($_POST['id']) 	? $_POST['id']	: "null";




$a ="arquivo.txt";

$cnt=0;

$f = fopen("../../uploads/". $a, "r");

while(!feof($f)) {
	$temp =fgets($f);
	$cupom = substr($temp,0,10);
	$ordem = trim(substr($temp,10));
	$cnt++;
	$campos  = "null,";		//id
	$campos .= "'$cnt',";	//codigo
	$campos .= "0";
	$campos .= "''";		//flag2	
	$sql = "insert into $tabela values ($campos)";
	mysql_query($sql);
/*
neste ponto do processamento é que preciso seja informado a posição que foi lida no txt.
*/

        echo "<script type='javascript'>$('#fldcnt').val(" . $cnt . ");</script>";
	$status=0;
}
fclose($f);
$obj = json_encode(array("status"=> $status));
echo $obj;

?>

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.