我想在这里尝试实现的是测试网站是否在线,然后将其发布到数据库中
以下代码与 curl 列不同,因为它输入了资源ID#2 如果网站已关闭且资源ID为#1(如果网站已启动)
<?php
if (isset($_POST['submit'])) {
$url = $_POST['url'];
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_exec($curl);
$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($code == 200) {
echo "<h3>Up!</h3>";
} else {
echo "<h3> $curl!</h3>";
}
}
if(isset($_POST['submit']))
{
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
$sql = "INSERT INTO site".
"(url, curl) ".
"VALUES('$url','$curl')";
mysql_select_db('up');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not enter data: ' . mysql_error());
}
//end
echo "fuck it";
mysql_close($conn);
}
else
{
?>
<form action="" method="post">
Url: <input type="text" name="url" /><br />
<input type="submit" name="submit" />
</form>
<?php
}
?>
这段代码可能存在一些安全问题,但我在这里要学习的只是让它工作,然后担心安全性,因为这对我自己来说是新的
我尝试存储数据的格式如果是在线则为1,如果是离线则为2
我的表格如下
id | url | curl |
答案 0 :(得分:1)
这个怎么样:
if ($code == 200) {
$curl_value = 1;
} else {
$curl_value = 0;
}
然后插入$curl_value
而不是curl资源。
答案 1 :(得分:1)
如果1应该在线,2离线,那么
$result = $code == 200 ? 1 : 2;
然后
$sql = "INSERT INTO site(url, curl) VALUES('$url','$result')";