Trang: [1] 2 Xuống
  In  
Tác giả Chủ đề: Lập trình Web: Localhost, testing Php file?? (Đọc 1266 lần)
0 Thành viên và 1 Khách đang xem chủ đề.
CTBer tâm huyết
******


Bounty Hunter

Xem hồ sơ cá nhân WWW Email
Đánh giá: +18/-18
Offline Offline
Giới tính: Nam
Bài viết: 1578
Khóa: 00-03
Lớp: Tin
« vào lúc: Tháng Hai 01, 2004, 08:06:59 PM »

Dạ kính thưa các cụ, cháu xin được mạn phép hỏi linh tinh về mấy vụ lập trình web !!!!
 1. Php hơn html như thế nào, rồi asp nữa... ngôn ngữ nào là đỉnh nhất hiện nay ?
 2. Cách lập 1 forum? làm sao để quản lí thông tin trên forum như danh sách thành viên, các bài viết? MySQL là cái con chi chi ?
 3. Muốn chèn đoạn VB Script thì viết câu lệnh ra sao ?
 :D hỏi thế đã nhỉ ?
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #1 vào lúc: Tháng Hai 03, 2004, 01:14:10 PM »

Hè hè, cháu đã hỏi thì bác xin có lời thế này:

1. Php hơn html như thế nào?
Hiểu một cách đơn giản nhất, thì HTML (HyperText Markup Language) chỉ là một ngôn ngữ mang tính trình bày (cái này chắc có nhiều bác muốn phản đối đây) và có lẽ một trong những khả năng lập trình hiếm hoi của nó là các tag bắt sự kiện chuột như OnMouseOver... Và vì thế, nếu chỉ dùng HTML để viết một Web Service (một Web Service tạm định nghĩa là có nhập, xử lý và hiển thị thông tin một cách tự động), thì có thể khẳng định là không thể. Chính vì thế, với các ứng dụng Web chúng ta cần một ngôn ngữ lập trình mạnh hơn để "tiền xử lý thông tin" trước khi gửi mã HTML đến trình duyệt hoặc ngược lại. Các ngôn ngữ lập trình như thế lại có hai loại, một loại chạy trên máy chủ (ví dụ PHP, ASP, JSP) và một loại chạy ngay trên máy của người dùng (ví dụ JavaScript). Mỗi loại có một thế mạnh riêng, nhưng thường thường để phục vụ cho các ứng dụng Web dùng nhiều tài nguyên máy chủ và phải thường xuyên truy xuất cơ sở dữ liệu (forum này chẳng hạn), PHP-ASP chắc chắn tốt hơn JavaScript (tất nhiên ví dụ để kiếm tra tính đúng đắn của dữ liệu người dùng nhập vào thì JavaScript lại tiện hơn).
Vậy chốt lại thì PHP hơn HTML ở chỗ nào? PHP có gần như đầy đủ các tính năng của một ngôn ngữ lập trình (các cấu trúc điều khiển, khả năng đọc/ghi file...) và có thể gửi các mã HTML đến browser của người dùng. Còn HTML thì là thứ để trình duyệt hiển thị (không có nó thì không có cái bạn đang đọc :D) nhưng lại không có các tính năng cơ bản để lập trình.
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #2 vào lúc: Tháng Hai 03, 2004, 01:39:24 PM »

2. Cách lập 1 forum? làm sao để quản lí thông tin trên forum như danh sách thành viên, các bài viết? MySQL là cái con chi chi ?

Muốn lập một forum, cách đơn giản nhất là chọn một cái viết sẵn, down về, up lên rồi cài đặt sơ sơ là được. Tuy nhiên cái Locke muốn hỏi ở đây, và cái tớ muốn nói ở đây là cơ chế xử lý của một forum thông thường. Ở đây, tớ xin được lấy phpBB là thứ tớ hiểu rõ nhất để làm ví dụ.

Như đã nói ở trên, bản chất của gần như tất cả mọi thứ trên Web (những gì bạn nhìn thấy - frontend) là HTML. Vì thế phpBB, dù có xử lý kiểu gì thì cuối cùng cũng phải xuất ra :P một trang HTML để gửi tới người dùng. Vậy cơ chế tạo mã HTML của phpBB như thế nào khi mà các trang của forum đều có một mẫu chung (template)? Những gì chung nhất của một trang trong diễn đàn được lưu trong thư mục templates, và phpBB tạo ra một class là template để làm việc với những cái "khuôn" này. Ngừơi lập trình sẽ gán các biến cho class template, sau đó gửi trang template với các biến đã được thay vào đến browser, đại loại như thế là xong :P Tất nhiên chi tiết của cái này khá phức tạp, nếu quan tâm thì Locke có thể tìm hiểu, nếu có gì vướng mắc thì tớ đây sẽ sẵn sàng "đối chất" :D

