Bài viết gần đây

Thứ Ba, 2 tháng 12, 2014
Hướng dẫn tích hợp thanh toán  trực tuyến với paypal trên localhost

Hướng dẫn tích hợp thanh toán trực tuyến với paypal trên localhost

1.      Giới thiệu chung
Hiện nay việc giao dịch trực tiếp ngày càng phát triển, đặc biệt đối với các website thương mại điện tử. Để đáp ứng yêu cầu ngày càng cao của các doanh nghiệp và tính tiện dụng cho khách hàng, rất nhiều hình thức thanh toán online được ra đời ví dụ như : Thanh toán qua tài khoản bảo kim, qua ngân lượng, thanh toán bằng tài khoản ngân hàng, bằng thẻ cào điện thoại,Ví Momo,… Ở Việt Nam, hình thức thanh toán đang được áp dụng phổ biến là qua cổng thanh toán Bảo Kim, Ngân Lượng. Đối với giao dịch quốc tế thì có hình thức thanh toán qua tài khoản PayPal.
2.      Sử dụng Cổng thanh toán Paypal trên localhost
Cổng thanh toán cho phép các chủ website thương mại điện tử tạo ra một tài khoản và hỗ trợ tích hợp thanh toán online lên website của mình với rất nhiều hình thức, đảm bảo an toàn cho khách hàng cũng như người bán. Theo đó, Sau khi đăng ký thành công một tài khoản, Paypal sẽ có một chức năng tích hợp thanh toán cho người bán hàng, người bán sử dụng những đoạn mã do Paypal cung cấp, đoạn mã này có chức năng gửi những thông tin từ website của người Bán qua PayPal ví dụ như : Trị giá hóa đơn, Thông tin người nhận tiền, và một số thông tin khác để đảm bảo sự đồng bộ giữa website người bán hàng và Paypal, sau khi gửi thông tin qua cho Paypal thì mọi công đoạn thanh  toán sẽ do Paypal xử lý và gửi kết quả quay lại cho website người bán
3.      Cách tích hợp thanh toán PayPal trên localhost dành cho các Lập trình viên sử dụng tài khoản Test
v Bước 1: Ta truy cập vào website : https://www.paypal.com/vn/cgi-bin/webscr?cmd=_biz-signup-flow để đăng ký 1 tài khoản PayPal
v Bước 2: Sau khi đăng ký thành công ta, truy cập vào đường link sau và đăng nhập : https://www.paypal.com/vn/cgi-bin/webscr?cmd=_biz-signup-flow
v Bước 3: Sau khi đăng nhập thành công ta truy cập vào đường link sau để quản lý tài khoản test và một số chức năng cần thiết phục vụ cho việc tích hợp thanh toán trực tuyến : https://developer.paypal.com/webapps/developer/applications/myapps
v Bước 4: Tiếp theo ta chọn vào Account của mục Sandbox, một màn hình hiện ra như sau :
Hướng dẫn thanh toán online qua cổng paypal
Hướng dẫn thanh toán online qua cổng paypal

v Bước 5: Tại đây để tạo một tài khoản test ta click chọn vào Create Account ,sau đó nhập các thông tin như hướng dẫn ở dưới

v Bước 6: Sau khi tạo xong ta có danh sách tài khoản test như sau :

v Bước 7: Tiếp theo ta sẽ tích hợp thanh toán vào website bằng form như sau : Form này thường được thêm vào trang hóa đơn thanh toán của website điện tử, tùy nhà phát triển, đối với tài khoản test thì giá trị của action là như ở dưới còn nếu tài khoản chính thức thì xóa bỏ chữ sandbox ở đầu đi là được

v Bước 8: Các bước còn lại do Paypal họ xử lý nếu khách hàng nhấn vào nút thanh toán qua  Paypal, để kiểm tra tài khoản của người mua và người bán thì ta truy cập vào link : https://www.sandbox.paypal.com/ và đăng nhập theo tài khoản đã tạo ở bước 5 để kiểm tra tài khoản và chi tiết các giao dịch
Link tải code demo : Tại đây
Thứ Sáu, 2 tháng 5, 2014
no image

Hướng dẫn khắc phục lỗi font khi sử dụng đối tượng MultipartRequest trong java

