[Cascavel-pm] requisiçãos AJAX (via script.pl) com muitos caracteres

fernandolouis em terra.com.br fernandolouis em terra.com.br
Quinta Agosto 28 13:28:58 PDT 2008


Amigo, o erro diz que está em "request.send(null);"

e o código fonte:

# BEGIN - FUNÇÃO AJAX

<script language="javascript" type="text/javascript">
var request = null;

function createRequest() {
  try {
    request = new XMLHttpRequest();
  } catch (trymicrosoft) {
    try {
      request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (othermicrosoft) {
      try {
        request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (failed) {
        request = null;
      }
    }
  }

  if (request == null)
    alert("Error creating request object!");
}

function wait_msg(){
  document.getElementById("bloco_espera").style.display = "block";
  document.getElementById("bloco_espera").innerHTML = "<img 
src='http://www.kussvanderlinde.adv.br/img/loader.gif'>";
}

function ajax(make_this,id,titulo_edita,texto_edita) {
  wait_msg();
  createRequest();
  if (make_this == "inserir_n") {
    var texto_quebra_d_linha = document.getElementById("texto_n").value;
    texto_quebra_d_linha = 
String(texto_quebra_d_linha).replace(/(\r\n)|\r|\n/g,'\\n');
    texto_quebra_d_linha = String(texto_quebra_d_linha).replace(/\'/g,'\`');
    var url = 
"http://www.kussvanderlinde.adv.br/cgi-local/controle/ajaxcontrole.pl?inserir_n=1";
    url = url + "&titulo_n=" + document.getElementById('titulo_n').value + 
"&texto_n=" + texto_quebra_d_linha;
  }
  else if (make_this == "inserir_a") {
    var texto_quebra_d_linha = document.getElementById("texto_a").value;
    texto_quebra_d_linha = 
String(texto_quebra_d_linha).replace(/(\r\n)|\r|\n/g,'\\n');
    texto_quebra_d_linha = String(texto_quebra_d_linha).replace(/\'/g,'\`');
    var url = 
"http://www.kussvanderlinde.adv.br/cgi-local/controle/ajaxcontrole.pl?inserir_a=1";
    url = url + "&titulo_a=" + document.getElementById('titulo_a').value + 
"&texto_a=" + texto_quebra_d_linha + "&autor_a=" + 
document.getElementById('autor_a').value;
  }
  else if (make_this == "busca_n") {
    var url = 
"http://www.kussvanderlinde.adv.br/cgi-local/controle/ajaxcontrole.pl?busca_n=1";
    url = url + "&plchave_n=" + document.getElementById('plchave_n').value;
    document.getElementById("busca_n_retorno").style.display = "block";
  }
  else if (make_this == "busca_a") {
    var url = 
"http://www.kussvanderlinde.adv.br/cgi-local/controle/ajaxcontrole.pl?busca_a=1";
    url = url + "&plchave_a=" + document.getElementById('plchave_a').value;
    document.getElementById("busca_a_retorno").style.display = "block";
  }
  else if (make_this == "excluir_n_a") {
    var url = 
"http://www.kussvanderlinde.adv.br/cgi-local/controle/ajaxcontrole.pl?excluir_n_a=1";
    url = url + "&id=" + id;
    document.getElementById("busca_n_retorno").style.display = "none";
    document.getElementById("busca_a_retorno").style.display = "none";
  }
  else if (make_this == "editar_n_a") {
    var titulo_recebido = document.getElementById(titulo_edita).value

    var texto_recebido = document.getElementById(texto_edita).value
    texto_recebido = String(texto_recebido).replace(/(\r\n)|\r|\n/g,'\\n');
    texto_recebido = String(texto_recebido).replace(/\'/g,'\`');

    var url = 
"http://www.kussvanderlinde.adv.br/cgi-local/controle/ajaxcontrole.pl?editar_n_a=1";
    url = url + "&titulo_recebido=" + titulo_recebido;
    url = url + "&texto_recebido=" + texto_recebido;
    url = url + "&id=" + id;

    document.getElementById("busca_n_retorno").style.display = "none";
    document.getElementById("busca_a_retorno").style.display = "none";
  }

  var url = url + "&nocache=" + new Date().getTime();
  request.open("GET", url, true);
  request.onreadystatechange = updatePage;
  request.send(null);
}

function updatePage() {
  if (request.readyState == 4) {
    var retorno = request.responseText;

    if (document.getElementById('plchave_n').value != "") {
      var idbloco_ajax = document.getElementById("busca_n_retorno");
      document.getElementById("bloco_espera").style.display = "none";
    }
    else if (document.getElementById('plchave_a').value != "") {
      var idbloco_ajax = document.getElementById("busca_a_retorno");
      document.getElementById("bloco_espera").style.display = "none";
    }
    else {
      var idbloco_ajax = document.getElementById("bloco_espera");
    }

    idbloco_ajax.innerHTML = retorno;
    document.getElementById('titulo_n').value = "";
    document.getElementById('titulo_a').value = "";
    document.getElementById('autor_a').value = "";
    document.getElementById('texto_n').value = "";
    document.getElementById('texto_a').value = "";
    document.getElementById('plchave_n').value = "";
    document.getElementById('plchave_a').value = "";
    document.getElementById('inserir_n').style.display = "none";
    document.getElementById('inserir_a').style.display = "none";
    document.getElementById('buscar_n').style.display = "none";
    document.getElementById('buscar_a').style.display = "none";

  }
}
</script>

# END - FUNÇÃO AJAX

# BEGIN - HTML

        <div id="titulo_u">
          <span class="font_pattern">ARTIGOS</span>
        </div>
        <br />
        <div><a href="#" onClick="changestate('inserir_a');" 
class="font_pattern_link">- Inserir</a><br /><br />
          <div id="inserir_a" style="display:none;">
            <form method="GET">
            <input type=text name=autor_a id="autor_a"> - AUTOR DO ARTIGO<br 
/>
            <input type=text name=titulo_a id="titulo_a"> - TÍTULO DO 
ARTIGO<br />
            <textarea class="estilotextarea" name="texto_a" 
id="texto_a"></textarea><br />
            <input value="ok" type="button" id="botao" 
onClick="ajax('inserir_a');" style="width:40px;" />
            </form>
            <br />
          </div>
        </div>
        <div><a href="#" onClick="changestate('buscar_a');" 
class="font_pattern_link">- Buscar artigo (excluir ou editar)</a><br /><br 
/>
          <div id="buscar_a" style="display:none;">
            <form method="GET">
            palavra-chave: <input type="text" name="plchave_a" 
id="plchave_a">
            <input value="ok" type="button" id="botao" 
onClick="ajax('busca_a');" style="width:40px;" />
            </form>
            <br />
          </div>
          <div id="busca_a_retorno"></div>
        </div>

# END - HTML

# BEGIN - AJAXCONTROLE.PL

elsif ($input{inserir_a}) {
$query = "INSERT INTO `artigos_noticias` VALUES('', '$datacad', 
'$input{titulo_a}', '$input{texto_a}', 'a', '$input{autor_a}')";
$q = $conn->prepare ($query);
$q->execute();
$q->finish();
$conn->disconnect();
print "<span style=\"color:red\">Artigo cadastrado com sucesso!</span>";
exit;
}

# END - AJAXCONTROLE.PL
----- Original Message ----- 
From: "Nilson Santos Figueiredo Junior" <acid06 em gmail.com>
To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
Sent: Thursday, August 28, 2008 5:21 PM
Subject: Re: [Cascavel-pm]requisiçãos AJAX (via script.pl) com muitos 
caracteres


2008/8/28  <fernandolouis em terra.com.br>:
> Tenho uma página html que via AJAX faz requisições com o servidor por um
> script.pl.
> Se acham que pode ser problema no código fonte, por favor, solicitem que
> insiro aqui.

Mensagens de erro? Ou, pelo menos, aonde acontece o erro (no script,
no banco de dados)? E o código fonte sempre ajuda.

Senão tiver isso disponível, talvez me enviando uma bola de cristal eu
possa descobrir algo de útil, porque meus poderes psíquicos normais
não foram suficientes pra advinhar seu problema.

-Nilson Santos F. Jr.
_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm



Mais detalhes sobre a lista de discussão Cascavel-pm