Php 如何在HTML代码中间添加SQL查询?

Php 如何在HTML代码中间添加SQL查询?,php,session,login,system,Php,Session,Login,System,我想做一个登录系统,用户可以看到他收到的所有消息。在我的数据库中,insurance\u company是用户名,这就是我希望它显示的内容。这是我的密码。我怎么修理它? -谢谢,普莱姆 <?php $strSQL = "SELECT * FROM claims WHERE insurance_company = $_SESSION['user']"; $rs = mysql_query($strSQL); while($row = mysql_fetch_array(

我想做一个登录系统,用户可以看到他收到的所有消息。在我的数据库中,
insurance\u company
是用户名,这就是我希望它显示的内容。这是我的密码。我怎么修理它? -谢谢,普莱姆

<?php

  $strSQL = "SELECT * FROM claims WHERE insurance_company = $_SESSION['user']";


  $rs = mysql_query($strSQL);


  while($row = mysql_fetch_array($rs)) {

    echo $row['Claim'] . "<br />";

    }


?>

如果您想让它显示
保险公司
,您必须
在响应数组中回显该值:

echo $row['insurance_company']

PHP代码可以用HTML代码编写在任何地方。您只需将PHP代码放在标记之间。正如您在下面的示例中所看到的,我在p标记之间使用了php代码

<?php
    $strSQL = "SELECT * FROM claims WHERE insurance_company = $_SESSION['user']";
    $rs = mysql_query($strSQL);
    while($row = mysql_fetch_array($rs)) {?>

        <p> <?php echo $row['Claim'] . "<br />"; ?> <p>

    <?php }
?>


无论如何,您的代码都会出现语法错误。我建议您扔掉记事本,开始使用像PhpStorm或Netbeans:facepalm这样的IDE:mysql_*函数在PHP中不受欢迎,请改用mysqli_*函数或PDO。像这样附加用户名可能容易受到SQL注入的攻击。您正在调用
会话\u start()
?你先连接到数据库了吗?您是否构建了登录系统,以便
$\u会话['user']
包含该用户?在尝试使用它之前,请确保先检查它的设置。在从数据库输出数据之前,请确保转义:htmlentities。显然你需要先建立一个登录系统。登录系统已有很多代码。谷歌搜索。@Ultimater Ya,我有登录系统,还有一个变量“user”。登录工作,并把我带到正确的页面,在那里你好世界是回声。但当我尝试运行此sql查询时,它不起作用。对于SQL注入,我已经去掉了标记和斜杠以及所有这些东西,所以我认为我应该很好,除非我需要更改什么?您忘记在查询中引用用户了。在尝试使用其结果之前,您应该始终检查查询是否成功运行:
if($rs)
如果没有,您可以看到错误:
mysql\u error()
。此外,在循环之前,您还应该检查mysql\u num\u rows()
。修复错误后,请切换到mysqli或pdo。我认为“这就是我希望它显示的内容”意味着他希望根据名称进行查询,而不仅仅是重复。如果这是他的查询的一部分,他已经知道保险公司。另外,您缺少一个分号。保险公司是数据库中的一列。这是我尝试使用您的代码时得到的错误代码<代码>分析错误:语法错误,意外的“”(T\u封装的\u和\u空格),需要标识符(T\u字符串)或变量(T\u变量)或数字(T\u NUM\u字符串)