PHP e JavaScript
25/03/2013
0
A ideia é a seguinte:
Tenho código PHP que faz o login e cria a sessão com o usuário logado, até aqui tudo bem.
Tenho uma função em JavaScript que irá carregar a página php após 5 segundos com os dados do usuário.
A função seria userLogado(param1,param2). A dificuldade é que não executa a função. Se eu colocar um Select e colocar a função no OnChange ele executa sem problemas, mas quando eu coloco um botão para chamara função, ela não funciona.
Segue abaixo a função:
var xmlHttp function showUser(str,fnc) { xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Navegador não suporta HTTP Request") return } var url="user.php" url=url+"?usuario="+str url=url+"&tipo=inc" url=url+"&op="+Math.random() xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true) xmlHttp.send(null) } function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { document.getElementById("txtHint").innerHTML=xmlHttp.responseText } } function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { //Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; }
Paulo Andrade
Posts
21/05/2013
Paulo Andrade
Estou sim. eu quero montar um site de leilões. no caso, dentro de 20 segundos o usuário terá que dar um lance ou então o último da dar o lance leva produto como acontece no Mukirana e outros sites do ramo.
21/05/2013
Marcio Araujo
24/10/2013
Claudio Lopes
01/11/2013
Leandro Richard
Poderia postar todo seu código, html/javascript.
Você disse que utilizando um botão para chamar a função não funciona, em qual momento este botão está sendo clicado, pois será ele que irá disparar a ação.
04/11/2013
Paulo Andrade
Poderia postar todo seu código, html/javascript.
Você disse que utilizando um botão para chamar a função não funciona, em qual momento este botão está sendo clicado, pois será ele que irá disparar a ação.
Segue abaixo o código da página para dar o lance no produto em leilão:
<?php @require_once('includes/seguranca.php'); // Inclui o arquivo com o sistema de segurança ?> <?php @protegePagina();// Chama a função que protege a página ?> <?php //" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Chico Barato</title> <script src="js/selectauction.js"></script> <script src="js/selectuser.js"></script> <SCRIPT language=JavaScript> function controle(form1) { var test = document.form1.input.value; showUser(test); } </SCRIPT> <script language="javascript"> var execauction = <?php if ($_SESSION['seg'] > 0) { echo '"showAuction()"';}else{ echo '"auctionclose()"';} ?>; function auctiontime() { window.setInterval(execauction, 1000); clearInterval(1000); } function auctionclose() { clearInterval(0); } </script> <style type="text/css"> /*<![CDATA[*/ <!-- @import "css/apresentacao.css"; --> /*}}>*/ </style> </head> <body> <h1>Chico Barato - Tudo a preço de banana</h1> <?php if (isset($_GET['auctionbox'])) {?> <?php @include('auctionbox.php'); ?> <?php } ?> <?php if (isset($_GET['auctionview'])) {?> <?php @include('auctionview.php'); ?> <?php } ?> <div id="txtHint"> <a href="javascript:showAuction(); auctiontime();">Leilões</a><BR /> </div> <BR> <?php echo "<a href=\"valida.php?acao=logoff\">Logoff</a>. User: ". $_SESSION['usuarioLogin']; ?> <BR> </body> </html>
06/11/2013
William
var execauction = <?php if ($_SESSION['seg'] > 0) { echo '"showAuction()"';}else{ echo '"auctionclose()"';} ?>;
Usando uma condição ternária, retornando o valor para uma variável PHP e dando um echo nessa variável pode funcionar. Retirei algumas aspas !!!
<?php echo $teste = ($_SESSION['seg'] > 0) ? 'showAuction();' : 'auctionclose();' ; ?>
Obs: Esse função showAuction() está em outro script, porque nesse código que você passou não existe!
07/11/2013
Paulo Andrade
var execauction = <?php if ($_SESSION['seg'] > 0) { echo '"showAuction()"';}else{ echo '"auctionclose()"';} ?>;
Usando uma condição ternária, retornando o valor para uma variável PHP e dando um echo nessa variável pode funcionar. Retirei algumas aspas !!!
<?php echo $teste = ($_SESSION['seg'] > 0) ? 'showAuction();' : 'auctionclose();' ; ?>
Obs: Esse função showAuction() está em outro script, porque nesse código que você passou não existe!
Esse código está no selectauction.js abaixo:
var xmlHttp function showAuction() { xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Navegador não suporta HTTP Request") return } var url="auctionview.php" url=url+"?q=" url=url+"&f=sel" url=url+"&sid="+Math.random() xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true) xmlHttp.send(null) } function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { document.getElementById("txtHint").innerHTML=xmlHttp.responseText } } function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { //Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; }
24/11/2013
Lucas Davies
É claro que o conhecimento inerente ao PHP em si tem que se ter.
Mas, vai de Codeigniter, Zend. Eles vão facilitar sua vida.
Mas como eu já disse: aprenda PHP pra valer.
É como saber jQuery sem saber bem Javascript (lamentável).
Abraços.
Atenciosamente,
Lucas Garcia Daveis
Clique aqui para fazer login e interagir na Comunidade :)