-2

我在显示我的帖子时遇到问题。

跑步:

  • 阿帕奇版本。2.2.19 (Unix)
  • PHP 版本 5.2.*

显示错误: “解析错误:语法错误,第 22 行出现意外的 T_STRING index.php”

下面是php脚本:

<?php
include('includes/connect_to_mysql.php');   
?>
<?php include_once('functions/functions.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>magazin</title>
<link href="../style.css" rel="stylesheet" type="text/css" />


</head>

<body>


<?php 


$posts = get_posts(); 

?>


<?php 

foreach( $posts as $post){

  <article>

       <div class="three columns alpha thumbnail">

               <figure><img src="images/<?php echo $post[`posts_id`]; ?>.jpg" alt="<?php echo $post[`posts_title`]; ?>" /></figure>

     </div><!--three-->

          <div class="seven columns omega">

           <h2><a href = "single.php?id=<?php echo $post[`posts_id`]; ?>"><?php echo $post[`posts_title`]; ?></a></h2>

              <p class="meta">Posted by<a href = "<?php echo $post[`posts_id`]; ?>"><?php echo $post[`posts_user`]; ?><?php echo $total_comments; ?></a></p>

           <p><?php echo $post[`contents`]; ?></p>
    </div><!--seven--><hr/>

 </article><!--blog post-->

    }
<?php 
  } 
  ?> 

</body>
</html>
4

5 回答 5

1
foreach( $posts as $post){

  <article>

问题就在这里。

你不能像这样在 PHP 中使用 HTML。

所以通过这样做来修复它:

foreach( $posts as $post) { ?>

<article>

并在必要时重新打开 PHP 标签。

另一种选择是在 HTML 中使用引号:

foreach( $posts as $post) {

   echo '<article>';
于 2013-09-27T11:50:27.997 回答
0

您不能直接在 PHP 中输​​出 HTML 而无需回显或打印出来。这表明您可能需要阅读更多关于 PHP 的基础知识。您可能指的是这种结构:

<?php if (something) { ?>

<div>html output here</div>

<?php } ?>
于 2013-09-27T11:50:36.627 回答
0

你忘了关闭?>之前<article>

这是更正的代码:您忘记关闭?>之前<article>

这是更正后的代码:

    <?php
    include('includes/connect_to_mysql.php');   
    ?>
    <?php include_once('functions/functions.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>magazin</title>
    <link href="../style.css" rel="stylesheet" type="text/css" />


    </head>

    <body>


    <?php 


    $posts = get_posts(); 

    ?>


    <?php 

    foreach( $posts as $post){
// HERE PHP tag wasn't closed.    
?>
      <article>

           <div class="three columns alpha thumbnail">

                   <figure><img src="images/<?php echo $post[`posts_id`]; ?>.jpg" alt="<?php echo $post[`posts_title`]; ?>" /></figure>

         </div><!--three-->

              <div class="seven columns omega">

               <h2><a href = "single.php?id=<?php echo $post[`posts_id`]; ?>"><?php echo $post[`posts_title`]; ?></a></h2>

                  <p class="meta">Posted by<a href = "<?php echo $post[`posts_id`]; ?>"><?php echo $post[`posts_user`]; ?><?php echo $total_comments; ?></a></p>

               <p><?php echo $post[`contents`]; ?></p>
        </div><!--seven--><hr/>

     </article><!--blog post-->
    <?php
        }
    <?php 
      } 
      ?> 

    </body>
    </html>
于 2013-09-27T11:50:52.453 回答
0

您需要在后面加上php标签foreach( $posts as $post){

于 2013-09-27T11:50:56.707 回答
0

当你使用这样的 html 代码时,你必须关闭 php 标签

foreach 行“?>”之后的行

<?php 

    foreach( $posts as $post){
    ?>

      <article>

           <div class="three columns alpha thumbnail">

                   <figure><img src="images/<?php echo $post[`posts_id`]; ?>.jpg" alt="<?php echo $post[`posts_title`]; ?>" /></figure>

         </div><!--three-->

              <div class="seven columns omega">

               <h2><a href = "single.php?id=<?php echo $post[`posts_id`]; ?>"><?php echo $post[`posts_title`]; ?></a></h2>

                  <p class="meta">Posted by<a href = "<?php echo $post[`posts_id`]; ?>"><?php echo $post[`posts_user`]; ?><?php echo $total_comments; ?></a></p>

               <p><?php echo $post[`contents`]; ?></p>
        </div><!--seven--><hr/>

     </article><!--blog post-->


    <?php 
      } 
      ?> 
于 2013-09-27T11:54:04.893 回答