繁体   English   中英

无法从 MySQL 数据库中检索文本

[英]Can't retrieve text from MySQL DB

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

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

connect::selectDB('webdb'); 

应该

mysql_select_db($webdb);

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

应该

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

如果你在这里得到正确的 $id 值if (isset($_GET['newsid'])) { $id = (int)$_GET['newsid']; 并且您有一个带有“标题”和“正文”列的“新闻”表,那么以下内容对您有用。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM