Получение кнопки для отображения результатов запроса в PHP MYSQL

Я пытаюсь выполнить запрос, который будет отображаться в моем браузере при нажатии кнопки, но вместо этого результаты будут отображаться с самого начала. У меня есть кнопка для публикации и мой php-файл в качестве действия, но кажется, что он просто запускает код с самого начала. Вот что у меня есть:

<?php
$host = "localhost";
$db = "cis475";
$user = "root";
$pw = "";


$conn = new mysqli ($host, $user, $pw, $db);
if($conn->connect_error) die($conn->connect_error);

$readAllQuery = "SELECT * FROM enrollment JOIN course ON enrollment.CourseID
= course.CourseID JOIN student ON enrollment.StudentID = student.StudentID";

$result = $conn->query($readAllQuery);
if (!$result) die($conn->error);

echo "<table border='1'>";
echo "<tr><td>EnrollmentID</td><td>Grade</td><td>EnrollmentSemester</td>
<td>CourseID</td><td>StudentID</td><td>Title</td><td>Credits</td>
<td>LastName</td><td>FirstMidName</td></tr>";
while ($row = mysqli_fetch_assoc($result)){
echo "<tr><td>{$row['EnrollmentID']}</td><td>{$row['Grade']}</td>
<td>{$row['EnrollmentSemester']}</td><td>{$row['CourseID']}</td><td>
{$row['StudentID']}</td><td>{$row['Title']}</td><td>{$row['Credits']}
</td>
<td>{$row['LastName']}</td><td>{$row['FirstMidName']}</td></tr>";

}
echo "</table>";

?>

<form method='post' action='readAll.php'>

<input type='submit' name='submit' value='Show All Enrollments'>

</form>

1

Решение

Любой код, присутствующий внутри файла программы, будет выполняться после выполнения, это верно для всех языков, если только он не обернут внутри if или любые другие условные заявления; в этом случае код, включенный в условный оператор, будет выполняться только в том случае, если условие true,

И, таким образом, чтобы решить вашу проблему, вам понадобится условный оператор, который проверяет, была ли форма отправлена ​​или нет, и затем выполняла код, который следует:

if(isset($_POST['submit'])){
$host = "localhost";
$db = "cis475";
$user = "root";
$pw = "";

$conn = new mysqli ($host, $user, $pw, $db);
if($conn->connect_error) die($conn->connect_error);

$readAllQuery = "SELECT * FROM enrollment JOIN course ON enrollment.CourseID = course.CourseID JOIN student ON enrollment.StudentID = student.StudentID";

$result = $conn->query($readAllQuery);
if (!$result) die($conn->error);

echo "<table border='1'>";
echo "<tr><td>EnrollmentID</td><td>Grade</td><td>EnrollmentSemester</td>
<td>CourseID</td><td>StudentID</td><td>Title</td><td>Credits</td>
<td>LastName</td><td>FirstMidName</td></tr>";
while ($row = mysqli_fetch_assoc($result)){
echo "<tr><td>{$row['EnrollmentID']}</td><td>{$row['Grade']}</td>
<td>{$row['EnrollmentSemester']}</td><td>{$row['CourseID']}</td><td>
{$row['StudentID']}</td><td>{$row['Title']}</td><td>{$row['Credits']}
</td><td>{$row['LastName']}</td><td>{$row['FirstMidName']}</td></tr>";
}
echo "</table>";
}

В этом фрагменте мы используем if оператор для проверки, если переменная $_POST['submit'] существует.
Вот submit с — это имя кнопки отправки вашей формы
Замечания: $_POST переменная будет существовать, только если форма была отправлена, вызывая isset() вернусь false если форма не была отправлена ​​и как таковой ваш код внутри { } не будет выполняться при первой загрузке, но будет выполняться после отправки.

0

Другие решения

Вы должны увидеть, есть ли «что-то» (в данном случае, все, что у вас есть, это отправить), а затем выполнить отображение ….

<?php
if($_POST['submit']){
$host = "localhost";
$db = "cis475";
$user = "root";
$pw = "";

$conn = new mysqli ($host, $user, $pw, $db);
if($conn->connect_error) die($conn->connect_error);

$readAllQuery = "SELECT * FROM enrollment JOIN course ON enrollment.CourseID = course.CourseID JOIN student ON enrollment.StudentID = student.StudentID";

$result = $conn->query($readAllQuery);
if (!$result) die($conn->error);

echo "<table border='1'>";
echo "<tr><td>EnrollmentID</td><td>Grade</td><td>EnrollmentSemester</td>
<td>CourseID</td><td>StudentID</td><td>Title</td><td>Credits</td>
<td>LastName</td><td>FirstMidName</td></tr>";
while ($row = mysqli_fetch_assoc($result)){
echo "<tr><td>{$row['EnrollmentID']}</td><td>{$row['Grade']}</td>
<td>{$row['EnrollmentSemester']}</td><td>{$row['CourseID']}</td><td>
{$row['StudentID']}</td><td>{$row['Title']}</td><td>{$row['Credits']}
</td><td>{$row['LastName']}</td><td>{$row['FirstMidName']}</td></tr>";
}
echo "</table>";
}
?>

<form method='post' action='readAll.php'>

<input type='submit' name='submit' value='Show All Enrollments'>

</form>
1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector