2010-02-19 26 views
6

Có thể chuyển biến tìm kiếm vào Công cụ Tìm kiếm Tuỳ chỉnh của Google mà tôi đã nhúng trên trang web của mình không? Tôi có thể làm cho công cụ tìm kiếm hoạt động, nhưng tôi không thể chuyển qua một cụm từ qua POST (nó đến từ nút tìm kiếm trên các trang khác của trang web)Chuyển biến cho Công cụ Tìm kiếm Tùy chỉnh của Google

Tôi đã cố gắng để hack mã tôi tìm thấy ở đây: http://code.google.com/apis/ajax/playground/?exp=search#hello_world

Và đây là những gì tôi có cho đến nay ... ($ q là một thuật ngữ tôi đi qua với nó)

<script type="text/javascript"> 
    google.load('search', '1', {language : 'en'}); 

    function OnLoad() 
    { 
     var customSearchControl = new google.search.CustomSearchControl('***my key****'); 
     customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET); 
     customSearchControl.draw('cse'); 
     searchControl.execute("$q"); 
    } 
    google.setOnLoadCallback(OnLoad); 
</script> 

Cảm ơn

Trả lời

5

Xin lỗi, tôi biết đó là một câu trả lời không hấp dẫn, nhưng bạn' đã thực sự có nó ngay ngoài việc tham chiếu tên biến sai. Oh, ngoài ra, như một sang một bên, tôi cũng hy vọng bạn đang thực hiện một số loại viêm nhiễm trên $ q, trong trường hợp ai đó đăng nội dung như thế này lên biểu mẫu của bạn: thuật ngữ ");" (aha!

customSearchControl.draw('cse'); 
    searchControl.execute("$q"); 

nên là:

customSearchControl.draw('cse'); 
    customSearchControl.execute("$q"); 

Ngoài ra, cảm ơn bạn cho câu hỏi - tôi đang tìm kiếm cách để làm điều này bản thân mình

+0

Cảm ơn bạn !! Tôi đã kéo tóc ra khỏi cái này, và nó hoạt động hoàn hảo. Cảm ơn một lần nữa! – Matt

2

Điều này là để giúp đỡ bất cứ ai sử dụng PHP cố gắng để hoàn thành mục tiêu này cùng Ví dụ trên!. sử dụng ...

customSearchControl.execute("$q"); 

để đọc các tham số là đường chuyền trong. Trên một trang web PHP bạn sẽ sử dụng ...

customSearchControl.execute("<?php echo $_POST['your_paramter_name_here'];?>"); 

Bạn có thể sử dụng $ _GET hoặc $ _REQUEST nếu tham số của bạn không có trong bài.

Tất nhiên, bạn nên khử trùng đầu vào trước. Một cái gì đó như thế này là khá yếu nhưng đó là một sự khởi đầu ...

customSearchControl.execute("<?php echo htmlentities(trim($_POST['your_paramter_name_here']), ENT_QUOTES);?>"); 
1

Trong trường hợp ai đó đang tìm kiếm một chút thẳng hơn/giải pháp đơn giản. Tất cả những gì bạn phải làm là chuyển các từ khóa tìm kiếm vào tham số GET có tên là q (từ biểu mẫu tùy chỉnh của bạn vào trang nơi GCS của bạn), GCS sẽ tự động sử dụng cụm từ tìm kiếm đó.

Nguồn: https://developers.google.com/custom-search/json-api/v1/using_rest

+0

Thật là một giải pháp đơn giản. '' site.com/search? q = query'' sẽ tự động tìm kiếm bằng truy vấn đó. Cảm ơn bạn! –

Các vấn đề liên quan