Cordova-jqueryajax在服务器上发布到php
我想创建一个基于令牌的系统,在这个系统中,我想将输入字段的值推送到服务器端php文件中,以将其插入数据库 Cordova html:Cordova-jqueryajax在服务器上发布到php,php,jquery,mysql,ajax,cordova,Php,Jquery,Mysql,Ajax,Cordova,我想创建一个基于令牌的系统,在这个系统中,我想将输入字段的值推送到服务器端php文件中,以将其插入数据库 Cordova html: <input type="text" class="valueToken" name="usertoken" > <button class="postToken">PostToken</button> })) 这是我的服务器端php: <?php include("connect.php"); $stringData
<input type="text" class="valueToken" name="usertoken" >
<button class="postToken">PostToken</button>
}))
这是我的服务器端php:
<?php
include("connect.php");
$stringData = $_POST['tokenValue'];
echo $stringData
$insertToken = "INSERT INTO User_Token VALUES ('$stringData')";
$tokenresult = mysqli_query($conn, $sql);
if($tokenresult){
echo "Successful";
}else {
echo("Error description: " . mysqli_error($conn));
}
我已经输入了一些与您几乎相同的名称/值,但我对Ajax有点不同,因为我习惯这样做。。。您必须适应您的需要:)
编辑:您没有在get_token.php中获得正确的$vars,因为使用了错误的名称
<script type="text/javascript">
$(document).ready(function(){
$("#submit").click(function(e){
e.preventDefault();
console.log($('.valueToken').val());
var tokenValue = $('.valueToken').val();
$.ajax({
method: "POST",
url: "get_token.php",
data: "token="+tokenValue,
success: function(html){ alert(html); }
});
});
});
</script>
<form action="#" id="form" method="post">
<input type="text" class="valueToken" name="usertoken" >
<input type="submit" class="postToken" id="submit" value="PostToken" />
</form>
$(文档).ready(函数(){
$(“#提交”)。单击(功能(e){
e、 预防默认值();
log($('.valueToken').val());
var-tokenValue=$('.valueToken').val();
$.ajax({
方法:“张贴”,
url:“get_token.php”,
数据:“token=“+tokenValue,
成功:函数(html){alert(html);}
});
});
});
/--get_token.php--/
编辑:
如果php代码有语法错误和错误显示关闭等致命错误,则会显示500内部服务器错误
在php文件中,尝试添加:
ini_set('display_errors', 1);
在.htaccess文件中添加:
php_flag display_errors 1
在查看如何调试PHP中的500个错误时,找到了类似的答案
原件:
试试这个代码
JS
$('.postToken').click(function(){
console.log($('.valueToken').val());
var tokenValue = $('.valueToken').val();
$.ajax({
type: "POST",
url: "http://domainName.com/fysioWebapp/php/get_token.php",
data: { dataString: tokenValue },
cache: false,
success: function(){
alert("Order Submitted");
}
});
});
PHP
<?php
include("connect.php");
$stringData = $_POST['dataString'];
echo $stringData
$insertToken = "INSERT INTO User_Token VALUES ('$stringData')";
$tokenresult = mysqli_query($conn, $insertToken);
if($tokenresult){
echo "Successful";
}else {
echo "Error description: " . (mysqli_error($conn));
}
?>
奇怪的东西。。。没有表格?为什么输入有nameusertoken
,而您不尝试使用$var?另外,您将获得的$vars是usertoken
@OldPadawan是的,不要介意html中的名称。但是我不尝试使用$var代替html值是什么意思呢?这是在编写时出错的,抱歉:,所以我编辑了。通过Ajax传递的数据是usertoken
though,因此请在Ajax数据中使用输入的名称,而不是get.val()
?请参见回答我将得到以下错误:注意:第21行/php/get_token.php中的未定义索引:token
@sreinier:您修改了什么吗?添加什么?只是从我的代码中挑选一部分加入到你的代码中?”因为它确实有效:)不,我只是准确地复制了你的代码,但我从cordova应用程序向Web服务器上的php发布了帖子。@sreiniern:在第21行
怎么可能,因为我有10行代码?在移动应用程序中没有错误,并且会提醒消息值。但是,当我使用特定的get_token.php访问网站时,我会得到这个错误。现在我要在cordova应用程序中尝试同样的错误:`jquery.min.js:4 POST 500(内部服务器错误)`该网页不存在。如果我将URL复制到浏览器中,它会将我带到domainname.com,并说该页面不存在。我怀疑你在这方面也有错误。也将使用此更新我的答案。因为DomainName=sylvanreinierenoh和btw$tokenresult=mysqli\u query($conn,$insertToken)
$('.postToken').click(function(){
console.log($('.valueToken').val());
var tokenValue = $('.valueToken').val();
$.ajax({
type: "POST",
url: "http://domainName.com/fysioWebapp/php/get_token.php",
data: { dataString: tokenValue },
cache: false,
success: function(){
alert("Order Submitted");
}
});
});
<?php
include("connect.php");
$stringData = $_POST['dataString'];
echo $stringData
$insertToken = "INSERT INTO User_Token VALUES ('$stringData')";
$tokenresult = mysqli_query($conn, $insertToken);
if($tokenresult){
echo "Successful";
}else {
echo "Error description: " . (mysqli_error($conn));
}
?>