我知道这有很多争议,简短的回答是我不能简单地将 javascript 变量传递给同一文件中的 php 变量。因此,这将是我想尝试的:我的用户输入一个代码,我将它发送到一个 php 文件POST
。在那里我检查代码是否与我的数据库中的代码匹配,然后我再次从那里发布一个布尔值。然后在我的第一个文件中,我告诉用户代码是否正确。这可以通过这种方式实现吗?我是一个 webdev 新手,我正在努力学习。
问问题
146 次
3 回答
1
要将值从客户端传递到服务器,您可以将其发送到 URL 或作为 post 变量。
这可以通过 ajax 轻松完成。
我推荐使用jquery。例子:
$.get("http://example.com/?var1=value&var2=othervalue", function (data) {
// your response
});
于 2013-05-09T17:09:51.113 回答
0
您可以通过 AJAX 将该代码发布到您的服务器,让您的服务器返回一个布尔值,然后向您的用户输出一条消息,这很常见。
该逻辑的常见实现包括自动建议、用户名有效性验证、简单的打开/关闭接口等。
工作流程:
- 用户输入代码
- Javascript 向服务器发送 AJAX 请求
- 服务器验证代码并返回布尔值
- Javascript 读取布尔值,生成 HTML 并将其附加到文档中
- 用户读取输出
编辑:尽管我建议您首先尝试使用纯 javascript(出于教育原因),但如果您按计划进行,您应该使用 jQuery 或其他等效框架。
于 2013-05-09T17:12:20.990 回答
0
jQuery:
$.get( url, { userinput: value }, function( response ) {
if( response.status ) alert( "Matches found" );
else alert( "No matches" );
}
javascript:
function get( url ) {
var xhr = new XMLHttpRequest();
xhr.open("GET", url, false );
xhr.send();
return xhr.responseText;
}
var response = JSON.parse( get( url ) );
if( response.status ) alert( "Matches found" );
else alert( "No matches" );
php:
header( 'Content-type: text/json' );
if( get_matches( $_GET['userinput'] ) ) exit( '{ "status": true }' );
else exit( '{ "status": false }' );
于 2013-05-09T17:39:44.437 回答