Bài viết dưới đây mình sẽ hướng dẫn các bạn khắc phục hiện tượng lỗi font khi sử dụng đối tượng MultipartRequest.
Như chúng ta đã biết, khi làm việc với một form viết bằng html nếu trên form đó chỉ chứa các textfield thì việc lấy dữ liệu trên các form đó bằng đối tượng Request  thông qua phương thức getParameter thì rất dễ dàng và việc. Tuy nhiên trong một số trường hợp thì thông tin trên form không chỉ là các textfield không mà còn phải kèm theo các tập tin đa phương tiện ví dụ như: hình ảnh,âm thanh,...và một quy định trong form của html là nếu như form đó có chứa các thành phần multimedia thì bắt buộc chúng ta phải khai báo thêm thuộc tính  enctype="multipart/form-data" của form. Và việc lấy dữ liệu trên form lúc này thông qua phương thức getParameter của đối tượng Request là điều trong mơ :D.lúc này nếu chúng ta lấy dữ liệu trên form  bằng cách đó thì chỉ nhận về kết quả là null mà thôi.
Vậy làm sao mình lấy dữ liệu bây giờ ? Bạn yên tâm, lúc làm  đồ án và gặp trường hợp như thế này mình đã đặt ra câu hỏi như vậy. Và google.com.vn quả là một người thầy tuyệt vời, mình đã tìm ra các giải quyết nhờ nó :D. Để lấy dữ liệu được và upload kèm các file multimedia thì chúng ta sẽ sử dụng thêm một thư viện bổ  sung và nó có tên là Oreilly bạn có thể tải về tại đây . Sau khi tải về giải nén ra bạn copy file có tên là cos vào thư mục lib trong thư mục WEB-INF. Bây giờ ta đã có thư viện hỗ trợ rồi. Bước tiếp theo là ta sẻ sử dụng đối tượng MultipartRequest trong thư viện đó, và thông qua hàm getParameter("tenphantutrenform") để lấy dữ liệu.
Các tham số truyền vào khi khởi tạo một đối tượng MultipartRequest là. Đối tượng Request,Thư mục gốc và kích thước tối  đa của file multimedia.
Ví dụ :
MultipartRequest mul=new MultipartRequest(request,".",10*1024*1024)
Đến đây việc lấy dữ liệu coi như đã thành công, tuy nhiên vấn đề đặt ra ở đây là dữ liệu mà chúng ta lấy được lại không như ý muốn đó là vấn đề lỗi FONT. Đây là cái lỗi mà làm mất nhiều thời gian của mình nhất và mình đã thử hỏi google hết cách nhưng thầy ấy đành bó tay, và rồi mình quyết định tìm hiểu sâu hơn về đối tượng MultipartRequest. Và mình đã tìm được ra câu trả lời và cách giải  quyết vấn đề lỗi font khi lấy dữ liệu bằng multipartrequest. Mình hiểu nỗi khổ fix bug của các bạn và nó là động lực để mình viết bài hướng dẫn này, hi vọng những ai gặp phải vấn đề này sẽ tìm được bài hướng dẫn của mình.
Nào bắt đầu. Nguyên nhân lỗi font ở đây đơn giản là do encoding mặc định của Multipartrequest là ISO-8859-1 mà dữ liệu trên form lại là tiếng việt có encodingUTF-8, cho nên khi dữ liệu lấy từ form và truyền vào MultipartRequest sẽ bị convert về chuẩn ISO-8859-1 và dẫn đến tình trạng lỗi font. Mà trong đối tượng MultipartRequest lại có một tham số khởi tạo là set encoding cho nó do đó vấn đề của mình bây giờ là lúc khởi tạo nó chúng ta thêm vào một tham số khởi  tạo encoding có giá trị là UTF-8. và bây giờ đã hết lỗi font.
Cách khởi tạo như sau :MultipartRequest mul=new MultipartRequest(request,".",10*1024*1024,"UTF-8")

Mình xin kết thúc bài hướng dẫn ở đây, hi vọng nó sẽ giúp ích được cho các bạn, chúc các bạn làm bài tốt.và dưới đây là bài code hướng dẫn do mình làm các bạn nếu gặp khó khăn thì tham khảo thêm nhé !

package Controller;

import java.io.File;
import java.io.IOException;
import java.util.Enumeration;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.oreilly.servlet.MultipartRequest;

import Model.NHANVIEN_MOD;
import object.NHANVIEN_OBJ;

/**
 * Servlet implementation class NHANVIEN_CTR
 */
@WebServlet("/NHANVIEN_CTR")
public class NHANVIEN_CTR extends HttpServlet {
    private static final long serialVersionUID = 1L;
      
    /**
     * @see HttpServlet#HttpServlet()
     */
    public NHANVIEN_CTR() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        NHANVIEN_OBJ nv_obj=new NHANVIEN_OBJ();
        NHANVIEN_MOD nv_mod=new NHANVIEN_MOD();
        MultipartRequest multi=new MultipartRequest(request,".",10*1024*1024,"UTF-8");
        File file=multi.getFile("hinhanh");
        String myfolder=getServletContext().getRealPath("hinhanh")+"\\";
        String link=myfolder+file.getName();
        file.renameTo(new File(myfolder,file.getName()));
        nv_obj.setManv(multi.getParameter("manv"));
        nv_obj.setHoten(multi.getParameter("hoten"));
        nv_obj.setGioitinh(multi.getParameter("gioitinh"));
        nv_obj.setDiachi(multi.getParameter("diachi"));
        nv_obj.setSdt(multi.getParameter("sodienthoai"));
        nv_obj.setHinhanh(link);
        if(nv_mod.ThemNhanVien(nv_obj)>0)
        {
            response.sendRedirect("NhapThongTinNV.jsp");
        }
        else
        {   
            response.getWriter().print("manv:"+multi.getParameter("manv"));
            response.getWriter().print("gioitinh:"+request.getParameter("gioitinh"));
            response.getWriter().print("sodt:"+request.getParameter("sodienthoai"));
            response.getWriter().print("diachi:"+request.getParameter("diachi"));
            response.getWriter().print("diachi:"+multi.getParameter("hoten"));
        }   
    }
}

 




Thứ Bảy, 12 tháng 4, 2014
no image

Hướng dẫn seo off-page cho người nhập môn

 SEO Off-Page.
- SEO OffPage Optimization: là công việc thực hiện bên ngoài trang website, không thực hiện thủ thuật tối ưu trên trang web. Để cải thiện thứ hạng SEO của website trong bảng xếp hạng và khả năng tiếp cận website của khách hàng . SEO Offpage tập trung vào xây dựng backlinks và phát triển SOCIAL MEDIA MARKETING, điều bạn cần là xây dựng các liên kết trỏ đến website mình, việc này được định nghĩa là link-building (xây dựng liên kết), có vẻ như đây là điều dễ dàng nếu bạn có những nguồn link tốt, link trỏ đến từ các trang có PR càng cao, độ tin cậy và thứ hạng của bạn cũng theo tỉ lệ thuận. Tuy nhiên, nên lưu ý đến việc các link trỏ về này có rel là nofollow (hoặc external nofollow) hay không. Nếu link trỏ đến có rel là nofollow thì việc xây dựng liên kết từ trang đó gần như vô nghĩa ( hay ít ra thì cũng tốt cho việc Marketing).
- Trong lĩnh vực SEO, việc phát triển các liên kết, tạo dựng các mối liên hệ trên cộng đồng mạng (SEO Off Page) có rất nhiều yếu tố quan trọng cần chý ý tới để có thể giúp website của bạn có được thứ hạng cao trên các cỗ máy tìm kiếm một các dễ dàng hơn. Hãy đảm bảo rằng trang web của bạn có một sự hấp dẫn nào đó mà những người khác sẽ được quan tâm để liên kết với bạn. Và theo mình biết ở Việt Nam các SEOer thực hiện Off-page SEO thường chủ yếu qua các Forum và Rao vặt.
Còn các mạng xã hội sau này mới phát triển, các SEOer cũng tìm được cách SEO cho riêng mình. Nhiều bạn cũng có kết quả rất tốt, các bạn có thể tự tìm hiểu thêm ^^.
- Trao đổi liên kết với các site có cùng chủ đề, PR cao và các diễn đàn có boot vào nhiều để website có độ index nhanh hơn, điều này cũng rất quan trọng vì nó mang lại hiệu quả cao.
- Tìm kiếm các Forums, Website, Wiki, Mạng xã hội, trang tin tức nhanh…để làm tăng độ trust website, tìm kiếm các nội dung liên quan tới vấn đề mình đang cần SEO. Hay bạn nào lười có thể sử dụng tools SEO để tìm kiếm các link forums đứng top từ khóa mình seo dễ hơn.
Nội dung không được trùng lặp: Bạn phải tự viết nội dung của mình không nên sao chép từ bất kỳ các website khác rồi paste qua website của mình vì google có bộ lọc nội dung rất tốt có thể phát hiện và bạn sẽ bị trừ điểm đó.
- Bạn muốn biết những vị khách ghé thăm website của bạn đến từ quốc gia nào? Thời gian là bao lâu? Vấn đề (nội dung) quan tâm nhất trên website của bạn là gì?… Bạn sẽ có câu trả lời với Google Analytics. Sử dụng Google analytics để phân tích và tìm kiếm thông tin chuẩn xác nhất. Hãy đăng ký ngay một tài khoản Google analytics và tìm hiểu nhé các bạn.Ngoài ra các bạn có thể sử dụng Google tools để check backlink, theo dõi nguồn backlink của website bạn và các site khác như thế nào, từ đó tự rút ra được cái gì cần phải học hỏi và áp dụng ngay.
 PR-Page Ranks: Như bạn đã biết Google có thang điểm 10 để đánh giá page rank của một website. PR càng cao, website càng tốt (trong khi đó chỉ số alexa càng nhỏ càng tốt nhé). Nhưng bây giờ các SEOer không còn mấy quan tâm đến vấn đề này nữa, chỉ vì cụ tổ Google thời gian gần đây rất thất thường, một số Website có tên tuổi hay lâu năm bị đánh PR thụt xuống trong khi đó các Website mới lại lại nhảy PR rất cao. Điều này gây ra ít nhiều bức xúc và có phần ức chế với các SEOer chân chính ngày đêm cày cuốc ^^. Một số bạn lại cho rằng PR rất quan trọng, theo mình nghĩ tùy cách hiểu của từng SEOer khác nhau nên có nhiều cách nghĩ và cách làm khác nhau. ( Chú ý nữa là PR quan trọng khi các bạn trao đổi liên kết giữa các Website với nhau nhé, bao giờ cũng hỏi và ít khi có chuyện site Pr6-7 là trao đổi với site có PR 0-1. Lý do thì vô vàn….).
