Ir para conteúdo

POWERED BY:

Arquivado

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

renatoraioz

abrir POP num codigo de php

Recommended Posts

olá pessoal... no codigo php abaixo, tenho um java para abrir POP... todo o codigo funciona, mas qdo clica no link, nao abre o POP... em outro sistema tive o mesmo problema e desisti do popup.. .mas nesse site é fundamental que abra em pop...

 

vejam o codigo

 

<script language='JavaScript' type='text/JavaScript'><!--function MM_openBrWindow(theURL,winName,features) { //v2.0  window.open(theURL,winName,features);}//--></script><?include"admin/config.php";$acao=mysql_query("select * from confraria_agenda order by data asc");while($r=mysql_fetch_array($acao)) {$idagenda=$r['idagenda'];$data=$r['data'];$titulo=$r['titulo'];echo"<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'><html><head><title>Documento sem título</title><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'><style type='text/css'>BODY {scrollbar-face-color:#000066;scrollbar-highlight-color:#DFDFDF;scrollbar-3dlight-color:#DFDFDF;scrollbar-darkshadow-color:#DFDFDF;scrollbar-shadow-color:#DFDFDF;scrollbar-arrow-color:#FFFFFF;scrollbar-track-color:#DFDFDF;}.texto {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 11px;	color: #000000;	text-decoration: none;	line-height: 20px;}.texto:hover {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 11px;	color: #000000;	text-decoration: underline;}.linhaFINA {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 1px;}</style></head><body bgcolor='#c9c9c9' leftmargin='0' topmargin='0' marginwidth='0' marginheight='0'><table width='100%' border='0' cellpadding='0' cellspacing='0' class='text'>  <tr class='linhaFINA'>     <td height='5'> </td>    <td height='5' bgcolor='#DFDFDF'> </td>    <td height='5' bgcolor='#DFDFDF'> </td>  </tr>  <tr>     <td width='20'> </td>    <td width='10' bgcolor='#DFDFDF'> </td>    <td bgcolor='#DFDFDF' class='texto'> <div align='justify'>         <p align='left'><strong><font color='#000066'>$data<br>          </font></strong><font color='#000066'><a href='#a' class='texto' onClick='MM_openBrWindow('eventos/cursoevento.php?idagenda=$idagenda','','scrollbars=yes,width=540,height=450')'>           $titulo</a></font></p>      </div></td>  </tr>  <tr class='linhaFINA'>    <td height='5'> </td>    <td height='5' bgcolor='#DFDFDF'> </td>    <td height='5' bgcolor='#DFDFDF'> </td>  </tr></table></body></html>"; }?>

tudo funciona, os css, as barras de rolagens coloridas (tudo dentro do echo)... mas o OnClick nao funciona....

 

ja tentei botar o javascript dele antes do php, depois do php, no meio do php e nao rola... se alguem souber o porquê de nao funcionar, por favor, me da um toque... to quase quebrando o PC hehehe...

 

valeus!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Renato,

É pq o Onclick fecha no primeiro aspas simples...

So que nao entendi pq você precisou colocar isso tudo dentro de um php (mais especificamente dentro de um echo...

Pq nao faz algo do tipo?

 

<?seu codigo php?><!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'><html><head><title>Documento sem título</title><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>...

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá Muneo...cara, na real fiz assim pq peguei toda a pagina html, que ja era html, com atualização manual, e meti dentro do echo... sera que perde velocidade ou algo assim? acho que sim neh... sobre o onclick, nao vi onde tem aspas duplas... na verdade revisei para que tivesse apenas aspas simples... veja:<a href='#a' class='texto' onClick='MM_openBrWindow('eventos/cursoevento.php?idagenda=$idagenda','','scrollbars=yes,width=540,height=450')'> $titulo</a>após onclick, tem a primeira aspas imples... dae vem o MM papapa... la adiante, depois de $idagenda, tem duas aspas simples, e nao uma dupla... pq tem sei la heheh, o onclick em sempre pego pronto... o que posso arrumar nele pra funcionar??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu falei pra você colocar fora do echo pra nao precisar substituir as aspas duplas do html por aspas simples... ...mas vamos ao erro que ta acontecendo...

O seu browser entende que o seu codigo onclick é isso:

onClick='MM_openBrWindow('
Entendeu???

O correto seria o onClick = "MM_..."

Mas ai você taria incompatibilizando com o echo que tem abre aspas duplas...

Possivel solucao:

onClick=\"MM_openBrWindow('e... ...)\">

OU SEJA, troque as aspas simpes da funcao onclick por \"...

(ps: nao testei, mas acho que funciona...)

Compartilhar este post


Link para o post
Compartilhar em outros sites

VOCE PRECISA DE DUAS COISA UMA É A FUNÇÃO E A OUTRA É O LINK E FEITO

ATE MAIS CARA

 

 

PHP [/tr][tr]<script language="JavaScript">

<!--

 

function MM_openBrWindow(theURL,winName,features) { //v2.0

window.open(theURL,winName,features);

}

//-->

</script>

 

<a href="#" onClick="MM_openBrWindow('pagina.php','popup','scrollbars=yes,resizable=yes,width=500,height=450')"> Clique Aqui </a>

[/tr]

 

FLW

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu sempre uso aspas simples no PHP porque acho que isso torna o script mais rápido. Quando você usa aspas duplas, ele tentará encontrar e substituir as variáveis no que você está ecoando, por exemplo:

PHP [/tr][tr]<?php

$var = 'teste';

 

echo "Isto é um $var";

// Irá ecoar:

// Isto é um teste

 

echo 'Isto é um $var';

// Irá ecoar:

// Isto é um $var

?>

[/tr]

Então, para ecoar alguma variável usando aspas simples, eu uso o código com a variável concatenada:

PHP [/tr][tr]<?php

$var = 'teste';

 

echo 'Isto é um '.$var;

// Irá ecoar:

// Isto é um teste

?>

[/tr]

Se eu quiser colocar aspas simpels no código, só preciso colocar uma barra antes:

PHP [/tr][tr]<?php

$var = 'teste';

 

echo 'Isto é um \ '.$var.'\ ''; // /!\ Note: no final são duas aspas simples! // ELIMINE O ESPAÇO ENTRE A BARRA INVERTIDA E A ASPA SIMPLES

// Irá ecoar:

// Isto é um 'teste'

?>

[/tr]

Então, para o código funcionar direito, eu deixo as aspas da HTML como duplas e ecôo dentro do ECHO com aspas simples, colocando uma barra invertida antes da aspa simples que preciso ecoar sem fechar o código.

Tomando como exemplo o seu código, trocando as aspas da HTML por duplas e as do PHP por simples, a parte do código que está dando problema ficará assim:

PHP [/tr][tr]

<?php

echo '<a href="#" onClick="MM_openBrWindow(\ 'pagina.php\ ',\ 'popupa\ ',\ 'scrollbars=yes,resizable=yes,width=500,height=\ ')"> Clique Aqui </a>'; // ELIMINE O ESPAÇO ENTRE A BARRA INVERTIDA E A ASPA SIMPLES

?>

[/tr]

Bom, eu faria assim :P

 

EDITANDO: Quando postei, a barra invertida e a aspa viraram uma série de números, agora eu corrigi com um espaço, basta elimina-lo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o nome dessa "barra", para esse caso, é backslash

Sim.

 

O nome da aspa dupla é somente aspas.

O nome das aspas simples é apóstrofo.

 

Mas a gente chama pelo nome que a gente conhece :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

o nome dessa "barra", para esse caso, é backslash

Sim.

 

O nome da aspa dupla é somente aspas.

O nome das aspas simples é apóstrofo.

 

Mas a gente chama pelo nome que a gente conhece :D

UAHiuAHuAHIuAHIUHAIU

Professores de português de plantão !!

AHiuAHiuaHiouahsauihsiuahIUSAS

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

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.