php - 使 PHP 在提交表单后运行,而不重定向到另一个 PHP 页面来处理数据

标签 php html mysql sql

我不确定这是否是一个重复的问题,因为我什至不确定如何正确地形成它(这就是为什么这个问题的标题没有实际意义)。我开始学习 PHP,以便可以在网页中使用 SQL 数据库。

我的问题是,我怎样才能让用户在输入框中输入密码,然后 PHP 脚本使用该密码作为 MySQL 登录的密码来显示表的内容HTML 表格?现在,我已经弄清楚了大部分内容,唯一的问题是在输入密码并点击提交按钮的同一页面上显示表格。我需要使用 AJAX 吗?因为我不知道第一件事。这是我到目前为止所拥有的:

索引.php:

<DOCTYPE! html>
<html>
<head>
<title>Guy's Random Project</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<script src="scripts.js"></script>
</head>
<body>

<div>
<form action="" method="POST">
<font size="4">Password: </font><input type="text" id="pass" name="pass"/><br>
<input class="buttonGreen" type="submit" value="Submit" id="1" onMouseDown="mouseDown(1)" onMouseOut="mouseUp(1)"/>
</form>
</div>

<table><thead><th>ID</th><th>Name</th><th>Type</th><th>Rating</th></thead><tbody>
<?php include 'getTableData.php'?>
</tbody></table>


</body>
</html>

getTableData.php:

<?php
$servername = "localhost";
$username = "root";
$password = $_POST['pass'];;
$dbname = "testing";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
     die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT id, name, type, rating FROM crap_food";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
     while($row = $result->fetch_assoc()) {
         echo "<tr><td>" . $row["id"] . "</td><td>" . $row["name"] . "</td><td>" . $row["type"] . "</td><td>" . $row["rating"] . "</td></tr>";
     }
} else {
}

$conn->close();
?>

我知道 PHP 是在服务器端运行的,并且仅在客户端读取任何 HTML 之前运行,因此仅使用 PHP 和 HTML 不可能在按下按钮时运行函数,但是这与我正在寻找的类似。我不想通过表单操作将用户重定向到另一个页面(这就是为什么它是空白的),我想将这一切保留在index.php 中。谢谢(对于这个问题的可怕形成感到抱歉,我只是有点困惑)。

最佳答案

您可以使用 AJAX 来实现此目的。

$.ajax({

    url: 'xxx.php',

    data:formData,
    cache: false,
    contentType:false,
    processData:false,
    type: 'post',
    success: function(response)
    {
            //do something 

    }

关于php - 使 PHP 在提交表单后运行,而不重定向到另一个 PHP 页面来处理数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41606449/

相关文章:

javascript - 处理付款

php - Laravel 关系(与)

HTML 布局 : mixing [Element] and [Signal Element] in an Elm web apge

MySQL 一对多,没有具体的条目

mysql - 使用 mysql 的 Rails LIKE 查询

mysql - 如何返回连接所有存在 SQL 的行

php - 如何在sql查询中使用变量名访问表

php - 使用php显示下拉列表中两个不同表的值

jQuery 多个简单的 Rail 菜单(不是嵌套的 ul)

html - 我的 HTML 文档没有正确链接到我的 CSS 样式表