Domain Age (Tuổi domain): Tuổi domain cũng là một yếu tố để Google đánh giá ranking của một trang web. Tuổi domain ở đây có thể hiểu là thời gian domain được đăng ký nhưng xin bạn lưu ý một điều là nếu website của bạn thay đổi nội dung liên tục, Google sẽ không đánh giá tốt website của bạn.
Tận dụng các Mạng xã hội phát triển nhất hiện nay để SEO: Lựa chọn một cái tên thật hay và ấn tượng. Bạn hãy kiếm một cái tên sao cho thật thu hút, hơi lạ và phải có một chút hướng với mục tiêu mà bạn đề ra. Chẳng hạn bạn đang làm dịch vụ seo bạn cũng có thể liên tưởng đến cái tên Seomaster hay Seopro như vậy bạn sẽ có cơ hội thu hút một lượng truy cập rất lớn thông qua các tên này.
+ Back Links To Domain (liên kết link đến domain): Khi bạn xây dựng các liên kết (back link) ngoài việc liên kết đến từng trang cụ thể, bạn còn có những liên kết đến trang chủ. Những liên kết này thường được đánh giá cao nhưng ứng với mỗi anchor text khác nhau mình nghĩ nên liên kết đến từng trang cụ thể trong website sẽ tốt hơn. Đặc biệt liên kết từ domain.edu hay .gov Google sẽ đánh giá cao các liên kết đến những trang này.
Không nên sử dụng kỹ thuật xấu cho website: Khi làm seo không nên sử dụng những kỹ thuật đen tối nhằm tăng thứ hạng một cách nhanh chóng mà hãy làm một các tự nhiên như vậy về mặt lâu dài sẽ tốt cho website của mình. (Cái này cũng tùy vào từng SEOer và mục đích làm ăn như nào nhé).
Bắt đầu một Blog và viết thú vị, độc đáo về các vấn đề của bạn, sản phẩm, tin tức và các trang web khác trong cộng đồng của bạn. Bình luận trên các trang web khác với ý kiến hữu ích, có liên quan và có giá trị. Tham gia vào diễn đàn để tìm hiểu những gì khách hàng tiềm năng của bạn nghĩ là quan trọng.

Sử dụng GG Adwords: Nhiều người nhầm tưởng rằng khi mình dùng quảng cáo GA là có thể thúc đẩy website có thứ hạng cao một cách nhanh chóng, trên thực tế không phải vậy nó có thể làm cho bạn tốn chi phí rất nhiều mà không làm gia tăng thứ hạng cho từ khóa, mà còn làm kinh phí của bạn tăng lên một cách vô ích. Tuy nhiên nếu bạn có tiềm lực về kinh tế thì bạn nên kết hợp cả 2( tự SEO và chạy GA), điều này cũng cực kỳ tốt cho website của bạn.
Copyright © 2014 Thủ thuật IT All Right Reserved
Designed by THIỀU ANH NHẤT