“add.htx”
<?php
$servername = "my_server_name";
$username = "my_username";
$password = "my_pwd";
$dbname = "my_db_name";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO Drama_Gr (Date, Time, Cont, Temp, Hum, Pres, Rain_Y, Rain_M, Rain, Rain_Rate, Wind, Wind_Dir)
VALUES ('<!--date-->', '<!--time-->', '<!--ForecastStr--> frc', '<!--outsideTemp-->', '<!--outsideHumidity-->', '<!--barometer-->', '<!--totalRain-->', '<!--monthlyRain-->', '<!--dailyRain-->', '<!--rainRate-->', '<!--windSpeed-->', '<!--windDirection-->bfr')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
使用weatherlink运行此文件 并输出结果文件 “add.php”
<?php
$servername = "my_server_name";
$username = "my_username";
$password = "my_pwd";
$dbname = "my_db_name";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO Drama_Gr (Date, Time, Cont, Temp, Hum, Pres, Rain_Y, Rain_M, Rain, Rain_Rate, Wind, Wind_Dir)
VALUES ('17/08/16', ' 0:11', ' Increasing clouds with little temperature change. frc', '24.6', '52', '1012.6', '291.2', '11.2', '0.0', '0.0', '1.6', 'SSEbfr')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
通过这种方式可以用我的气象站创建数据库 问题是我想让这个代码与我的地区的气象站和其他人一起运行,并从其他气象站创建我的数据库表,但我不想包括这个代码我的数据库连接。 我认为正确的方法是创建一个像 “connect.php”
<?php
$servername = "my_server_name";
$username = "my_username";
$password = "my_pwd";
$dbname = "my_db_name";
mysql_connect($hostname, $username, $password) OR DIE("Unable to connect to database! Please try again later.");
mysql_select_db($dbname);
?>
并将此文件称为
<?php include("connect.php");?>
我尝试在“add.htx”中添加此代码 但是在“add.php”中得到波纹管错误 连接失败:用户''@ localhost'拒绝访问(使用密码:否)
为什么呢?也许我认为因为文件“add.htx”从weatherlink开始由本地C:\ WeatherLink \但天气链接上传此文件并转换为“add.php”在服务器上的文件夹http://my_website/weather/,此文件夹还包括和文件“connect.php”
请任何帮助 如果很容易,请在“add.htx”中使用wright方法在“add.htx”中添加正确的代码
<?php include("connect.php");?>
感谢
答案 0 :(得分:0)
这是你做的吗?
<?php
Include('connect.php');
$servername = "my_server_name";
$username = "my_username";
$password = "my_pwd";
$dbname = "my_db_name";
......
?>
Php没有运行你的include('connect.php')文件。 那么,我认为问题不在于代码。我认为问题出在你的特权上。将您的服务器用户名和密码与脚本中定义的用户名和密码进行比较。
//连接失败:用户''@ localhost'拒绝访问(使用密码:否)//请检查您的权限
答案 1 :(得分:0)
对于其他人我给出了解决方案 首先感谢Script47(打开我的眼睛,看看mysql_ *必须改为mysqli _ *)
第二我创造我认为更好的方式来打电话 “config.php中”
这里是代码“add.htx”的新变化
<?php
include("config.php");
include("opendb.php");
$sql = "INSERT INTO Drama_Gr (Date, Time, Cont, Temp, Hum, Pres, Rain_Y, Rain_M, Rain, Rain_Rate, Wind, Wind_Dir)
VALUES ('<!--date-->', '<!--time-->', '<!--ForecastStr--> frc', '<!--outsideTemp-->', '<!--outsideHumidity-->', '<!--barometer-->', '<!--totalRain-->', '<!--monthlyRain-->', '<!--dailyRain-->', '<!--rainRate-->', '<!--windSpeed-->', '<!--windDirection-->bfr')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
include("closedb.php");
?>
我创建了3个文件 连接db并关闭db
“config.php中”
<?php
$servername = "my_host_name";
$username = "my_username";
$password = "my_pwd";
$dbname = "_my_database_name";
?>
创建脚本后 “opendb.php”
<?php
// Create my Weather db connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check my Weather db connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
我认为在将数据上传到db时创建和脚本以关闭连接是正确的,请命名此脚本 “closedb.php”
<?php
// close my weather db connection
mysqli_close($conn);
?>
最后结果来了 “add.php”
New record created successfully
谢谢,我希望这对我和其他人有用
现在最后一个问题是使用此代码“add.php”记录在刷新此页面时更新数据库行 我创建了一个下面的脚本来自动刷新一个页面中气象站的多个文件,但必须打开此页面以自动将新结果更新为db并命名此页面
“send_db.html”
<html>
<head>
<!-- For ease i'm just using a JQuery version hosted by JQuery- you can download any version and link to it locally -->
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#responsecontainer").load("http://www.dramaweather.gr/weather2/uploadwl/mysql/add.php");
var refreshId = setInterval(function() {
$("#responsecontainer").load('http://www.dramaweather.gr/weather2/uploadwl/mysql/add.php?randval='+ Math.random());
}, 900000);
$.ajaxSetup({ cache: false });
});
</script>
<script>
$(document).ready(function() {
$("#responsecontainer").load("http://www.dramaweather.gr/weather2/uploadwl/mysql/add_Serres.php");
var refreshId = setInterval(function() {
$("#responsecontainer").load('http://www.dramaweather.gr/weather2/uploadwl/mysql/add_serres.php?randval='+ Math.random());
}, 900000);
$.ajaxSetup({ cache: false });
});
</script>
</head>
<body>
<div id="responsecontainer">
</div>
</body>
</html>
是每10分钟将“'add.htx”的结果发送到db auto而没有“send_db.html”代码的任何其他方法 ;
再次感谢第一个问题,如果有人知道,我的第二个问题解决方案请帮助