php - 使用单选按钮控件从 PHP 获取 mysql 数据

标签 php mysql database

我想操纵 PHP 代码在匹配的 sql 数据库中搜索特定数据。

例如,假设我想在 sql 数据库中搜索与用户名匹配的 IP,它们都在同一行中,我在单选按钮中选择“IP”,在文本字段中输入用户名 -我的 PHP 代码搜索所有用户数据库中的内容,找到用户名,仅输出 ip 地址(而不是其他任何内容),在该特定输入的标题为“IP 地址”的行中。我该怎么做呢?

我希望单选按钮是大小写,所以如果我选择 IP,它将搜索与用户名匹配的 IP,如果我选择 UID,它将搜索与用户名匹配的 UID 并输出它,等等,等等。

HTML:

    <form action="" method = "POST">
  <input type="radio" name="someName" value="ip"> IP<br>
  <input type="radio" name="someName" value="username"> Username<br>
  <input type="radio" name="someName" value="uid"> UID
</form>

PHP:

<?php
error_reporting(E_ALL);
    $con = new PDO('mysql:host='.$db_hostname.';dbname='.$db_database.';charset=utf8mb4', $db_termname,$db_password, array(PDO::ATTR_EMULATE_PREPARES => false,PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
        if(array_key_exists('term',$_REQUEST)){
            $stm=$con->prepare('SELECT * FROM users WHERE username = ?');
            $stm->execute(array($_REQUEST['term']));
            while($row = $stm->fetch(PDO::FETCH_ASSOC)) {
                echo $row['ip'];  
        }   
    }
?>

最佳答案

你的表格应该是这样的:

 <form action="" method = "POST">
      <input type="radio" name="someName" value="ip"> IP<br>
      <input type="radio" name="someName" value="uid"> UID<br>
      Enter Name: <input type="text" name="name" > <br>
      <input type="submit" name="submit"> Submit<br>
    </form>

和你的 php 文件:

    <?php
            error_reporting(E_ALL);
            $submit=isset($_POST['submit']);
            if($submit)  
{
              $name=$_POST['somename'];
              $username=$_POST['username'];
              $con = new PDO('mysql:host='.$db_hostname.';dbname='.$db_database.';charset=utf8mb4', $db_termname,$db_password, array(PDO::ATTR_EMULATE_PREPARES => false,PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
              $stm=$con->prepare('SELECT * FROM users WHERE username = ?');
              $stm->bind_param("s",$username);
              $stmt->execute();
              $row = $stm->fetch(PDO::FETCH_ASSOC);
              if($name=='ip')
        {                       echo $row['ip'];  
        }
               else if($name=='uid')  
          {
                    echo $row['uid];
           }
 }

关于php - 使用单选按钮控件从 PHP 获取 mysql 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37371574/

相关文章:

mysql - 为什么 MySQL SUM 查询只返回一行?

php - MySQL 存储过程,PDO::fetch() 在 null 返回时抛出一般错误

php - 更改 PHP 脚本中的变量并再次运行函数,无需重新加载页面

php - 将数据保存到文件和。将其保存到 MySQL DB

PHP: 新手问题 - 打开数据库

database - 其他属性可以暗示候选键吗?

php - 对象与数组

php - 如何从 yii 获取多维数组 'CDbDataReader::readAll'

mysql - 带计数的子查询

php - 如何计算 wp-db7 表单中特定表单帖子 id 的行数