【问题标题】:mysql and php connection [closed]mysql和php连接[关闭]
【发布时间】:2013-03-08 02:47:33
【问题描述】:

朋友们,我是创建数据库的初学者,我正在使用 xampp 创建数据库 我已经在 xampp 中用 mysql 添加了我的数据,但我不知道将我的 mysql 与 php 连接(用于网页)

<html>
<body>
<marquee behavior="alternate">welcome</marquee>
</body>
</html>
<?php 
$username = "root";
$password = "root123";
$hostname = "localhost"; 
$dbhandle = mysql_connect($hostname, $username, $password) 
or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";
?>
<?php
$selected = mysql_select_db("missensencemuttation",$dbhandle) 
or die("Could not select missensencemuttation");
?>
<?php
$result = mysql_query("SELECT * FROM `primary_data` LIMIT 0, 30");
($row=mysql_fetch_array($result)); 
{
echo "disease_name:".$row{'disease_name'}." gene_name:".$row{'gene_name'};
}
?>enter code here
<?php
mysql_close($dbhandle);
?>

这是我用 php 连接我的数据库所做的操作

但结果我只能看到我的表的第一行 我有10行。但是当我用来连接它们时,我只能看到我的第一行。在我的 php 中

谁能帮我在php中连接我所有的数据?

<html>
<body>
<marquee behavior="alternate">welcome to the database</marquee>
<table border="3" align="center">
<tr><th>disase_name</th><th>gene_name</th></tr>      
<?php 
        $username = "root";
        $password = "2991";
        $hostname = "localhost"; 
        $dbhandle = mysql_connect($hostname, $username, $password) or die("Unable to   connect to MySQL");
        echo "Connected to MySQL<br>";
        $selected = mysql_select_db("disease",$dbhandle) or die("Could not select  disease");
        $result = mysql_query("SELECT * FROM `primary_data` LIMIT 0, 30");
        while($row = mysql_fetch_array($result))
        {
            echo "<tr><td>".$row['disease_name']."</td><td>".$row['gene_name']."</td>   </tr>";
        }
        mysql_close($dbhandle);
    ?>
    </table>    
    </body>
    </html>

我期望朋友的答案来自这个代码

【问题讨论】:

  • 您只获取一行并将其显示在您的代码中。您需要一个循环,任何 PHP 教程都包含该循环。
  • 请注意,mysql_connect 和类似函数已被新版本的 PHP 弃用。如果这是一个新项目,请尝试mysqli_connectPDO 以获得更好的未来证明。
  • 另请注意,最好不要发布“用户名”、“密码”和“主机名”等详细信息

标签: php mysql xampp


【解决方案1】:

您可以使用 while 循环来遍历已返回的所有结果。 每mysql_fetch_array(),MySQL结果跳转到下一条记录。

您可以使用以下代码循环遍历所有行

while($row=mysql_fetch_array($result))
{
    echo "disease_name:".$row['disease_name']." gene_name:".$row['gene_name'];
}

您的完整代码如下所示:

<html>
    <body>
    <marquee behavior="alternate">welcome</marquee>
        <?php 
            $username = "root";
            $password = "root123";
            $hostname = "localhost"; 
            $dbhandle = mysql_connect($hostname, $username, $password) or die("Unable to connect to MySQL");
            echo "Connected to MySQL<br>";

            $selected = mysql_select_db("missensencemuttation",$dbhandle) or die("Could not select missensencemuttation");
            $result = mysql_query("SELECT * FROM `primary_data` LIMIT 0, 30");
            while($row = mysql_fetch_array($result))
            {
                echo "disease_name:".$row['disease_name']." gene_name:".$row['gene_name'];
            }
            mysql_close($dbhandle);
        ?>
    </body>
</html>

感谢 Edwin Alex 关于分号的评论

【讨论】:

  • 不,我不能得到我的结果
  • 这里应该去掉分号 while($row=mysql_fetch_array($result));
  • 您确定您的primary_data 表中有数据吗?在 PHP 中,您可以使用“mysql_affected_rows($result)”来检查这一点,它将返回结果行数(整数)
  • 是的,Edwin 是对的,我会编辑它
  • 是的,我的 primary_data 表中有数据
【解决方案2】:

用户"["在这里。

echo "disease_name:".$row['disease_name']." gene_name:".$row['gene_name'];

你也应该循环显示它。

while($row=mysql_fetch_array($result)) 
{
 echo "disease_name:".$row['disease_name']." gene_name:".$row['gene_name'];
}

【讨论】:

  • 不,我的结果显示错误
  • @Mano 最好在任何 mysql 编辑器中运行查询并检查它返回多少条记录?
  • 谢谢@Edwin 我得到了答案谢谢你
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多