-1

我创建了一个简单的博客系统,它连接到我的数据库并从名为 login 的数据库和名为 news 的表中检索信息。问题是即使它连接它也不会发布信息。这是我的代码:

<html>
<?php
$host = '127.0.0.1';
$user = 'root';
$password = 'ascent';
$webdb = 'login';
$newstable = 'news';

$con = mysql_connect($host,$user,$password); 
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

if (isset($_GET['newsid']))
{
    $id = (int)$_GET['newsid'];
    mysql_select_db($webdb);

    $result = mysql_query("SELECT * FROM news WHERE id='".$id."'");
    $row = mysql_fetch_assoc($result); ?>
    <div class='box_two_title'><?php echo $row['title']; ?></div>

    <?php 
    echo $row['body'];
    }
    ?>
Hello
</html>

感谢您到目前为止所有有用的答案,但它仍然没有发布:S

4

4 回答 4

0

你的错误报告关闭了吗?connect::selectDB('webdb')应该抛出一个错误。此外,您在变量中设置主机、数据库名称,并在连接时将它们放在引号中。为什么?

connect::selectDB('webdb'); 

应该

mysql_select_db($webdb);

$con = mysql_connect("$host","$user","$password");

应该

$con = mysql_connect($host,$user,$password); 
于 2012-11-15T10:09:05.213 回答
0

如果您在此处获得 $id 的正确值, if (isset($_GET['newsid'])) { $id = (int)$_GET['newsid'];并且您有一个带有“title”和“body”列的表“news”,那么以下内容对您有用。

<html>    <head><title> You Title </title></head>    <body>
<?php
$host = '127.0.0.1';
$user = 'root';
$password = 'ascent';
$webdb = 'login';
$newstable = 'news';

$con = mysql_connect($host,$user,$password);
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
?>
<div class='box_two_title'>
<?php
if (isset($_GET['newsid']))
{
    $id = (int)$_GET['newsid'];
    mysql_select_db($webdb);

    $result = mysql_query("SELECT * FROM news WHERE id='".$id."'");
    $row = mysql_fetch_array($result); ?>
    echo $row['title'];
    echo "</div>";
    echo $row['body'];
}
else
    echo "</div>";
?>    
Hello
</body>
</html>
于 2012-11-15T10:18:08.693 回答
0

如果你所有的变量都有正确的值,这应该有效。

<html>
<head>
</head>
<body>
    <?php
    $host = "127.0.0.1";
    $user = "root";
    $password = "ascent";
    $webdb = "login";
    $newstable = "news";

    $con = mysql_connect("$host", "$user", "$password"); 
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

    if (isset($_GET['newsid']))
    {
        $id = (int)$_GET['newsid'];
        mysql_select_db("$webdb");

        $result = mysql_query("SELECT * FROM news WHERE id='".$id."'");
        while($row = mysql_fetch_array($result)){ ?>
        <div class='box_two_title'><?php echo $row['title']; ?></div>

        <?php 
        echo $row['body'];
        }
    }
    ?>
Hello
</body>
</html>
于 2012-11-15T10:31:41.840 回答
-1

尝试在途中转储每个 var。可能是你需要循环mysql_fetch_assoc($result)

于 2012-11-15T10:09:49.773 回答