Re: [請益] php 和商品資訊

看板PHP作者 (蒙古烤小草)時間4年前 (2020/12/03 07:15), 4年前編輯推噓5(619)
留言16則, 9人參與, 4年前最新討論串2/2 (看更多)
※ 引述《spong (請輸入ID)》之銘言: : 如果SQL中有商品相關資訊,如:規格、描述...等,要將產品資訊,塞到html中自己設計的 : 卡片區塊(div),需要重複建立卡片區塊在,在塞入資料?還是可以在php中先連上資料庫 : ,用for迴圈建立卡片區塊,這樣畫面沒有css、bootstrap的輔助,顯示出來的網頁會不會 : 很醜,還是可以在php中引入css、bootstrape : 剛學沒多久,還請鞭小力一點 基本上比較複雜的網站都是像前面推文說的一樣都是MVC架構。 這裡用一個簡單的單頁程式來作例子看怎樣把php和前端語法結合在一起。 ------------ <?php /* 這裡開始撈資料,內容就省略。一般來說MVC架構會在這裡把來自model的資料讀出來 而非在這裡直接讀資料庫。但這裡為了簡潔,假設我們在這裡讀資料庫的內容。 */ // 把資料存成在陣列裡面,等等取用。為了簡潔,這裡就不考慮其他處理或跳脫。 $products = $mysqli->fetch_all(MYSQLI_ASSOC); ?> <html> <head> <!--內容省略--> </head> <body> <table class="table"> <!-- 你可以把php語法包在小的<?php ?>裡面,這樣就不會跟HTML混在一起 --> <?php foreach($products as $product): ?> <!-- 現在你在迴圈內了,這裡面的HTML語法都會跟著迴圈重複 --> <tr> <!--你可以使用<?=?>來當作縮短版的echo來使用--> <td> <?=$product["product_name"]?> </td> <td> <!--if的道理也是一樣--> <?php if(!$product['qty']): ?> <!--PHP語法以外你要怎樣套用CSS、bootstrap都可以--> <span class="badge badge-danger">無庫存</span> <?php endif; ?> </td> </tr> <!-- 沒有用括弧記得要用endforeach關閉迴圈 --> <?php endforeach; ?> </talbe> </body> </html> -------------------------- 這樣一來你就可以把HTML語法跟PHP結合在一起,渲染各種CSS格式等等。也不會把所有 的HTML語法塞在echo裡面,讓程式更加可讀。 當然這是非常簡單的版本,讓你了解怎樣把PHP的結果用前端語言渲染出來。總有一天 你學得深了,或是有真正實務上的需求了,就會知道上面範例不是真正良好的示範,但 那是後話了。 希望這樣對你有幫助。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 70.71.184.148 (加拿大) ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1606950928.A.1E4.html ※ 編輯: bakedgrass (50.67.17.136 加拿大), 12/03/2020 13:08:16

12/04 10:51, 4年前 , 1F
這寫法也太古老了吧
12/04 10:51, 1F

12/05 23:33, 4年前 , 2F
推一個熱心分享
12/05 23:33, 2F

12/08 11:06, 4年前 , 3F
與其說古老,我覺得更像是讓PHP做原本設計的任務:樣版引擎
12/08 11:06, 3F

12/09 04:21, 4年前 , 4F
<?= 這寫法要小心用。 short open tag 不一定開
12/09 04:21, 4F

12/09 11:27, 4年前 , 5F
謝謝大家的回饋
12/09 11:27, 5F

12/09 11:28, 4年前 , 6F
<?= 在官方文件裡面好像是被歸類成normal tag
12/09 11:28, 6F

12/09 11:28, 4年前 , 7F

12/10 00:45, 4年前 , 8F
5.4.0 後才改的, 避免踩雷盡量不要用
12/10 00:45, 8F

12/10 05:42, 4年前 , 9F
謝謝建議
12/10 05:42, 9F

12/10 05:43, 4年前 , 10F
我有看過一些相關的爭議,也有人覺得可以放心使用。但
12/10 05:43, 10F

12/10 05:43, 4年前 , 11F
我會記得你的建議
12/10 05:43, 11F

12/11 12:06, 4年前 , 12F
PHP 全銜不是超文字預處理器嗎?這樣寫到底哪裡古老了
12/11 12:06, 12F

12/13 20:27, 3年前 , 13F
5.3是11年前的版本 就算真的需要支援還是可以從設定開啟
12/13 20:27, 13F

12/13 20:27, 3年前 , 14F
所以這寫法是很安全的
12/13 20:27, 14F

12/14 14:58, 3年前 , 15F
可以用 PHP7以下的都該升了
12/14 14:58, 15F

02/21 18:35, 4年前 , 16F
古老嗎 可以去瞭解一下 Personal Home Page 問世的意義
02/21 18:35, 16F
文章代碼(AID): #1Vo20G7a (PHP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #1Vo20G7a (PHP)