2016-03-29 24 views
1

我一直在試圖將PHP放入PHP中一段時間​​,但我永遠無法使它工作。相反,我不得不使用這個PHP內部的HTML不能正常工作

<?php //code in here 
while($record = mysql_fetch_array($myData)){ 
?> 
//HTML code 
<?php 
} 
?> 

它已經工作了一段時間,但我現在推行的網頁搜索功能,我需要所有的HTML動態地生成,或頁面會顯示兩次。因此,我需要一些幫助。這是我目前擁有的新舊代碼。

<?php 
$sql = "SELECT * FROM `LISTINGS` ORDER BY YA DESC $limit"; 
$myData = mysql_query($sql,$con); 
while($record = mysql_fetch_array($myData)){ 

//this is what i have manage to get done  
echo '<div class="cards-row">'; 
    echo '<div class="card-row">'; 
     echo '<div class="card-row-inner">'; 
      echo '<div class="card-row-image" data-background-image="http://domains/$record["IMAGENAME"].jpg">'; 
      echo '</div>'; 

      echo '<div class="card-row-body">'; 
       echo '<h2 class="card-row-title">'; 
        echo '<a href="http://domain/listing-detail.php?ID='; $record['ID']echo'">' 
        echo '</a>'; 
       echo '</h2>'; 
      echo '</div>'; 

     echo '</div>'; 
    echo '</div>'; 
echo '</div>'; 
?> 

靜態/動態代碼

<div class="card-row"> 
     <div class="card-row-inner"> 
      <div class="card-row-image" data-background-image="http://www.domain/<?php echo $record['IMAGENAME'];?>.jpg" width="150" height="180" "> 

      </div><!-- /.card-row-image --> 

      <div class="card-row-body"> 
       <h2 class="card-row-title"> 
       <a href="http://www.domain/listing-detail.php?ID=<?php echo $record['ID'];?>"> <?php custom_echo ($record['TITLE'], 80); ?><?php if($record['STREET']===' '){ echo "Not provided" ;}?> 
       </a> 
       </h2> 
       <div class="card-row-content"><?php custom_echo ($record['DESCRIPTION'], 250); ?><?php if($record['STREET']===' '){ echo "Not provided" ;}?></div><!-- /.card-row-content --> 
      </div><!-- /.card-row-body --> 

      <div class="card-row-properties"> 
       <dl> 

         <dd></dd><dt><a href="<?php echo $record['WEBSITE'];?>">Visit Website</a></dt> 
         <dd></dd><dt><a href="http://www.domain/listing-detail.php?ID=<?php echo $record['ID'];?>">More Info</a></dt>     
         <dd>Added</dd><dt><?php echo $record['YA'];?>/<?php echo $record['MU'];?>/<?php echo $record['DU'];?></dt> 
         <dd>Viewed</dd><dt>Visited</dt> 

       </dl> 
      </div><!-- /.card-row-properties --> 
     </div><!-- /.card-row-inner --> 
    </div><!-- /.card-row --> 
    </div><!-- /.cards-row --> 
    <br/> 
    <?php 
    } 
    ?> 

我的目標是把所有上面的代碼中

while($record = mysql_fetch_array($myData)){ 
+1

請[停止使用'mysql_ *'功能](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php)。 [這些擴展](http://php.net/manual/en/migration70.removed-exts-sapis.php)已在PHP 7中刪除。瞭解[編寫]​​(http://en.wikipedia.org/ wiki/Prepared_statement)語句[PDO](http://php.net/manual/en/pdo.prepared-statements.php)和[MySQLi](http://php.net/manual/en/mysqli.quickstart .prepared-statements.php)並考慮使用PDO,[這真的很簡單](http://jayblanchard.net/demystifying_php_pdo.html)。 –

+1

[您的腳本存在SQL注入攻擊風險。](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) –

+3

您的目標是將代碼循環內?所以把它放在循環中。我真的不知道你有什麼問題。你目前的產出和期望的產出是多少?第二和第三代碼塊如何組合在一起? – Mike

回答

0

雖然這不是可讀性和可維護性的最佳方式,但我通常使用PHP處理HTML的方式是通過回顯它。

echo "<div style=\"color:red\">test</div>"; 

如果我需要添加PHP內容,那麼

$myVar = "test"; 
echo "<div style=\"color:red\">" . $myVar . "</div>"; 

如果我已經有了一些HTML代碼,我想逃避,我可以很容易地做到這一點使用更換"記事本++的全部替換功能與\"

0

你要排隊一個錯誤15

echo '<a href="http://domain/listing-detail.php?ID='; $record['ID']echo'">' 

將其更改爲:

echo '<a href="http://domain/listing-detail.php?ID='.$record['ID'].'">'; 

而且,你保存它在 「.php」 結尾?

在最後一個回聲後,您忘記了一個'}'。

最後,刪除你的mysql_函數,並使用mysqli_或PDO,如果你在PHP7上。

+0

是的,它是一個.php擴展名,而我的PHP版本是5.2,所以我不能使用所有這些新的花哨的東西 –

+0

感謝您的幫助 –

+1

在PHP 5.2中,您可以使用「所有這些新奇的東西」,不用擔心。 – Asfo