Đầu tiên tôi nghĩ rằng tôi phải chuyển đổi JavaScript thành PHP, nhưng sau đó tôi phát hiện ra rằng tôi không thể vì các hoạt động thực thi phía máy chủ và máy khách. Vì vậy, bây giờ tôi chỉ muốn gửi một biến
function scriptvariable[]
{
var theContents = "the variable";
}
đến một biến PHP
Chức năng đó trong JavaScript thực thi khi giả sử tôi nhấp vào nút.
Bây giờ tôi không biết làm thế nào để gán PHPVarable cho JavaScript để sử dụng phpvarable để tra cứu nội dung trong cơ sở dữ liệu của tôi. Tôi biết tôi có thể thêm nó vào URL hoặc một số thứ của mình và làm mới trang, nhưng tôi muốn làm điều đó với Ajax vì tôi có thể phải sử dụng phương thức AJAX này thêm trong trang web của mình.
Vì vậy, có một cách dễ dàng để làm điều này mà không phải đổ các trang mã trên trang của tôi để làm một điều đơn giản?
Samuel Liew ♦♦
74K106 Huy hiệu vàng157 Huy hiệu bạc238 Huy hiệu Đồng106 gold badges157 silver badges238 bronze badges
hỏi ngày 19 tháng 11 năm 2011 lúc 1:19Nov 19, 2011 at 1:19
10
PHP chạy trên máy chủ và JavaScript chạy trên máy khách, do đó bạn không thể đặt biến PHP thành một biến JavaScript mà không gửi giá trị đến máy chủ. Tuy nhiên, bạn có thể đặt một biến JavaScript thành một biến PHP:
var foo = '';
Để gửi giá trị JavaScript đến PHP, bạn cần sử dụng AJAX. Với jQuery, nó sẽ trông giống như thế này [ví dụ cơ bản nhất có thể]:
var variableToSend = 'foo';
$.post['file.php', {variable: variableToSend}];
Trên máy chủ của bạn, bạn sẽ cần nhận biến được gửi trong bài đăng:
$variable = $_POST['variable'];
Đã trả lời ngày 19 tháng 11 năm 2011 lúc 1:22Nov 19, 2011 at 1:22
Jordan Brownjordan BrownJordan Brown
13.1k6 Huy hiệu vàng29 Huy hiệu bạc29 Huy hiệu đồng6 gold badges29 silver badges29 bronze badges
4
Như Jordan đã nói, bạn phải đăng lại biến JavaScript lên máy chủ của mình trước khi máy chủ có thể xử lý giá trị. Để làm điều này, bạn có thể lập trình chức năng JavaScript gửi biểu mẫu - hoặc bạn có thể sử dụng AJAX / JQuery. jQuery.post
Có lẽ cách tiếp cận dễ nhất đối với bạn là một cái gì đó như thế này
function myJavascriptFunction[] {
var javascriptVariable = "John";
window.location.href = "myphpfile.php?name=" + javascriptVariable;
}
Trên myphpfile.php của bạn, bạn có thể sử dụng
0 sau khi JavaScript của bạn được thực thi.
Dharman ♦♦
Phù hiệu vàng 28K2121 gold badges75 silver badges127 bronze badges
Đã trả lời ngày 19 tháng 11 năm 2011 lúc 1:30Nov 19, 2011 at 1:30
Grrbrr404Grrbrr404Grrbrr404
1.80915 Huy hiệu bạc17 Huy hiệu đồng15 silver badges17 bronze badges
1
Nó phụ thuộc vào cách hành xử trang của bạn. Nếu bạn muốn điều này xảy ra không đồng bộ, bạn phải sử dụng Ajax. Hãy thử "JQuery Post []" trên Google để tìm một số TUTS.
Trong trường hợp khác, nếu điều này sẽ xảy ra khi người dùng gửi biểu mẫu, bạn có thể gửi biến trong trường ẩn hoặc nối
1 đến cuối URL bạn đang mở. ://www.somesite.com/send.php?variableName=someValue
hoặc
//www.somesite.com/send.php?variableName=someValue&anotherVariable=anotherValue
Bằng cách này, từ PHP, bạn có thể truy cập giá trị này như:
$phpVariableName = $_POST["variableName"];
Đối với các biểu mẫu bằng phương thức bài hoặc:
$phpVariableName = $_GET["variableName"];
Đối với các biểu mẫu sử dụng phương thức GET hoặc phương thức nối vào URL mà tôi đã đề cập ở trên [QueryString].
Đã trả lời ngày 19 tháng 11 năm 2011 lúc 1:39Nov 19, 2011 at 1:39
Ricardo Souzaricardo SouzaRicardo Souza
15.6K6 Huy hiệu vàng35 Huy hiệu bạc67 Huy hiệu Đồng6 gold badges35 silver badges67 bronze badges
2