2016-09-27 15 views
0

我花了太多時間在我確信的是一個簡單的修復。我希望將下面的代碼作爲表格中的整行打印,方法是從我的數據庫的prod列中抽取行中每個單元格的特定分類。我已經試過它作爲一個while循環和每個。任何幫助將不勝感激,謝謝。PHP作爲表中的一個整行

$sql = 'SELECT * FROM drawings2'; 
$stmt = $dbCon->prepare($sql); 
$stmt->execute(); 

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
echo "<tr>"; 

if ($row[prod] == '') {echo "<td></td><td width='10'></td>";} 
elseif ($row[prod] == 'amphe-309' && $row[des] == 'IP44') {echo "<td align='left' valign='top'><div align='left'><font color='#0083ca'><strong>IP44</strong></font></div></td><td width='10'></td>";} 
elseif ($row[prod] == 'amphe-309' && $row[des] == 'IP67') {echo "<td align='left' valign='top'><div align='left'><font color='#0083ca'><strong>IP67</strong></font></div></td><td width='10'></td>";} 
elseif ($row[prod] == 'amphe-309' && $row[des] == 'Accessories') {echo "<td align='left' valign='top'><div align='left'><font color='#0083ca'><strong>Accessories</strong></font></div></td><td width='10'></td>";} 
    elseif ($row[prod] == 'amphe-309') 
     {echo "<td align='left' valign='top'><div align='left'><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models_Amphe-309', '<?php echo "$row[des]"?>']);"><? echo "$row[des]</a></div></td> 
    <td width='10'></td>";} 

if ($row[prod] == '') {echo "<td></td><td width='10'></td>";}   
elseif ($row[prod] == 'amphe-ex') 
     {echo "<td align='left' valign='top'><div align='left'><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models_Amphe-EX', '<?php echo "$row[des]"?>']);"><? echo "$row[des]</a></div></td> 
    <td width='10'></td>";}  

if ($row[prod] == '') {echo "<td></td><td width='10'></td>";}   
elseif ($row[prod] == 'ex309') 
     {echo "<td align='left' valign='top'><div align='left'><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models_Amphe-EX', '<?php echo "$row[des]"?>']);"><? echo "$row[des]</a></div></td> 
    <td width='10'></td>";} 

if ($row[prod] == '') {echo "<td></td><td width='10'></td>";}   
elseif ($row[prod] == 'ktk') 
     {echo "<td align='left' valign='top'><div align='left'><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models_Amphe-EX', '<?php echo "$row[des]"?>']);"><? echo "$row[des]</a></div></td> 
    <td width='10'></td>";} 

if ($row[prod] == '') {echo "<td></td><td width='10'></td>";}   
elseif ($row[prod] == 'star-line') 
     {echo "<td align='left' valign='top'><div align='left'><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models_Amphe-EX', '<?php echo "$row[des]"?>']);"><? echo "$row[des]</a></div></td> 
    <td width='10'></td>";} 

if ($row[prod] == '') {echo "<td></td><td width='10'></td>";}   
elseif ($row[prod] == 'star-line-ex') 
     {echo "<td align='left' valign='top'><div align='left'><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models_Amphe-EX', '<?php echo "$row[des]"?>']);"><? echo "$row[des]</a></div></td> 
    <td width='10'></td>";} 

echo "</tr>"; 

} 

echo "</table>"; 
$dbCon = null; 
?> 
+0

看來你的問題是html,而不是mysql相關。讓我建議您添加此代碼的當前實際結果。 –

+0

以下是鏈接,您可以看到它將所有內容放在一列中。 http://www.amphenol-industrial.com/literature/aogt-3d – Hartman9

+1

請原諒我的愚蠢......但我真的很難理解你試圖達到的目標。如果一個真正令人困惑的'if'結構使得情況變得更糟,那麼你會反覆檢查'$ row [prod] =='''(6次:S),那麼在這種情況下是不是空白你只打印出2'​​'s因爲它只會打到其中一個'elseif' .....或者我是愚蠢的並且缺少一些東西:( – ImClarky

回答

0

所以我有點解決了我的問題,但它仍然不是最好的方法。我使用<p></p>標籤來正確顯示它,但是當我嘗試對其進行格式化時,這會導致問題,因爲所有內容都應該與<tr></tr>一致。

<? 
$head = array(array('amphe-309','Amphe-309','/images/datasheets/IDS-33 Amphe-309.pdf','Amphe-309 Data Sheet'), array('amphe-ex','Amphe-EX','/images/catalogs/Amphe-EX.pdf' 
,'Amphe-EX Catalog'), array('ex309','EX309','/images/datasheets/IDS-92 EX309.pdf','EX309 Data Sheet'), array('ktk','KTK','/images/datasheets/IDS-35 KTK High Pressure Downhole Connector.pdf','KTK Data Sheet'), array('star-line','Star-Line','/images/catalogs/Star-Line.pdf','Star-Line Catalog'),array('star-ex','Star-Line EX','/images/catalogs/Star-Line.pdf','Star-Line EX Catalog')); 

echo "<table width='100%' border='0' cellpadding='10' cellspacing='0'>".PHP_EOL; 
echo "<tr>".PHP_EOL; 
foreach ($head as $value) { 
    $sql = "SELECT * FROM drawings WHERE prod = '$value[0]'"; 
    $stmt = $dbCon->prepare($sql); 
    $stmt->execute(); 

echo "<td valign='top'><div align='left'><p><a href='$value[2]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', 'AOGT_3D_Models', '<?php echo "$value[3]"?>']);"><? echo "<strong>$value[1]</strong></a></p></div>".PHP_EOL; //Title 


    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 

     if ($row[des] == 'IP44') { 
      echo "<div align='left'><p><font color='#0083ca'><strong>$row[des]</strong></font></p></div>".PHP_EOL; 
      } 
     elseif ($row[des] == 'IP67') { 
      echo "<div align='left'><p><font color='#0083ca'><strong>$row[des]</strong></font></p></div>".PHP_EOL; 
      } 
     elseif ($row[des] == 'Accessories') { 
      echo "<div align='left'><p><font color='#0083ca'><strong>$row[des]</strong></font></p></div>".PHP_EOL; 
      } 

     else { 
     echo "<p><a href='/$row[file]' target='_blank'"?> onclick="_gaq.push(['_trackEvent', 'Downloads', '<?php echo "$row[eventlabel]"?>', '<?php          
     echo "$row[des]"?>']);"><? echo "$row[des]</a></p>".PHP_EOL; 
     } 

    } 
    echo "</td>"; 
} 
echo "</tr></table>".PHP_EOL; 

$dbCon = null; 
?> 
相關問題