Jump to content

Strange parsing error - Fazer parsing de HTML?


claudiop

Recommended Posts

Estou com um erro um bocado estranho numa adaptação de código que estou a fazer.

Eu para meter uma quantidade grande de html, dentro de um ficheiro com algum codigo, costumo (acho eu que como toda a gente), em vez de usar um echo/print/anything else, simplesmente fechar o codigo, e reabri-lo depois(mesmo no decorrer de um loop). Só que desta vez a coisa não correu bem ao adicionar um if a cobrir esse bocado de codigo, e ainda por cima diz-me que o erro está numa linha, onde o codigo já acabou, e só existe html.

Se fosse para dar erro por o codigo não ser terminado, o erro seria na primeira linha de html, acho eu.

Aqui está o código que está a dar problema (depois deste, só existe html):

<?php
/* algumas vars, e a chamada dos valores a uma classe*/
$i = 0;
foreach ( $results['posts'] as $post ) {
if($i==2||$i==5){?>
<li>
<h2><a href="#<?php echo $post->id?>"><?php echo htmlspecialchars( $post->title )?></a></h2>
<p class="summary"><?php echo htmlspecialchars( $post->summary )?></p><br/>
<?php echo date('j F', $post->publication)?>
</li>
<?php}else{?>
<li>
<h2>
<a href="#<?php echo $post->id?>"><?php echo htmlspecialchars( $post->title )?></a>
</h2>
<p class="summary"><?php echo htmlspecialchars( $post->summary )?></p><br/>
<?php echo date('j F', $post->publication)?>
</li>
<?php}}?>

O IDE (Aptana), dá erro no primeiro parêntese do "<?php}else{?>" e do "<?php}}?>", mas no browser, o erro faz referencia a um </div> (a ultima palavra do ficheiro).

Isto é legitimo de fazer(fechar codigo antes da instrução do loop, e reabri-lo no proximo passo), ou vou ter de meter isto tudo dentro de um echo(ou algo do genero)? Pelo menos nunca tive problemas...

Edited by brunoais
geshi!
Link to comment
Share on other sites

e que tal escrever as tags com espaços ?

<?php }else{ ?>
...
<?php }} ?>

Ok, agora entendo o porquê de o Aptana ter deixado de formatar as coisas a while ago --'

Muito obrigado, nem reparei nisso. Estou a ver se me habituo aos fundos pretos, no editor, e não estou habituado á cor da sintaxe.

Metade daquilo mudou logo de cor, mal corrigi o erro 😛

Cumprimentos

Edited by claudiop
Link to comment
Share on other sites

se bem me lembro, o aptana é baseado no eclipse, e se sim :

http://eclipsecolorthemes.org/?view=how-to-use

Eu sei como trocar(tem um botão na taskbar com a esfera de cores), e até porque o tema do aptana 2.x é branco.

Eu é que estou a experimentar o preto por uns dias, porque já ouvi opiniões que é "muito mais bom!", só que enquanto um gajo não se habitua a isto...

Até agora, em vez de cansar menos, até cansa mais os olhos. Se não é pela claridade, é pelo esforço a ver o texto e o highlight da sintaxe.

Enfim, isto já é off-topic.

De qualquer forma, obrigado pela prestabilidade. 😉

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.