Vấn đề thứ hai là phpBB lưu trữ các thông tin như nội dung bài viết, danh sách người dùng ở đâu? phpBB 2.0.x hỗ trợ nhiều loại cơ sở dữ liệu (PostgreSQL, MSSQL, thậm chí cả Oracle...), trong đó loại được dùng phổ biến hiện nay là mySQL (đơn giản vì nó mạnh nhất trong những cái miễn phí). phpBB sẽ lưu các thông tin nói trên trong các bảng của mySQL, và cái hay của các ngôn ngữ kiểu SQL (SQL-based) là các câu lệnh đều hết sức đơn giản, trực quan và gần với ngôn ngữ tự nhiên. Ví dụ, bạn muốn chọn tất cả những ai có username là "Locke Laton" thì chỉ cần viết
Code: [Select]
SELECT * FROM phpbb_users WHERE username='Locke Laton'

Nếu muốn thì Locke có thể đầu tư thêm một ít thời gian để học cái này :P, tuy nhiên hiểu đại thể nó là một kiểu cơ sở dữ liệu rất tiện lợi và dễ dùng, lại được cái miễn phí nữa.
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #3 vào lúc: Tháng Hai 03, 2004, 01:41:52 PM »

3. Muốn chèn đoạn VB Script thì viết câu lệnh ra sao ?

Hè hè, nói thật là tớ chưa từng một lần dùng VBScript, nhưng hope this help: :P

Code: [Select]
<HTML>

<HEAD>

<TITLE>Working With VBScript</TITLE>

<SCRIPT LANGUAGE="VBScript">

  MsgBox "Welcome to my Web page!"

</SCRIPT>
CTBer tâm huyết
******


Bounty Hunter

Xem hồ sơ cá nhân WWW Email
Đánh giá: +18/-18
Offline Offline
Giới tính: Nam
Bài viết: 1578
Khóa: 00-03
Lớp: Tin
« Trả lời #4 vào lúc: Tháng Hai 03, 2004, 05:19:22 PM »

okie đã hiểu vấn đề ! thanks !
hỏi tiếp :D VB cho phép ghi dữ liệu vào những file nhất định, vậy thì tại sao ta lại phải dùng những chương trình quản lí cơ sở dữ liêu (nếu ko nhầm) là MySQL hay linh tinh gì đó ?
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #5 vào lúc: Tháng Hai 03, 2004, 09:32:58 PM »

Thế này thì chú em chưa hiểu vấn đề rồi. Quay trở lại với ví dụ bên trên nhé :D Giả sử chú ghi tất cả user vào file, rồi muốn tìm các user có username là Locke Laton thì làm thế nào, còn dùng mySQL thì làm thế nào? Thêm nữa này, giả sử có hai thằng (hoặc nhiều hơn) cùng truy cập và muốn cập nhật file cùng một lúc thì sao? Tất nhiên là vẫn làm được, nhưng phức tạp hơn nhiều, và tất cả những gì phức tạp như vậy đã được các chuyên gia giải quyết khá tốt trong MySQL, chẳng lẽ lại không dùng :D
CTBer tâm huyết
******


Bounty Hunter

Xem hồ sơ cá nhân WWW Email
Đánh giá: +18/-18
Offline Offline
Giới tính: Nam
Bài viết: 1578
Khóa: 00-03
Lớp: Tin
« Trả lời #6 vào lúc: Tháng Hai 04, 2004, 01:11:24 PM »

