2016-11-24 60 views
1

我见过很多js var to php的问题,但没有人能帮助我,因为它要么复杂或不符合我的要求。 我期待在js中调用称为标题,正文和作者的三个变量。身体是一个非常长的字符串,因此我不能在URL中放置。 我正在寻找最简单的Ajax代码可能是如下这样: JS变种已定义 - > AJAX - > PHP变种 这是到目前为止,我已经得到了代码:ajax简单的js变量到php

<script> 
var title; 
var body; 
var author; 
function post(){ 
    title = document.getElementById("title").value; 
    body = document.getElementById("body").value; 
    author = document.getElementById("author").value; 
} 
    //Insert ajax code here 
<?php 


$title; 
$body; 
$author; 
$post = "INSERT INTO post (title, body, author) VALUES ($title,$body,$author)"; 
$sql = mysqli_query($conn,$post); 
?> 
</script> 

预先感谢您!

+0

__“//此处插入Ajax代码” __创造这么多的问题,它不应该有.... – Rayon

+0

在这里添加您的Ajax代码,你试过了什么? – Elby

+0

Ajax代码不能在PHP下。 –

回答

3

你可以做这样简单的

<script> 
var title = document.getElementById("title").value; 
var body = document.getElementById("body").value; 
var author = document.getElementById("author").value; 

$.ajax({ 
    type: 'POST', 
    url: 'insert.php',     
    data: {title:title,body:body,author:author}, 
success: function(data) { 

} 
}) 
</script> 

内,insert.php文件

<?php 
$title = $_POST['title']; 
$body = $_POST['body']; 
$author = $_POST['author']; 
$post = "INSERT INTO post (title, body, author) VALUES ($title,$body,$author)"; 
$sql = mysqli_query($conn,$post); 
?> 
+0

感谢这个我的JS函数post()工作,但Ajax似乎不工作,因为它不更新数据库。我试图将JS警报放入insert.php中进行测试,但它并未激活。谢谢你的帮助! –

+0

你不可以在insert.php里面放一个JS alert,你可以打印$ _POST的值,它会得到你的值。你的ajax –

+0

对不起,它没有答案,你不能在JS插入.php,JS你的AJAX不工作,我认为你的脚本没有添加,请添加它““,你可以打印$ _POST值,它会得到你的值。我希望它有帮助。 –

0

$.post('url', {title: title, body: body, author: author})

然后使用$_POST全局变量来得到你想要的数据。

$title = $_POST['title'];
$body = $_POST['body'];
$author = $_POST['author'];在阿贾克斯后速记这里

更多信息:
https://api.jquery.com/jquery.post/