Как позвонить и отобразить базу данных в phpMyAdmin - PullRequest
0 голосов
/ 16 марта 2019

Мое задание - создать две таблицы в phpMyAdmin, а затем создать простую форму, в которой пользователь может нажать кнопку и отобразить две таблицы.У меня есть целевая страница для назначения, завершенная заголовком, строкой поиска и кнопкой, но я не могу понять, как вывести две таблицы из базы данных и отобразить их после нажатия кнопки.

У меня была помощь репетитора с некоторым кодом, но я не смог заставить его работать должным образом и хотел бы получить дополнительную помощь.

Вот код, который у меня есть сейчас (два отдельных кода phpкуски - это два способа, которыми люди пытались помочь мне сделать это, но я не знаю, что работает или как это реализовать):

<!DOCTYPE html>
<?php
$servername = "localhost";
$username = "username";
$password = "password";

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

if ($conn->connect_error) {die("Connection Failed: " . $conn->connect_error);
}
echo "Connected Successfully";
?>
<html>
<head>
</head>
<body>
<h1>Health Club Patron and Class Information</h1>
<form name="contact-form" action="" method="post" id="contact-form">
<div class="form-group">
<label for="Search">Search</label>
<input type="text" class="form-control" search="your_name" placeholder="Search" required>
</div>
<button type="print" class="btn btn-primary" name="print" value="Print" id="submit_form">Print</button>
</form>
</body>
</html>



$connection = mysql_connect('localhost', 'root', ''); //The Blank string is the password

mysql_select_db('hrmwaitrose');

$query = "SELECT * FROM employee"; //You don't need a ; like you do in SQL

$result = mysql_query($query);

echo "<table>"; // start a table tag in the HTML

while($row = mysql_fetch_array($result)){   //Creates a loop to loop through results

echo "<tr><td>" . $row['name'] . "</td><td>" . $row['age'] . "</td></tr>";  //$row['index'] the index here is a field name

}

echo "</table>"; //Close the table in HTML

mysql_close(); //Make sure to close out the database connection

1 Ответ

0 голосов
/ 16 марта 2019

Попробуйте посмотреть примеры на этом сайте, хороший пример взят из школ W3, чтобы учиться на нескольких простых примерах. https://www.w3schools.com/php/php_mysql_select.asp

И пример обработки формы в PHP https://www.w3schools.com/php/php_forms.asp

Вы устанавливаете php-файл, такой как post.php, после чего ваша форма будет публиковаться в этой конечной точке. Или, если вы публикуете форму PHP для себя, вы используете <?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?> для почтового адреса в форме. При обучении попробуйте взять их проще, как в примере ниже, чем строить из него, чтобы вы поняли основную идею.

Вот несколько примеров, этот просто извлекает строки из базы данных.

<?php
$servername = "localhost"; // Server host
$username = "username"; // Database username
$password = "password"; // Database password
$dbname = "hrmwaitrose"; // Your database name

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
// Select the rows name and age from employee
$sql = "SELECT name, age FROM employee";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo " - Name: " . $row["name"]. " " . $row["age"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

Простой пример: отправка формы в файл PHP с другим URL, а не публикация на себя. Имя файла: index.php

<html>
<body>

<form action="results.php" method="get">
Name: <input type="text" name="name"><br>
Age: <input type="text" name="age"><br>
<input type="submit">
</form>

</body>
</html>

Тогда ваш файл results.php содержит Имя файла: results.php

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["age"]; ?>

</body>
</html>

Это пример использования формы для отправки себе, а не для примера, который публикует в другом файле. Используя $_GET["name"], вы извлекаете переменные post из URL, а затем можете запросить базу данных, если вы не используете _POST. Если вы публикуете напрямую в тот же файл, вы делаете что-то подобное, что, я думаю, ваш вопрос задает.

<?php if (!empty($_POST)): ?>
    Welcome, <?php echo htmlspecialchars($_POST["name"]); ?>!<br>
    Your age is <?php echo htmlspecialchars($_POST["age"]); ?>.<br>
<?php else: ?>
    <form action=<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?> method="post">
        Name: <input type="text" name="name"><br>
        Age: <input type="text" name="age"><br>
        <input type="submit">
    </form>
<?php endif; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...