我已经和这个问题斗争了好几天而且真的陷入困境。 我正在尝试调用一个php脚本,其中包含通过javascript从html文件访问mysql数据库的代码。但是当我在我的NetBeans上运行以下命令时,我总是在“$ .ajax({”的地方得到错误。并且NetBean没有指定它是什么错误。它只是说Request被取消了。请帮帮我!!!!
HTML:
<form>
<p><input type="text" name="username" value=""></p>
<p><input type="password" name="password" value=""></p>
<p class="remember_me">
<label>
<input type="checkbox" name="remember_me" id="remember_me">
Remember me on this computer
</label>
</p>
<p><input type="submit" onClick="connect_to_db()" name="submit" value="Login" id="submit"></p>
<script>
function connect_to_db(){
utils.connectToDb(document.getElementsByName("username")[0].value,
document.getElementsByName("password")[0].value);
}
</script>
</form>
API / connect.php:
<?php
$username = $_POST['username'];
$password = $_POST['password'];
try {
$dbh = new PDO('mysql:host=localhost;dbname=mydb', $username, $password);
$insert_cmd = "INSERT INTO version VALUES(1)";
$read_cmd = "SELECT * FROM version";
foreach($dbh->query($insert_cmd) as $row) {
print_r($row);
}
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
?>
util.js中:
window.utils = {
connectToDb: function (username, password) {
$.ajax({
url: 'api/connect.php',
data: {'username': username, 'password': password},
type: 'post',
success: function(output) {
alert(output);
}
});
},
};
注意:我在Windows上使用过类似的代码,但它确实有效。我目前正在将它导出到我的Mac。我还在https.conf中启用了php5模块并配置了我的php.ini。我已经使用包含在其中的简单.php文件测试了我的php和apache。它能够显示php信息。
答案 0 :(得分:0)
如果它之前有效并且您没有更改代码,那么它可能是一个设置。
检查是否
答案 1 :(得分:0)
这可能不是最好的答案,但我确信这会有效,因为这是连接mysql数据库的最佳方式:
$dblocation="localhost"; //Your db location
$yourusername= "root"; //db name
$yourpass= ""; //blah3x
$dbname = "sample"; //database name
$connect = mysqli_connect($dblocation,$yourusername,$yourpass,$dbname);
您可以使用mysql
或mysqli
,但mysqli会更好。