Ai bảo là muốn tìm tên user thì không tìm được ?! VB cũng ghi các thông tin vào file và truy xuất cũng có khoa học và hệ thống lắm, hơn nữa nó còn dùng được cả dữ liệu các chương trình khác như excel, access,... cơ mà :D. Em vẫn chưa hiểu cấu trúc ( mà đã ai nói đâu ) của MySQL lắm.
 Còn mấy câu lệnh của MySQL có khác access đâu ? ( không biết cái nào trứơc cái nào sau nữa ? tiếp đi !!
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #7 vào lúc: Tháng Hai 04, 2004, 01:26:28 PM »

First, VB chỉ tạo ra các stand-alone application (*.EXE, *.DLL,...) thôi, không giống PHP đâu. Còn VBScript thì cũng tương tự JavaScript, chỉ chạy trên client. VB có thể truy cập các dữ liệu như thế qua Access, nhưng bản thân Access cũng là một hệ quản trị cơ sở dữ liệu (cùng chức năng với mySQL) mà. Thực ra thì MySQL cũng lưu các dữ liệu của nó vào các file (không thì còn ghi vào đâu được :D) có phần mở rộng là MYD hay gì gì đó. Thêm một cái nữa là hình như Access không chạy được trên UNIX và LINUX nên không chơi được :D. Còn diễn đàn Snitz 2000 dùng ASP cũng có thể sử dụng cơ sở dữ liệu Access qua các file *.MDB được.

Các câu lệnh của Access ra sao tớ không nắm rõ :"> nhưng chắc cũng giống vì cùng là SQL-based.

Hope this help ;)
CTBer tâm huyết
******


Bounty Hunter

Xem hồ sơ cá nhân WWW Email
Đánh giá: +18/-18
Offline Offline
Giới tính: Nam
Bài viết: 1578
Khóa: 00-03
Lớp: Tin
« Trả lời #8 vào lúc: Tháng Hai 04, 2004, 02:20:49 PM »

Có nghĩa là trên máy chủ cũng có 1 vài file của MySQL ? :D sao em tìm trong FTP chả thấy chú nào hết ?
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #9 vào lúc: Tháng Hai 04, 2004, 03:01:39 PM »

hè hè, câu hỏi hay đây. Muốn nhìn thấy những file đó cậu phải dùng shell access để đăng nhập thì mới nhìn thấy, vả lại nó cũng không ở trong thư mục cậu nhìn thấy trong FTP hay Cpanel đâu :D. Nó nằm ở thư mục cài mysql trên máy chủ cơ :D

Muốn xem thì cứ việc cài mysql trên Windows, vào thư mục gốc (mysql) rồi tiếp tục vào thư mục data, sẽ thấy những gì cần thấy.

Have fun asking.
CTBer tâm huyết
******


Bounty Hunter

Xem hồ sơ cá nhân WWW Email
Đánh giá: +18/-18
Offline Offline
Giới tính: Nam
Bài viết: 1578
Khóa: 00-03
Lớp: Tin
« Trả lời #10 vào lúc: Tháng Hai 05, 2004, 10:35:42 PM »

Hỏi tiếp, cái này hơi Private, nhưng bác không cho em hỏi trực tiếp nên đành vậy, bác có thể trả lời qua mess, hoặc không trả lời (cái này không khoái tí nào). Nhưng bác có thể cho em biết cấu trúc FTP file của diễn đàn này không ? chả biết access những cái nào để mà repair nữa !!
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #11 vào lúc: Tháng Hai 06, 2004, 03:03:15 PM »

Trong thư mục gốc có public_html là thư mục chứa nội dung trang web. Thế là đủ :P
CTBer tâm huyết
******


Bounty Hunter

Xem hồ sơ cá nhân WWW Email
Đánh giá: +18/-18
Offline Offline
Giới tính: Nam
Bài viết: 1578
Khóa: 00-03
Lớp: Tin
« Trả lời #12 vào lúc: Tháng Hai 17, 2004, 09:04:38 PM »

Tiếp đây! bác Thiduong chớ có chạy, mà mấy bác khác cũng xúm vào cho em học hỏi với chứ (1 học trò, 100 thầy :))) Hm.... hôm nọ đầu tư hơn 100k tiền đĩa + sách học Php, MySQL. Đọc thì cũng có hiểu, nhưng mà... :D vẫn phải hỏi:

- Đã cài xong cái Php 4.3 rồi máy nó tạo ra 1 đống thư mục trong C:\Php\ trông giống giống như cấu trúc của trang web này :D. Có 1 file Php.exe chả biết để làm gì (bò) khi chạy hiện ra cửa sổ Dos, trong sách cũng chưa thấy nói đến vụ này, cứ thế tuồn tuột  thôi (nào là HTML, JavaScripts, CSDL, MySQL, Php,....) Cũng không thèm nói là tạo 1 trang Php bằng kí chết tiệt gì ?! chịu, thực hành xong mấy phần HTML rồi, mong bác Thiduong trả lời nhanh để còn tấn công tiếp sang phần kia, không rỗi lại ngồi chơi Games thì tiếc tiền điện lắm :))

- Cái này chắc bác Thiduong không biết (cứ khích đại vậy) làm thế nào để đưa các trang website đã viết vào hoạt động mà không cần kết nối máy chủ, hay Internet? Có nghĩa là  khi gõ vào trình duyệt: http://<IP của máy mình>/<path>/<tên trang web đã viết> thì trình duyệt sẽ hiển thị nội dung website như 1 site hoàn chỉnh.
   á»ž trường em, trong thư viện, nó có 2 máy tính tra cứu (không kết nối Internet, Lan, Intranet) trong dòng address của nó ghi thế này: "http://203.169.47.01/tracuu.html" . Và thế là bọn em tra cứu thoải mái.
   Còn nữa, trong sách dạy em mua về, phần ví dụ, cái hình snap dùng để minh họa dòng địa chỉ ghi: "http://localhost/ex01.html"  họ làm thế nào vậy? Hỏi vậy vì có đợt bác bảo là muốn kiểm tra file php thì chỉ có thể thông qua máy chủ, nếu làm được như trên thì có lẽ không cần đúng không?! thanks nhiều !
CTBer
***


Chuyên gia cọ rửa bàn phím
Yahoo Instant Messenger - blackrose_vn
Xem hồ sơ cá nhân
Đánh giá: +21/-0
Offline Offline
Giới tính: Nam
Bài viết: 195
Khóa: 94-97
Lớp: A1
« Trả lời #13 vào lúc: Tháng Hai 18, 2004, 12:54:04 AM »

Hơ hơ, tự dưng thấy ngứa ngáy chân tay vào chia sẻ ít thông tin, hy vọng giải đáp được phần nào cho chú Locke Laton :P (Ơ nhưng mà mình chỉ biết tí chút về ASP thôi mới chán chứ, mặc kệ :D)

