11closed 0 Denunciar post Postado Fevereiro 23, 2012 ola tudo bem galera.. Estou com um problema aqui, na hora de pesquisar..olha o codigo !! pes_protutos_marca.php <script src="../principal/scripts/scripts.js" type="text/javascript" ></script> <div id="por_marca"> <label>Pesquisando por Marca: <input type="text" name="marca" id="marca" class="pesnormal" onKeyUp="escondeAdm(1); setarCampos_marca(); enviarForm('pes_produt_busca_marca.php', campos, 'divResultado'); return false;" /> </label> </div> <div id="adm1" style="visibility:hidden;"> </div> <div id="divResultado" style='visibility:hidden;'> </div> scripts.js function setarCampos_marca() { campos = "marca="+(document.getElementById('marca').value); } function escondeAdm(n){ evt=n; if(evt == "1"){ func1=document.getElementById("adm1"); func2=document.getElementById("divResultado"); func1.style.visibility="hidden"; func2.style.visibility="visible"; } } function escondeRes(n){ evt=n; if(evt == "1") { func1=document.getElementById("divResultado"); func1.style.visibility="hidden"; } } // ajax.js var navegador = navigator.userAgent.toLowerCase(); //Cria e atribui à variável global 'navegador' (em caracteres minúsculos) o nome e a versão do navegador var xmlhttp; //Cria uma variável global chamada 'xmlhttp' //Função que inicia o objeto XMLHttpRequest function objetoXML() { if (navegador.indexOf('msie') != -1) { //Internet Explorer var controle = (navegador.indexOf('msie 5') != -1) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP'; //Operador ternário que adiciona o objeto padrão do seu navegador (caso for o IE) à variável 'controle' try { xmlhttp = new ActiveXObject(controle); //Inicia o objeto no IE } catch (e) { } } else { //Firefox, Safari, Mozilla xmlhttp = new XMLHttpRequest(); //Inicia o objeto no Firefox, Safari, Mozilla } } //Função que envia o formulário function enviarForm(url, campos, destino) { var elemento = document.getElementById(destino); //Atribui à variável 'elemento' o elemento que irá receber a página postada objetoXML(); //Executa a função objetoXML() if (!xmlhttp) { //Se o objeto de 'xmlhttp' não estiver true elemento.innerHTML = 'Impossível iniciar o objeto XMLHttpRequest.'; //Insere no 'elemento' o texto atribuído return; } else { //Senão elemento.innerHTML = 'Carregando...'; //Insere no 'elemento' o texto atribuído } xmlhttp.onreadystatechange = function () { if (xmlhttp.readyState == 4 || xmlhttp.readyState == 0) { //Se a requisição estiver completada if (xmlhttp.status == 200) { //Se o status da requisição estiver OK elemento.innerHTML = xmlhttp.responseText; //Insere no 'elemento' a página postada } else { //Senão elemento.innerHMTL = 'Página não encontrada!'; //Insere no 'elemento' o texto atribuído } } } xmlhttp.open('POST', url+'?'+campos, true); //Abre a página que receberá os campos do formulário xmlhttp.send(campos); //Envia o formulário com dados da variável 'campos' (passado por parâmetro) } pes_produt_busca_marca.php extract($_POST); $marca = $_GET['marca']; echo "TESTE: ".$marca."<br><br><br><br>"; A $marca sempre fica vazia. porque sera ? t+ Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Fevereiro 23, 2012 ola tudo bem galera.. Estou com um problema aqui, na hora de pesquisar..olha o codigo !! pes_protutos_marca.php <script src="../principal/scripts/scripts.js" type="text/javascript" ></script> <div id="por_marca"> <label>Pesquisando por Marca: <input type="text" name="marca" id="marca" class="pesnormal" onKeyUp="escondeAdm(1); setarCampos_marca(); enviarForm('pes_produt_busca_marca.php', campos, 'divResultado'); return false;" /> </label> </div> <div id="adm1" style="visibility:hidden;"> </div> <div id="divResultado" style='visibility:hidden;'> </div> scripts.js function setarCampos_marca() { campos = "marca="+(document.getElementById('marca').value); } function escondeAdm(n){ evt=n; if(evt == "1"){ func1=document.getElementById("adm1"); func2=document.getElementById("divResultado"); func1.style.visibility="hidden"; func2.style.visibility="visible"; } } function escondeRes(n){ evt=n; if(evt == "1") { func1=document.getElementById("divResultado"); func1.style.visibility="hidden"; } } // ajax.js var navegador = navigator.userAgent.toLowerCase(); //Cria e atribui à variável global 'navegador' (em caracteres minúsculos) o nome e a versão do navegador var xmlhttp; //Cria uma variável global chamada 'xmlhttp' //Função que inicia o objeto XMLHttpRequest function objetoXML() { if (navegador.indexOf('msie') != -1) { //Internet Explorer var controle = (navegador.indexOf('msie 5') != -1) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP'; //Operador ternário que adiciona o objeto padrão do seu navegador (caso for o IE) à variável 'controle' try { xmlhttp = new ActiveXObject(controle); //Inicia o objeto no IE } catch (e) { } } else { //Firefox, Safari, Mozilla xmlhttp = new XMLHttpRequest(); //Inicia o objeto no Firefox, Safari, Mozilla } } //Função que envia o formulário function enviarForm(url, campos, destino) { var elemento = document.getElementById(destino); //Atribui à variável 'elemento' o elemento que irá receber a página postada objetoXML(); //Executa a função objetoXML() if (!xmlhttp) { //Se o objeto de 'xmlhttp' não estiver true elemento.innerHTML = 'Impossível iniciar o objeto XMLHttpRequest.'; //Insere no 'elemento' o texto atribuído return; } else { //Senão elemento.innerHTML = 'Carregando...'; //Insere no 'elemento' o texto atribuído } xmlhttp.onreadystatechange = function () { if (xmlhttp.readyState == 4 || xmlhttp.readyState == 0) { //Se a requisição estiver completada if (xmlhttp.status == 200) { //Se o status da requisição estiver OK elemento.innerHTML = xmlhttp.responseText; //Insere no 'elemento' a página postada } else { //Senão elemento.innerHMTL = 'Página não encontrada!'; //Insere no 'elemento' o texto atribuído } } } xmlhttp.open('POST', url+'?'+campos, true); //Abre a página que receberá os campos do formulário xmlhttp.send(campos); //Envia o formulário com dados da variável 'campos' (passado por parâmetro) } pes_produt_busca_marca.php extract($_POST); $marca = $_GET['marca']; echo "TESTE: ".$marca."<br><br><br><br>"; A $marca sempre fica vazia. porque sera ? t+ $_POST so funciona pra requisicoes post, e $_GET so pra requisicoes get, seu ajax esta enviado requisicoes post, logo $marca fica vazio... Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Fevereiro 23, 2012 ola igor, mas o que você suponha que eu faça ? eu troquei isso $marca = $_GET['marca']; por isso $marca = $_POST['marca']; ñ mudo nada !! Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Fevereiro 23, 2012 ok, reveja seu ajax...eu vi q no seu pseudo form ele esta enviando uma variavel em js campos q saiu do nada...ou seja, undefined..e esta sendo enviada pelo ajax em branco....o q eu suponho q você faça eh usar o firefox com o firebug pra ver como o seu ajax esta trabalho, uma segunda opcao seria usar o ajax do jquery...q esta melhor consolidada e testada... Compartilhar este post Link para o post Compartilhar em outros sites
Tafarel Chicotti 0 Denunciar post Postado Fevereiro 23, 2012 Olá 11closed, como o Igor comentou... o seu problema está sim em fazer requisição via POST e querer recuperá-la por GET porém para corrigir esse erro você tem fazer a seguinte mudança //onde você encontrar essa linha xmlhttp.open('POST', url+'?'+campos, true); //Abre a página que receberá os campos do formulário xmlhttp.send(campos); //Envia o formulário com dados da variável 'campos' (passado por parâmetro) //troque por essa linha abaixo xmlhttp.open('GET', url+'?'+campos, true); //Abre a página que receberá os campos do formulário xmlhttp.send(campos); //Envia o formulário com dados da variável 'campos' (passado por parâmetro) o que ocorre nesse caso, é que você está mandar uma requisição POST com variáveis na URL, logo não iria encontrar essas váriaveis no lado do servidor pq o POST carrega os valores pelo form e não pela URL... para você trazer as informações por url o envio das suas informações em xmlhttp.open('POST', url+'?'+campos, true); //foi necessário a troca da de POST para GET para funcionar, pq 'url+?campos' //indica que vão valores pela url Abraços Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Fevereiro 23, 2012 ola Tafarel fiz o que você mencionou, e ñ deu. coloquei um alert para debug assim alert(url+'?'+campos); digitei "a" no formulario me retornou isso no alert pes_produt_busca_marca.php?marca=a no pes_produt_busca_marca.php deixei assim $marca = $_GET['marca']; echo $marca."<br><br><br><br>"; ñ sei pq ñ deu certo, o GET ainda esta vazio. Igor, ñ sei se eu entendi o q você quis dizer, .eu vi q no seu pseudo form ele esta enviando uma variavel em js campos q saiu do nada...ou seja, undefined..e esta sendo enviada pelo ajax em branco.... a variavel campo esta aq function setarCampos_marca() { campos = "marca="+(document.getElementById('marca').value); } baixei o firebug, pença nun baguio complicado rsrs. me fala que ñ é em DOM q tem que procurar o erro. haha ñ entendi nada lah.. Bom mas se for aonde eu tenho que ver, pq lah tem tanta coisa que nen sei aonde ver.. t+ Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Fevereiro 23, 2012 nao, eh na aba rede, você vai ver todas as requisicoes da pagina, todas, incluindo js, img, html...post e get... Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Fevereiro 24, 2012 não tem aba rede aq, o firebug não acusa nenhum erro.. fui em Console/all/Post no firebug, e estava lah marca=awd awd oq eu digitei no formulario de pesquisa, ñ sei o que fazer ! eu tenho um outro lugar que estou usando exatamente o msm script e ele esta funcionando normalmente... nessa parte apos eu implementar a URL amigavel o script parou de funcionar.. Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Fevereiro 24, 2012 claro q tem, tem 6 abas, da esq pra direita: console, html, css, script , dom e rede...tem sim... Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Fevereiro 24, 2012 aqui não é rede é net... em NET/JS - não tem nada lah em NET/XHR apareceu assim URL = POST http://nomesite.local/nomesite/pes_produt_busca_marca.php?marca=a PARAMS = marca a POST = marca=a Response = apareceu o HTML da pagina pes_produt_busca_marca.php mas o parametro marca esta vazio é isso ? Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Fevereiro 24, 2012 sim, e eu nao tenho culpa se o seu navegador esta em outra linguagem, o meu esta em pt_BR... Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Fevereiro 24, 2012 opah desculpe descompressão ... eu ñ quis te culpar amigo !! é que eu nunca mexi no firebug ... Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Fevereiro 24, 2012 opah desculpe descompressão ... eu ñ quis te culpar amigo !! é que eu nunca mexi no firebug ... eu recomendo, ajuda pacas....at mesmo com css e plugins jquery.... Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Março 15, 2012 ola igor, pesquisei para poder entender o que esta acontecendo de errado, e descobri que provavelmente eu tenha que adaptar a paginação na URL amigavel. porém não estou conseguindo fazer olha meu .htaccess RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.*)$ index.php?url=$1 o que eu tenho que fazer ? Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Março 15, 2012 entao, toda a sua url esta sendo enviada pra ca, toda a sua requisicao RewriteRule (.*)$ index.php?url=$1 como o php recupera isto? pode me mostrar o script? Compartilhar este post Link para o post Compartilhar em outros sites
Rafafel Reis - PHP 1 Denunciar post Postado Março 15, 2012 Velho nem li tudo pq fiquei com raiva. faz algo desse tipo /********************* pag.html **************************/ [...] <script src="JQUERY.js" ></script> <!-- Necessário --> <script> $(document).ready(function(){ $.ajax({ type: "POST", url: "ajax.php", data: "marca=" + escape($("#marca").val()), success: function(data){ $("#resultado").val(unescape(data)); } }); }); </script> <body> <input type="text" id="marca" /> <input type="button" id="submit" value="enviar" /> <div id="resultado" > </div> </body> [...] /*********************** ajax.php *********************/ <?php $query = "select * from produtos where marca = " . $_POST['marca']; $re = mysql_query($query); $result = ""; while($l = mysql_fetch_array($re)){ $result .= "<b>" . $l['produto'] . "</b>\n<br />\n"; } echo utf8_encode($result); ?> Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Março 15, 2012 esta aqui a index.php include("config/config.php"); include("functions.php"); functions.php $url = isset($_GET['url']) ? $_GET['url'] : 'home'; $separar = explode('/', $url); $pagina = (isset($separar[0])) ? $separar[0] : 'home'; $sub_pagina = (isset($separar[1])) ? $separar[1] : 'home'; $query = mysql_query("SELECT * FROM $tabela2 WHERE URL_EMP = '".mysql_real_escape_string($pagina)."'"); $row = mysql_fetch_assoc($query); $qts = mysql_num_rows($query); if ($pagina == "home"){ include("principal/index.php"); } else if ($qts >= 1){ include("emps/arquivos.php"); // pag da emp } else { include("emps/erro.php"); } arquivos.php if ($sub_pagina == "home"){ // aq a home da emp } else if ($sub_pagina == "quemsomos"){ include("emps/quemsomos.php"); } else if ($sub_pagina == "historia"){ include("emps/historia.php"); } else if ($sub_pagina == "empresa"){ include("emps/empresa.php"); } else if ($sub_pagina == "localizacao"){ include("emps/localizacao.php"); } else if ($sub_pagina == "produtos"){ include("emps/produtos.php"); } else if ($sub_pagina == "contrato"){ include("emps/contrato.php"); } else if ($sub_pagina == "produtos_completo"){ include("emps/produtos_completo.php"); } else if ($sub_pagina == "pes_protutos_marca"){ include("emps/pes_protutos_marca.php"); } else if ($sub_pagina == "pes_produt_busca_marca.php"){ include("emps/pes_produt_busca_marca.php"); } else { include("emps/erro.php"); } Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Março 15, 2012 ok, entao se você esta usando url amigaveis, você nao pode fazer algo do tipo pagina.php?marca=123, você tem q fazer pagina/marca/123, ae sim ele vai pegar so uma dica, no seu arquivo arquivos.php, onde tem um monte de if's, precisa usar switch, vai ficar mais legivel, eh so uma dica.... outra coisa se sua url tiver mais de um parametro, como você vai usar os outros parametros? nesse da marca ae você vai precisade de pelo menos 2 parametros error line } else if ($qts >= 1){ include("emps/arquivos.php"); // pag da emp Compartilhar este post Link para o post Compartilhar em outros sites
11closed 0 Denunciar post Postado Março 16, 2012 Obrigado Igor deu certo aqui cara... vlw Compartilhar este post Link para o post Compartilhar em outros sites