需要使用php查询数据库的帮助吗

需要使用php查询数据库的帮助吗,php,html,Php,Html,大家好,我今天刚开始学习php。我第一次在yahoo网站上托管和学习DB。我可以在mysql数据库中发布名字和姓氏。但现在我希望能够查询名称,并能够显示我搜索的名称。我的php文件不工作,因为我无法在数据库中找到名称。我需要你的帮助,谢谢 下面是我的代码: <htmL> <body> <p><strong>Query database</strong></p> <form name="form1" method="p

大家好,我今天刚开始学习php。我第一次在yahoo网站上托管和学习DB。我可以在mysql数据库中发布名字和姓氏。但现在我希望能够查询名称,并能够显示我搜索的名称。我的php文件不工作,因为我无法在数据库中找到名称。我需要你的帮助,谢谢 下面是我的代码:

<htmL>
<body>
 <p><strong>Query database</strong></p>
<form name="form1" method="post" action="backendfile2.php">
<label><br>
  <br>
 First Name
 <input type="text" name="firstname" id="firstname">
 </label>
  <p>
<label>Last Name
 <input type="text" name="lastname" id="lastname">
  </label>
  </p>
 <p>&nbsp;</p>
 <input type="submit" value="Submit">  
 </form>
  <p>&nbsp;</p>
  </body>
  </html>

查询数据库



名字 姓

php文件:

   <?php
   $con=mysqli_connect("mysql","username","password","207_lab");
 // Check connection
   if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
   }
    $firstname = mysqli_real_escape_string($con,$_POST['firstname']);
    $lastname = mysqli_real_escape_string($con,$_POST['lastname']);
     $result = mysqli_query($con,"SELECT FirstName, LastName FROM User WHERE 
      FirstName = $firstname, LastName = $lastname");

       echo "Name searched = ";
       while($row = mysqli_fetch_array($result)) {
       echo $row['FirstName'] . " " . $row['LastName'];
    echo "<br>";
        }
         ?>

根据您的要求,因为您已经进行了编辑


在变量周围使用引号,因为它们是字符串

FirstName = '$firstname', LastName = '$lastname'
使用检查错误

或die(mysqli_error($con))
mysqli_query()
,这会触发它

您还需要从POST分配它

$firstname = mysqli_real_escape_string($con,$_POST['firstname']);
$lastname = mysqli_real_escape_string($con,$_POST['lastname']);
加上

使用
而不是逗号

WHERE 
  FirstName = '$firstname' AND LastName = '$lastname'"
使用
updatetable SET column\ux='var\u1',column\uy='var\u2'时使用逗号。

随后,根据查询的条件,您可以将
替换为

添加到文件的顶部,这将为两个变量提供
未定义索引…
警告

error_reporting(E_ALL);
ini_set('display_errors', 1);
旁注:错误报告只应在暂存阶段进行,而不应在生产阶段进行

你现在的方法是开放的。在进行编辑后,根据您的需要使用或。


在变量周围使用引号,因为它们是字符串

FirstName = '$firstname', LastName = '$lastname'
使用检查错误

或die(mysqli_error($con))
mysqli_query()
,这会触发它

您还需要从POST分配它

$firstname = mysqli_real_escape_string($con,$_POST['firstname']);
$lastname = mysqli_real_escape_string($con,$_POST['lastname']);
加上

使用
而不是逗号

WHERE 
  FirstName = '$firstname' AND LastName = '$lastname'"
使用
updatetable SET column\ux='var\u1',column\uy='var\u2'时使用逗号。

随后,根据查询的条件,您可以将
替换为

添加到文件的顶部,这将为两个变量提供
未定义索引…
警告

error_reporting(E_ALL);
ini_set('display_errors', 1);
旁注:错误报告只应在暂存阶段进行,而不应在生产阶段进行


你现在的方法是开放的。使用或。

同时检查SQL语法-看起来应该是:

WHERE FirstName = '$firstname' AND LastName = '$lastname'

还要检查SQL语法-看起来应该是:

WHERE FirstName = '$firstname' AND LastName = '$lastname'

“从用户中选择FirstName、LastName,其中FirstName='$FirstName'和LastName='$LastName'
请,”!它们不再得到维护,而是在使用。而是学习,并使用或。将帮助你决定。除了已经提到的引用。您在哪里设置
$firstname
$lastname
变量?它们只是没有显示吗?@Gohn67正在修复它,以防你在编辑之前看到,我也做了编辑。请重新加载以查看其他信息@user2738145
“请从用户中选择FirstName、LastName,其中FirstName='$FirstName'和LastName='$LastName'
!它们不再得到维护,而是在使用。而是学习,并使用或。将帮助你决定。除了已经提到的引用。您在哪里设置
$firstname
$lastname
变量?它们只是没有显示吗?@Gohn67正在修复它,以防你在编辑之前看到,我也做了编辑。请重新加载以查看其他信息@user2738145@michael谢谢你,迈克尔。@Fred ii-谢谢。另外,如果我搜索的名字不在数据库中,我怎么知道呢。我想显示一个错误,说明名称不存在于database@user2738145不客气。你需要使用它,这是一种方法。您可能需要发布另一个问题,但我相信您会在堆栈中找到许多示例。我将在这里的评论中发布一个快速示例,请给我一分钟。@user2738145在这里您可以
$numrows=mysqli\u num\u rows($query);如果($numrows>0){die(“记录已经存在”);}
@michael谢谢michael@Fred ii-谢谢。另外,如果我搜索的名字不在数据库中,我怎么知道呢。我想显示一个错误,说明名称不存在于database@user2738145不客气。你需要使用它,这是一种方法。您可能需要发布另一个问题,但我相信您会在堆栈中找到许多示例。我将在这里的评论中发布一个快速示例,请给我一分钟。@user2738145在这里您可以
$numrows=mysqli\u num\u rows($query);如果($numrows>0){die(“记录已经存在”);}