Ir para conteúdo
Fórum Script Brasil
  • 0

Enviar variavel para php


Owner

Pergunta

Olá galera, estou com um problema que apesar de ser dificil pra mim, pra muitos vai ser fácil.

Tenho o script abaixo:

function funcao()
{
var teste = null;

if(window.ActiveXObject)
{
var versoes = ["Microsoft.XMLHttp", "MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Msxml2.DOMDocument.3.0"];

for(cont = 0; cont < versoes.length; cont++)
{
try
{
teste = new ActiveXObject(versoes[cont]);
break;
}
catch(e)
{
new Error("Seu browser não suporta AJAX");
}
}
}
else
if(window.XMLHttpRequest)
teste = new XMLHttpRequest();
teste.open("GET","php.php",true);
teste.onreadystatechange = function (){
if(teste.readyState == 4)
document.write(teste.responseText);
}
teste.send(null);

}
E na página que quero que carregue a página php insiro:
<script type="text/javascript" src="arquivo.js?id=2">
</script>

Gostaria de saber como enviar a o valor da variavel id para que carrega php.php?id=2

Desde já muito obrigado a quem ajudar...

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

Olá Romerito, o problema não está sendo pegar o valor no php e sim mandar o valor da variavel para o script.

No caso preciso que

teste.open("GET","php.php?id=2",true);
pegue o valor dependendo do id que for informado em:
<script type="text/javascript" src="arquivo.js?id=2">

Link para o comentário
Compartilhar em outros sites

  • 0
Tente assim:

teste.open("GET","php.php?id="+seu_ valor,true)
Olá Jonathan, o que preciso é que o "seu_ valor" já pegue o valor da váriavel id dependendo do valor abaixo (dinamicamente), que no caso é 2
<script type="text/javascript" src="arquivo.js?id=2">

Link para o comentário
Compartilhar em outros sites

  • 0

um acho que entende mais ou menos, bom tenta tipo assim:

<script language="javascript">
        var url; /* variavel global para chamar na função ajax */
        function getUrl()
        {
            var tg = document.getElementsByTagName( 'script' );
            var qs
            for ( var i = 0; i < tg.length; i++ )
            {    
                //alert( tg[i].src.search( /jquery.js?id=[0-9]$/ ) );
                if ( tg[i].src.search( /arquivo\.js\?id=([0-9])+$/ ) != -1 )
                {
                    qs = ( tg[i].src.split( '?' ) );
                    url = 'php.php?' + qs[1];
                }    
            }    
        }
</script>

espero que seja mais ou menos isso, qualquer coisa detalha melhor o que pretende fazer!

Editado por Romerito
Link para o comentário
Compartilhar em outros sites

  • 0

Romerito, funcionou perfeitamente. só resta uma dúvida, tem como passar o valor da função para essa função abaixo?

function abrirPag(valor){
    var url = valor;

    xmlRequest.open("GET",url,true);    
    xmlRequest.onreadystatechange = mudancaEstado;
    xmlRequest.send(null);

        if (xmlRequest.readyState == 1) {
            document.getElementById("conteudo_mostrar").innerHTML = "<img src='loader.gif'>";
        }

    return url;
}

function mudancaEstado(){
    if (xmlRequest.readyState == 4){
        document.getElementById("conteudo_mostrar").innerHTML = xmlRequest.responseText;
    }
}

Link para o comentário
Compartilhar em outros sites

  • 0

Você me passou um código no qual eu consegui pegar o valor da variavel id e tenha a função que precisa receber esse id para abrir a página, como mostra abaixo:

// JavaScript Document

        var url; /* variavel global para chamar na função ajax */
        function teste()
        {
            var tg = document.getElementsByTagName( 'script' );
            var qs
            for ( var i = 0; i < tg.length; i++ )
            {    
                //alert( tg[i].src.search( /instrucao.js?id=[0-9]$/ ) );
                if ( tg[i].src.search( /instrucao\.js\?id=([0-9])+$/ ) != -1 )
                {
                    qs = ( tg[i].src.split( '?' ) );
                   url = 'php.php?' + qs[1];
                }    
            }    
        }

///
function abrirPag(valor){
    var url = valor;

    xmlRequest.open("GET",url,true);    
    xmlRequest.onreadystatechange = mudancaEstado;
    xmlRequest.send(null);

        if (xmlRequest.readyState == 1) {
            document.getElementById("conteudo_mostrar").innerHTML = "<img src='loader.gif'>";
        }

    return url;
}

function mudancaEstado(){
    if (xmlRequest.readyState == 4){
        document.getElementById("conteudo_mostrar").innerHTML = xmlRequest.responseText;
    }
}

Link para o comentário
Compartilhar em outros sites

  • 0

bom vamos lá, essa linha:

url = 'php.php?' + qs[1];
é onde a url é formada, então ele vai mandar para uma pagina PHP com o nome de php.php com id igual ao do arquivo js, a var url foi declarada fora da função isso significa que ela é global, sendo assim você não precisa passar ela como parametro para nenhuma outra função, basta utilizar em qualquer função, exemplo:
//var url = valor; não precisa atribuir nada a ela
xmlRequest.open("GET",url,true);

bom é isso aew, abraço!

Editado por Romerito
Link para o comentário
Compartilhar em outros sites

  • 0

Romerito funcionou 100%. Tentei e não ia, ai depois de uns Ctrl+Z(s) funcionou sem explicação... Muito obrigado...

Só tenho uma última dúvida, teria como abrir uma página externa com o script que estou usando, pois só abre se for página local.

// JavaScript Document
function GetXMLHttp() {
    if(navigator.appName == "Microsoft Internet Explorer") {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else {
        xmlHttp = new XMLHttpRequest();
    }
    return xmlHttp;
}

var xmlRequest = GetXMLHttp();

///
        var url; /* variavel global para chamar na função ajax */
        function teste()
        {
            var tg = document.getElementsByTagName( 'script' );
            var qs
            for ( var i = 0; i < tg.length; i++ )
            {    
                //alert( tg[i].src.search( /instrucao.js?id=[0-9]$/ ) );
                if ( tg[i].src.search( /instrucao\.js\?key_usuario=([0-9,a-z])+$/ ) != -1 )
                {
                    qs = ( tg[i].src.split( '?' ) );
                   url = 'conteudo.php?' + qs[1];
                }    
            }    
        }

///
function abrirPag(valor){
//var url = valor; não precisa atribuir nada a ela
    xmlRequest.open("GET",url,true);    
    xmlRequest.onreadystatechange = mudancaEstado;
    xmlRequest.send(null);

        if (xmlRequest.readyState == 1) {
            document.getElementById("conteudo_mostrar").innerHTML = "<img src='images/13-1.gif'>";
        }

    return url;
}

function mudancaEstado(){
    if (xmlRequest.readyState == 4){
        document.getElementById("conteudo_mostrar").innerHTML = xmlRequest.responseText;
    }
}

Link para o comentário
Compartilhar em outros sites

  • 0

Como não entendo nada de Ajax, estou usando o script q mostrei. No caso ele funcionou perfeitamente para pegar a função que você me passou e tal. Só que para abrir página externa não está carregando... Fiz testes e carregava, mas quando fui ver ele tava carregando o arquivo local hehe...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...