Php Can';t从MySQL数据库中检索文本

Php Can';t从MySQL数据库中检索文本,php,html,Php,Html,我创建了一个简单的博客系统,它连接到我的数据库,并从名为login的数据库和名为news的表中检索信息。问题是即使它连接了,它也不会发布信息。这是我的密码: <html> <?php $host = '127.0.0.1'; $user = 'root'; $password = 'ascent'; $webdb = 'login'; $newstable = 'news'; $con = mysql_connect($host,$user,$password); if (

我创建了一个简单的博客系统,它连接到我的数据库,并从名为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>


您的错误报告是否已关闭<代码>连接::selectDB('webdb')
应引发错误。 此外,您可以在变量中设置host、db name,并在连接时将它们放在引号中。为什么?

connect::selectDB('webdb'); 
应该是

mysql_select_db($webdb);

应该是

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

尝试在途中转储每个var。如果您在此处获得$id的正确值,则可能需要循环
mysql\u fetch\u assoc($result)

if(isset($\u GET['newsid']))
{
$id=(int)$\u 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>


如果您的所有变量都有正确的值,这应该是可行的

<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>


您不需要调用
mysql\u select\u db('webdb')
而不是
connect::selectDB('webdb'))
?谢谢你的回答。补充了这一点。非常感谢你,先生。但它仍然没有发布。我可以向你保证它没有发布。只是一个错误说HTML标记是错误。o你现在可以看到任何HTML错误了吗。前面的正文缺少@user1644279抱歉,兄弟。我无法接受你的编辑,只是因为在尝试接受时出现了一些错误。比顺便说一句
<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>