Php 查询mysql数据库并显示返回的内容

Php 查询mysql数据库并显示返回的内容,php,mysql,Php,Mysql,抱歉,如果我的语言不正确,如果这是一个新手问题,请原谅 这是我的php代码,它创建了一个基本下拉列表(表中的名称为Sandy、Tom、Tina),该下拉列表由php查询提供 <?php $servername = "localhost"; $username = "username"; $password = "12345"; $dbname = "dbname"; // Create connection $conn = new mysqli($servername, $usernam

抱歉,如果我的语言不正确,如果这是一个新手问题,请原谅

这是我的php代码,它创建了一个基本下拉列表(表中的名称为Sandy、Tom、Tina),该下拉列表由php查询提供

<?php
$servername = "localhost";
$username = "username";
$password = "12345";
$dbname = "dbname";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "select * from  potluck";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    echo "<select name='list2' id='list2'>";
    while($row = $result->fetch_assoc()) {
        echo "<option>".$row["name"]."</option>";
    }
    echo "</select>";
} else {
    echo "0 results";
}
$conn->close();
?>
参考号 -可能有助于我的理解


“开始工作”的一个简单示例:

<form id="s" method="get">
<select name="size">
    <option value="small">Small</option>
    <option value="medium">Medium</option>
    <option value="large">Large</option>
</select>
<input type="submit" name="Submit" value="Submit">
</form>

<?php
if( $_GET["size"])
{
echo "Welcome: ". $_GET['size']. "<br />";
}
?>

小的
中等
大的

您需要一个表单、一个提交按钮和一些PHP代码来处理表单提交

<?php
$servername = "localhost";
$username = "username";
$password = "12345";
$dbname = "dbname";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "select * from  potluck";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    echo '<form action="http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].'" method="POST">';
    echo "<select name='list2' id='list2'>";
    while($row = $result->fetch_assoc()) {
        echo '<option value="'.$row['name'].'">'.$row["name"]."</option>";
    }
    echo "</select>";
    echo '<input type="submit" value="Submit"/></form>';
} else {
    echo "0 results";
}

if (isset($_POST['name'])) {
   $result = $conn->query("SELECT * FROM potluck WHERE name='".$_POST['name']."' LIMIT 1");
   var_dump($result->fetch_assoc());
}
$conn->close();
?>

请参见关于sql注入以及正确准备和绑定查询的重要性是的,sql注入在这里是个问题。我想这家伙正在努力学习一些基础知识。我敢肯定,当你第一次知道如何提交表单时,你并不担心sql注入,我肯定不是,当我按submit不起作用时-重新加载找不到的页面。我将查找此
sql注入以及正确准备和绑定查询的重要性
,但如果您能从外行的角度很好地了解这一点,我们将不胜感激。您将要检查$\u服务器['HTTP\u HOST'的输出并确保它是代码所在的url。看见我已经用一种更好的方式更新了我的答案来获取那个url。
<?php
$servername = "localhost";
$username = "username";
$password = "12345";
$dbname = "dbname";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "select * from  potluck";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    echo '<form action="http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].'" method="POST">';
    echo "<select name='list2' id='list2'>";
    while($row = $result->fetch_assoc()) {
        echo '<option value="'.$row['name'].'">'.$row["name"]."</option>";
    }
    echo "</select>";
    echo '<input type="submit" value="Submit"/></form>';
} else {
    echo "0 results";
}

if (isset($_POST['name'])) {
   $result = $conn->query("SELECT * FROM potluck WHERE name='".$_POST['name']."' LIMIT 1");
   var_dump($result->fetch_assoc());
}
$conn->close();
?>