1. Bản thân file PHP nếu cho IE đọc trực tiếp ra màn hình thì cũng là một đống giun dế, mã nguồn loằng ngoằng, may ra Chúa (với lại bác Bill Gates) mới hiểu được. Vì thế mới sinh ra cái vụ xử lý trên máy chủ để trả về kết quả gồm ký tự, âm thanh, hình ảnh đầy đủ cả. Thử lấy ví dụ nhá:
- Loke Laton (và trình duyệt của LL): Vào trang http://www.chuyentb.com, mục Tìm kiếm (thực chất là điền vào các form của file search.php để query) xem các bài viết của em snoopy, dạo này em ấy gửi nhiều bài thật :P.
- Máy chủ: A, có chú tìm kiếm các bài viết của thành viên snoopy đây. Xem nào, yêu cầu từ file search.php; uhm kiểm tra (cookie) thấy chú này đúng là thành viên của diễn đàn nên sẽ cho phép xem. Giở cơ sở dữ liệu ra xem nào. Rồi, mình đã lấy đủ thông tin về các bài viết của snoopy ra đây rồi, chuyển đến cho thằng IE cho LL đọc cái nhỉ?
- thiduong: Ê này, đừng có mà đưa cho nó đống dữ liệu thô đấy nhé, nó không hiểu được đâu, phải làm như ta đã viết mà nguồn trong file search.php đó.
- Máy chủ: Vâng, thưa "xếp", em sẽ trình bày các kết quả thu được dưới dạng HTML bao gồm các thẻ, đảm bảo IE của LL hiểu được ngay. Xong béng.
- Locke Laton (nhìn màn hình): Chà em này đã được gần 200 bài rồi cơ à, phải mạnh tay câu bài hơn chứ không thì bị đuổi kịp mất :(

File php.exe dùng để xử lý các file php; nghĩa là khi trình duyệt của máy khách chỉ đến 1 file php thì php.exe sẽ nhảy ra xử lý file php này và trả kết quả dưới dạng HTML cho máy khách. Không biết lý giải thế đúng chưa nhỉ???

2. Để học về các ngôn ngữ lập trình web trên máy chủ thì cần phải có một máy chủ (tất nhiên rồi, vớ vẩn) nhưng không phải ai cũng có được 2 máy tính nối với nhau rồi cho 1 máy thành server, 1 máy thành client rồi "vọc". Thế thì cứ cho máy mình làm luôn cả hai nhiệm vụ ấy (được cái là bác Bill cho phép mình làm thế). Muốn vậy thì phải cài các thành phần làm cho máy có chức năng như máy chủ; thành phần ấy đối với Win98 là PWS (Personal Web Server - là một phần mềm riêng), các Win cao hơn (2000, XP) là IIS (Internet Information Server - nằm trong các components của Win, thông thường không được chọn để setup mà phải add vào sau). Theo kinh nghiệm của tôi thì IIS của 2000 chạy ổn hơn XP và IIS nói chung chạy ổn hơn PWS :P
Sau khi đã cài xong, máy của bạn đã biến thành 1 web server, thế mà Internet Explorer đòi hỏi muốn vào web site nào thì phải biết được IP hoặc tên đã đăng ký của site đó. Cái này thì phải đọc thêm về mạng, đại loại là bất kỳ một máy tính nào trên mạng đều được xác định bằng 1 địa chỉ IP riêng biệt không được trùng với các máy khác, ví dụ IP của http://www.chuyentb.com là 69.41.232.190 thì để vào trang web bạn có thể gõ vào: http://www.chuyentb.com hoặc http://69.41.232.190.

Thế máy của tôi đang chẳng nối với mạng nào cả, mà lại có website tôi vừa cài xong đây thì vào ngó nghiêng nó như thế nào? À, đơn giản chỉ cần gõ http://localhost là bạn sẽ thấy trang chủ hiện thời của máy tính của bạn. Uhm bẫy giờ nó chỉ có 1 trang demo quảng cáo cho bác Bill thôi, nếu bạn muốn tự thiết kế 1 website riêng thì phải bỏ công sức ra thôi.

Còn nữa, tôi muốn xem file index.htm tôi mới làm chạy "thực sự" trên máy chủ chứ không phải là nhấn kép vào nó để IE mở ra đọc thì làm thế nào? Dễ ợt mà, cú cho file đó vào trong thư mục C:\Inetpub\wwwroot rồi mở IE ra, gõ vào địa chỉ http://localhost/index.htm là xong ngay. Bạn nhớ lưu ý một điều là file .htm hoặc .html thì còn có thể nhấn đúp vào nó để xem chính xác nội dung bên trong được chứ file .asp hay .php nếu làm như thế thì mời bạn xem mã nguồn loằng ngằng nhé.

Đến đây thì bạn đã hiểu chưa? Bây giờ bạn có 1 mạng máy tính "xịn" dù chỉ gồm vài máy tính, máy của bạn (IP được đặt là 203.169.47.01) đã được dựng 1 website bên trong rồi thì bạn đã có thể mời các "tay mơ" đang ngồi trong mạng xem thành quả của bạn bằng cách gõ http://203.169.47.01/index.htm. Đảm bảo có người lác mắt thán phục bạn đấy, oai ghê :P

Hic, mỏi tay, buồn ngủ rồi có gì lần sau tiếp tục nhé; chúc bạn ngủ ngon và có những giấc mơ đẹp  =;
CTBer tâm huyết
******



Xem hồ sơ cá nhân
Đánh giá: +144/-22
Offline Offline
Giới tính: Nam
Bài viết: 2183
« Trả lời #14 vào lúc: Tháng Hai 18, 2004, 01:12:57 PM »

Trích dẫn từ: Locke Laton
...Cũng không thèm nói là tạo 1 trang Php bằng kí chết tiệt gì


Thì cũng như HTML thôi, dùng 1 text editor chuẩn (nói chung theo em mỗi bác nên tự kiếm lấy một cái text editor hợp với mình nhất vì em thấy có người thì thích PHPEditor, người lại thích Notepad :P, còn như em thì chỉ khoái Winsyntax, cái này có highlight dành cho các kiểu file như HTML, ASP, PHP... Sau đó chú save cái file vừa tạo vào C:\Inetpub\wwwroot rồi mở http://localhost/tenfile... là ok.

Anh Blackrose nói địa chỉ của chuyentb.com là 69.41.232.190 cũng đúng, nhưng nếu mở địa chỉ http://69.41.232.190 thì chỉ ra một trang của CPanel thôi, điều này là vì chuyentb.com chia sẻ máy chủ với nhiều site khác, mỗi site là một folder trên đó. Vì thế muốn vào chuyentb.com qua địa chỉ này, bạn phải gõ http://69.41.232.190/~thiduong mới được :).

Nếu máy của LL làm một web server rồi online 24/24 để phục vụ mọi người thì trên lý thuyết là được, tuy nhiên đường truyền ở VN không đủ mạnh để "chơi ngông" như thế :P Nhiều khi chính mình truy cập vào localhost còn thấy chậm nữa là người ngoài, thường sẽ bị lost connection (tớ đã từng thử nghiệm qua đường dial-up 1260 (tất nhiên là acc chùa rồi))
Trang: [1] 2 Lên
  In