我尝试将基本的jQuery Mobile页面放在一起,该页面连接到服务器的同一路径上的另一个文件以发送数据。我已经在注释掉的代码部分中测试了PHP。
PHP文件 - 提交harvest.php
$dbConnection = mysqli_connect('*********', '*********', '*********', '*********');
/*
$variety = "Aji Limon";
$picked = "11";
$weight = "22";
*/
$variety = $_POST['variety'];
$picked = $_POST['picked'];
$weight = $_POST['weight'];
$query = "INSERT INTO `harvest` (`variety`, `picked`, `weight`) VALUES ('$variety', '$picked', '$weight')";
if (mysqli_query($dbConnection, $query)) {
echo "Successfully inserted " . mysqli_affected_rows($dbConnection) . " row";
} else {
echo "Error occurred: " . mysqli_error($dbConnection);
}
?>
和html文件 - index.html
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.css" />
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script>
<!--Mobile Device Scaling -->
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
</head>
<body>
<div data-role="page" id="harvest">
<div data-role="header" data-theme="b">
<h1>Chilli Harvest</h1>
</div>
<div data-role="content">
<form name="harvest" action="submitharvest.php" method="post" data-ajax="false">
<div data-role="fieldcontain">
<label for="variety" class="select" >Variety:</label>
<select name="variety" id="variety" data-theme="b">
<option value="7 Pot Red">7 Pot Red</option>
<option value="7 Pot Yellow">7 Pot Yellow</option>
<option value="Aji Limon">Aji Limon</option>
</select>
</div>
<div data-role="fieldcontain">
<label for="picked">Qty Picked:</label>
<input type="range" name="picked" id="picked" value="1" min="0" max="200" step="1" data-theme="b" data-track-theme="c"/>
</div>
<div data-role="fieldcontain">
<label for="weight">Weight (g):</label>
<input type="number" name="weight" id="weight" value="" data-theme="b" />
</div>
<div data-role="fieldcontain">
<input type="submit" value="Send" id="submit">
</div>
</form>
</div>
</div>
</body>
</html>
添加了数据-ajax =“false”,甚至删除了整个查询移动框架,我得到了同样的问题,说明“发生了错误”,后面没有额外的细节,我看不到任何问题控制台。希望我在这里遗漏一些非常基本的东西?请帮忙。
因此,从下面的前几条评论中尝试了一些事情 - 这也就是dbconnection是罪魁祸首吗?我正在使用带有个人MySQL数据库的NAS驱动器,我是否需要在末尾编写端口号?目前我有:
$ dbConnection = mysqli_connect('home IP Address:3306','username','password','databasename');
我见过一些像这样的连接字符串,其中包含端口号:
$ dbConnection = mysqli_connect('home IP Address','username','password','database name',3306);
由于我尝试了以上所有内容甚至将端口号放在“3306”中,这真的增加了我的困惑......难过,有人有任何进一步的想法吗?
答案 0 :(得分:0)
经过几个小时的浪费时间之后,它所托管的网络服务器通过它的防火墙阻止了MySQL,所以我所有的检查都没问题,但网络主机防火墙应该受到责备,网络公司已经添加了排除允许这个工作!