我正在构建一个连接到数据库的Web应用程序,该数据库存储了一些变量,这些变量是网站正常运行所必需的。使用AJAX从MySQL获取
现在我使用PHP来连接和获取信息,但最终使用.html文件会更容易,所以我打算使用AJAX来获取信息。
我有这样的代码:
$(function()
{
$.ajax({
url: 'api.php',
data: {
paramName: $("#partyIDInput").val()
},
method: post,
dataType: 'json',
success: function(data)
{
var id = data[0];
var pID = data[1];
var pLOC = data[2];
var pNAME = data[3];
var pFORMID = data[5];
var pFORMSONG = data[6];
var pFORMARTIST = data[7];
var pFORMNAME = data[8];
$('#partyTitle').append(""+pNAME+"");
}
});
});
它通过api.php其获取所有变量是这样的:
<?php
$db = new PDO('mysql:host=xxxxx;dbname=xxxxx;charset=utf8', 'xxxxx', 'xxxxx');
$partyInput = $_POST['paramName'];
$stmt = $db->prepare("SELECT * FROM playr_partyID_db WHERE partyID = $partyInput");
$stmt->execute(array($_POST['paramName']));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
?>
但我的问题是,我有一个文本在网页上输入,当用户在其中写入“partyID”并单击继续时,我希望脚本从具有该ID的行中获取信息。现在它只是从第一排中取出。
我从来没有使用过AJAX,所以如果你有时间,请解释发生了什么。
在此先感谢。
编辑:
这里的输入,注意,我还没有在CSS方面优化的网页呢。
<form style="margin-top:150px;" method="post" action="">
<div class="list-block">
<ul>
<li class="item-content" style="background: #fff;margin-bottom: -26px;">
<div class="item-inner">
<div class="item-input">
<input style="text-align:center;padding:0;" type="text" name="partyID" placeholder="Ange PartyID">
</div>
</div>
</li>
</ul>
</div>
<div class="list-block">
<ul>
<li>
<input type="submit" name="submit" value="Festa på!" class="login_bttn" style=" background: none;color: white;border: 1px solid white;border-radius: 500px;width: auto;margin-left: auto;margin-right: auto;margin-top: 40px;"></input>
</li>
</ul>
<div class="list-block-labe"></div>
</div>
</form>
请,[停止使用'mysql_ *'功能](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php)。他们不再被维护,并[正式弃用](https://wiki.php.net/rfc/mysql_deprecation)。了解[准备的陈述](http://en.wikipedia.org/wiki/Prepared_statement),并考虑使用PDO,[它不像你想象的那么难](http://jayblanchard.net/demystifying_php_pdo.html) 。你不发送任何东西给PHP脚本。 –
你的文字输入在哪里? –
这不是完整的页面,只是与db有关的部分。我会添加输入, –