10/10/2018, 00:04

Hoi về cách dùng biến và load biến từ file ngoài.

Code:
<embed src="/mediaplayer.swf?file=http://220.231.104.28:4158/blogdata/16757/512_195_BruceLee-Lose%20Patience.flv&amp;backcolor=0x000000&amp;frontcolor=0x666666&showdownload=true" wmode="transparent" bgcolor="#000000" type="application/x-shockwave-flash" height="380" width="452" allowScriptAccess="always" allowfullscreen="true">
Giả sử mình có một đoạn mã như thế này. Một đoạn mã embed file .flv từ Blog.com.vn

Nhưng vấn đề là Blog.com.vn thường xuyên thay đổi giá trị này (in đậm): 220.231.104.28:4158

Có cách nào mình gán 4158 là một biến và giá trị có thể thay đổi từ một file ngoài (external) php hay xml nào đó để tiện việc cập nhật hàng loạt không?.

Cảm ơn đã xem câu hỏi của mình.
Hero_vanchien viết 02:12 ngày 10/10/2018
Câu trả lời là hoàn toàn có thể.
Ví dụ đơn giản.
PHP Code:
<?php
$host 
"220.231.104.28:4158";
?>
<embed src="/mediaplayer.swf?file=http://<?php echo $host ?>/blogdata/16757/512_195_BruceLee-Lose%20Patience.flv&amp;backcolor=0x000000&amp;frontcolor=0x666666&showdownload=true" wmode="transparent" bgcolor="#000000" type="application/x-shockwave-flash" height="380" width="452" allowScriptAccess="always" allowfullscreen="true">
centaurus viết 02:12 ngày 10/10/2018
Cảm ơn bạn đã trả lời giúp mình.

Mình đang dùng TinyMCE. Phần embed mình post vào HTML trong TinyMCE.
Còn phần
Code:
<?php $host = "220.231.104.28:4158"; ?>
Mình để trong news.php (trang nội dung của web mình). Và kết quả là : Cái player không load được
amida viết 02:09 ngày 10/10/2018
Có 2 vấn đề như sau:
- Sự thay đổi port đến từ server blog.com.vn, bạn muốn can thiệp thế nào?
- xml chẳng có vai trò gì trong việc bạn muốn cập nhật những thứ này cả.

Code:
<embed src="/mediaplayer.swf?file=http://<?php echo $host ?>/blogdata/16757/512_195_BruceLee-Lose%20Patience.flv&amp;backcolor=0x000000&amp;frontcolor=0x666666&showdownload=true" wmode="transparent" bgcolor="#000000" type="application/x-shockwave-flash" height="380" width="452" allowScriptAccess="always" allowfullscreen="true">
Khúc này gán vào trang html thì sao chạy đc, vì có đoạn php kìa
Hero_vanchien viết 02:07 ngày 10/10/2018
Có một cách nữa để làm điều này đó là dùng một file trung gian nữa
Giả sử bạn có thể tạo thêm một file có tên là gateway.php trên host của bạn.
Thay vì như cách cũ bạn làm thì bạn dùng
Code:
<embed src="/mediaplayer.swf?file=gateway.php?path=/blogdata/16757/512_195_BruceLee-Lose%20Patience.flv&amp;backcolor=0x000000&amp;frontcolor=0x666666&showdownload=true" wmode="transparent" bgcolor="#000000" type="application/x-shockwave-flash" height="380" width="452" allowScriptAccess="always" allowfullscreen="true">
Rồi ở file đó bạn chuyển hướng, lấy dữ liệu về thế nào thì tùy bạn. Tuy nhiên cách này đòi hỏi bạn phải khá khá php đấy. Với khó khăn hiện tại còn chưa giải quyết được thì cách này còn vất vả hơn
centaurus viết 02:14 ngày 10/10/2018
Hì, thanks mọi người! Rất là noob mấy cái này. Chỉ hay đi vọc mấy mã có sẵn thôi chứ chẳng biết tạo ra như thế nào. Dù sao cũng đã học hỏi thêm được nhiều điều. Thanks nhiều!
amida viết 02:12 ngày 10/10/2018
@Hero_vanchien: Cách bạn include 1 file php trên 1 đường dẫn swf tôi thấy chưa rõ
@Centaurus: Bác biết dùng template engine không? Nếu biết thì chỉ định việc get port vào 1 file php, sau đó gán kết quả về trang html thì giải quyết đc vấn đề trên. Tuy nhiên port đây changable, công việc đầu tiên là bác phải can thiệp được sự thay đổi của nó trên server
Hero_vanchien viết 02:12 ngày 10/10/2018
Được gửi bởi amida
@Hero_vanchien: Cách bạn include 1 file php trên 1 đường dẫn swf tôi thấy chưa rõ
Mình sẽ giải thích thêm.
Đây không phải là inculde mà chỉ là truy vấn thông thường thôi. khi chúng ta dùng đường dẫn file flv cho file swf thì có nghĩa là player (đoán thế) của ta sẽ đọc trực tiếp dữ liệu từ file này và kết hợp với các tham số khác để hoạt động.
Thay vì cho player đọc trực tiếp thì ta cho nó đọc thông qua file gateway của ta. File này chỉ có một công việc duy nhất là đọc file flv đó và dùng header đề trả về dữ liệu dạng binary, nó cũng đồng nghĩa với việc trỏ thẳng đến file flv. Nếu bạn nào đã từng kết hợp php và swf thì sẽ hiểu ý mình.

Điểm yếu là gì?. Đó là tốc độ nếu các file flv đặt ở VN mà host đặt ở USA thì...thôi rồi
Điểm mạnh là gì?. Ta có thể sử lý hàng hoạt được, ví dụ đơn giản là ta muốn có thêm quảng cáo vào player giống như Clip.vn đang làm chẳng hạn. Hoặc như khi nào đó ta có thể tự dựng Data Center cho riềng mình, không cần ăn ké website khác nữa, khi đó ta chỉ cần chỉnh trong file gateway này là xong hết...
Bài liên quan
0