php throwing error при попытке обновить поля в базе данных mysql

Я пытаюсь редактировать поля в таблице базы данных под названием «минуты», есть несколько наборов минут, но код работает следующим образом … Начало сеанса устанавливает текущего пользователя, который используется в запросах ниже (currentUser = Bnumber) … При нажатии кнопки редактирования на странице «viewstudentminutes.php» выдается следующая ошибка: «Примечание: неопределенный индекс: Minute_ID в viewstudentminutes.php в строке 179».

Неустранимая ошибка: необработанное исключение «PDOException» с сообщением «SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1064 В синтаксисе SQL есть ошибка; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с » в строке 1 ‘в viewstudentminutes.php: 179 Трассировка стека: # 0 viewstudentminutes.php (179): PDO-> prepare (‘ SELECT * FROM `… ‘) # 1 {main} добавлено в viewstudentminutes.php в строке 179’

Ниже приведен весь код на странице minutes.php, а ниже приведен код из «viewstudentminutes.php».

<?php
include ("dbConnect.php");
include ("studenthead.php");

session_start();
if (!(isset($_SESSION["sess_username"]))) header ("Location: index.php");
$currentUser=$_SESSION["sess_username"];

if (isset($_POST['addMinute'])) {
$newB_number = $currentUser;
$newDate = $_POST['Date'];
$newTime = $_POST['Time'];
$newDiscussion = $_POST['Discussion'];
$newActions = $_POST['Actions'];
$newDateofnextmeeting = $_POST['Dateofnextmeeting'];
$newStatus = "Submitted";
$newE_number =  $_POST['E_number'];
$newSupervisor_comments = $_POST['Supervisor_comments'];$dbQuery  = $db->prepare("insert into minute values (null, :newB_number, :newDate, :newTime, :newDiscussion, :newActions, :newDateofnextmeeting,  :newStatus, :newE_number, :newSupervisor_comments )");
$dbParams = array('newB_number'=>$newB_number, 'newDate'=>$newDate, 'newTime'=>$newTime, 'newDiscussion'=>$newDiscussion, 'newActions'=>$newActions, 'newDateofnextmeeting'=>$newDateofnextmeeting, 'newStatus'=>$newStatus, 'newE_number'=>$newE_number, 'newSupervisor_comments'=>$newSupervisor_comments);
$dbQuery->execute($dbParams);

$lastInserted = $db->lastInsertId();
}

if (isset($_POST['deleteMinuteID'])) {
$ID = $_POST['deleteMinuteID'];

$dbQuery  = $db->prepare("delete from minute where ID=:ID");
$dbParams = array('ID'=>$ID);
$dbQuery->execute($dbParams);
}if (isset($_POST['editCommitID'])) {
$ID           = $_POST['editCommitID'];
$editB_number = $_POST['editB_number'];
$editDate  = $_POST['editDate'];
$editTime  = $_POST['editTime'];
$editDiscussion  = $_POST['editDiscussion'];
$editActions = $_POST['editActions'];
$editDateofnextmeeting = $_POST['editDateofnextmeeting'];
$editStatus = $_POST['editStatus'];
$editE_number = $_POST['editE_number'];
$editSupervisor_comments = $_POST['editSupervisor_comments'];$dbQuery  = $db->prepare("update minute set B_number=:B_number, Date=:Date, Time=:Time, Discussion=:Discussion, Actions=:Actions, Dateofnextmeeting=:Dateofnextmeeting, Status=:Status, E_number=:E_number, Supervisor_comments=:Supervisor_comments where ID=:ID");
$dbParams = array('ID'=>$ID, 'B_number'=>$editB_number, 'Date'=>$editDate, 'Time'=>$editTime, 'Discussion'=>$editDiscussion, 'Actions'=>$editActions, 'Dateofnextmeeting'=>$editDateofnextmeeting, 'Status'=>$editStatus, 'E_number'=>$editE_number, 'Supervisor_comments'=>$editSupervisor_comments);
$dbQuery->execute($dbParams);

header("location: minutes.php");
exit();
}?>

<html>
<head>
<title>Minutes</title>

<h2>Minutes</h2>
<table class="table table-striped">
<thead>
<th>B Number</th><th>Date</th><th>Time</th><th>Discussion</th>    <th>Actions</th><th>Date of next meeting</th><th>Status</th><th>Supervisor</th><th>Supervisor comments</th>
</thead>
<tbody>

<?php
$dbQuery = $db->prepare("select * from minute where '$currentUser'=B_number ");
$dbQuery->execute();

$numMinutes = $dbQuery->rowCount();

echo "<p>There are $numMinutes sets of minutes in the system</p>";

$oddRow=true;
while ($dbRow = $dbQuery->fetch(PDO::FETCH_ASSOC)) {
$ID       = $dbRow['ID'];
$B_number = $dbRow['B_number'];
$Date  = $dbRow['Date'];
$Time  = $dbRow['Time'];
$Discussion = $dbRow['Discussion'];
$Actions = $dbRow['Actions'];
$Dateofnextmeeting = $dbRow['Dateofnextmeeting'];
$Status = $dbRow['Status'];
$E_number = $dbRow['E_number'];
$Supervisor_comments = $dbRow['Supervisor_comments'];if ($oddRow) $rowClass="odd"; else $rowClass="even";
$oddRow=!$oddRow;

if (isset($_POST['editMinuteID']) && $_POST['editMinuteID']==$ID) {
echo "<tr class='$rowClass '>
<form style='display:inline' method='post' action='minutes.php'>
<input type='hidden' name='editCommitID' value='$ID'>
<td><input type='varchar' name='editB_number' value='$B_number'></td>
<td><input type='date' name='editDate' value='$Date'></td>
<td><input type='time' name='editTime' value='$Time'></td>
<td><input type='text' name='editDiscussion' value='$Discussion'></td>
<td><input type='text' name='editActions' value='$Actions'></td>
<td><input type='date' name='editDateofnextmeeting' value='$Dateofnextmeeting'></td>
<td><input type='enum' name='editStatus' value='$Status'></td>
<td><input type='varchar' name='editE_number' value='$E_number'></td>
<td><input type='text' name='editSupervisor_comments' value='$Supervisor_comments'></td>
<td colspan='2'><input type='image' src='edit.png'>
</form>
</tr>";
} else {

echo "<tr class='$rowClass'><td>$B_number</td><td>$Date</td><td>$Time</td><td>$Discussion</td><td>$Actions</td><td>$Dateofnextmeeting</td><td>$Status</td><td>$E_number</td><td>$Supervisor_comments</td>
<td class='operation'>
<form class='display:inline' method='post' action='viewstudentminutes.php'>
<input type='hidden' name='editMinute_ID' value='$ID'>
<input type='image' src='edit.png' style='padding-top:7px'>
</form></td>
<td class='operation'>
<form class='display:inline' method='post' action='minutes.php'
onsubmit='return confirm(\"Are you sure?\")'>
<input type='hidden' name='deleteMinuteID' value='$ID'>
<input type='image' src='delete.png' style='padding-top:7px'>
</form></td>
<td class='operation'>
<form class='display:inline' method='post' action='viewstudentminutes.php' onsubmit='viewstudentminutes.php'>
<input type='image' src='view.png' style='padding-top:7px'>
<input type='hidden' name='Minute_ID' value='" . $ID . "'>
</form></td>
</tr>";
}
}?>

и соответствующий код в пределах ‘viewstudentminutes’

<?php
include ("dbConnect.php");
include ("studenthead.php");

session_start();
if (!(isset($_SESSION["sess_username"]))) header ("Location: index.php");

$currentUser=$_SESSION["sess_username"];

if (isset($_POST['addMinute'])) {
$newB_number = $currentUser;
$newDate = $_POST['Date'];
$newTime = $_POST['Time'];
$newDiscussion = $_POST['Discussion'];
$newActions = $_POST['Actions'];
$newDateofnextmeeting = $_POST['Dateofnextmeeting'];
$newStatus = "Submitted";
$newE_number =  $_POST['E_number'];
$newSupervisor_comments = "  ";$dbQuery  = $db->prepare("insert into minute values (null, :newB_number, :newDate, :newTime, :newDiscussion, :newActions, :newDateofnextmeeting, :newStatus, :newE_number, :newSupervisor_comments )");
$dbParams = array('$newB_number'=>$newB_number, 'newDate'=>$newDate, 'newTime'=>$newTime, 'newDiscussion'=>$newDiscussion, 'newActions'=>$newActions, 'newDateofnextmeeting'=>$newDateofnextmeeting, 'newStatus'=>$newStatus, 'newE_number'=>$newE_number, 'newSupervisor_comments'=>$newSupervisor_comments);
$dbQuery->execute($dbParams);

$lastInserted = $db->lastInsertId();
}if (isset($_POST['editCommitID'])) {
$ID           = $_POST['editCommitID'];
$editB_number = $_POST['editB_number'];
$editDate  = $_POST['editDate'];
$editTime  = $_POST['editTime'];
$editDiscussion  = $_POST['editDiscussion'];
$editActions = $_POST['editActions'];
$editDateofnextmeeting = $_POST['editDateofnextmeeting'];
$editStatus = $_POST['editStatus'];
$editE_number = $_POST['editE_number'];
$editSupervisor_comments = $_POST['editSupervisor_comments'];$dbQuery  = $db->prepare("update minute set B_number=:B_number, Date=:Date, Time=:Time, Discussion=:Discussion, Actions=:Actions, Dateofnextmeeting=:Dateofnextmeeting, Status=:Status, E_number=:E_number, Supervisor_comments=:Supervisor_comments where ID=:ID");
$dbParams = array('ID'=>$ID, 'B_number'=>$editB_number, 'Date'=>$editDate, 'Time'=>$editTime, 'Discussion'=>$editDiscussion, 'Actions'=>$editActions, 'Dateofnextmeeting'=>$editDateofnextmeeting, 'Status'=>$editStatus, 'E_number'=>$editE_number, 'Supervisor_comments'=>$editSupervisor_comments);
$dbQuery->execute($dbParams);

header("location: viewstudentminutes.php");
exit();
}?>

<html>
<head>
<title>Minutes</title>

<h2>Minutes</h2>
<table class="table table-condensed">
<?php$dbQuery= $db->prepare("SELECT * FROM `Minute` WHERE `B_number` = '" .     $currentUser . "' AND `id` = " . $_POST['Minute_ID']);
$dbQuery->execute();$oddRow=true;
while ($dbRow = $dbQuery->fetch(PDO::FETCH_ASSOC)) {
$ID       = $dbRow['ID'];
$B_number = $dbRow['B_number'];
$Date  = $dbRow['Date'];
$Time  = $dbRow['Time'];
$Discussion = $dbRow['Discussion'];
$Actions = $dbRow['Actions'];
$Dateofnextmeeting = $dbRow['Dateofnextmeeting'];
$Status = $dbRow['Status'];
$E_number = $dbRow['E_number'];
$Supervisor_comments = $dbRow['Supervisor_comments'];if ($oddRow) $rowClass="odd"; else $rowClass="even";
$oddRow=!$oddRow;

if (isset($_POST['editMinuteID']) && $_POST['editMinuteID']==$id) {
echo "<tr class='$rowClass'>
<form style='display:inline' method='post' action='viewstudentminutes.php'>
<input type='hidden' name='editCommitID' value='$ID'>
<tr><td colspan='2'><input type='image' src='edit.png'></tr>
<tr><th>BNumber</th><td><input type='varchar' name='editB_number' value='$B_number'></td></tr>
<tr><th>Date</th><td><input type='date' name='editDate' value='$Date'></td></tr>
<tr><th>Time</th><td><input type='time' name='editTime' value='$Time'></td></tr>
<tr><th>Discussion</th><td><input type='text' name='editDiscussion' value='$Discussion'></td></tr>
<tr><th>Actions</th><td><input type='text' name='editActions' value='$Actions'></td></tr>
<tr><th>Date of Next Meeting</th><td><input type='date' name='editDateofnextmeeting' value='$Dateofnextmeeting'></td></tr>
<tr><th>Status</th><td><input type='enum' name='editStatus' value='$Status'></td></tr>
<tr><th>E Number</th><td><input type='varchar' name='editE_number' value='$E_number'></td></tr>
<tr><th>Supervisor Comments</th><td><input type='text' name='editSupervisor_comments' value='$Supervisor_comments'></td></tr>

</form>
</tr>";
} else {
echo "<tr class='$rowClass'>
<td class='operation'>
<form class='display:inline' method='post' action='viewstudentminutes.php'>
<input type='hidden' name='editMinute_ID' value='$ID'>
<input type='image' src='edit.png' style='padding-top:7px'>
</form></td>
<tr><th>BNumber</th><td>$B_number</td></tr>
<tr><th>Date</th><td>$Date</td></tr>
<tr><th>Time</th><td>$Time</td></tr>
<tr><th>Discussion</th><td>$Discussion</td></tr>
<tr><th>Actions</th><td>$Actions</td></tr>
<tr><th>Date of Next Meeting</th><td>$Dateofnextmeeting</td></tr>
<tr><th>Status</th><td>$Status</td></tr>
<tr><th>E Number</th><td>$E_number</td></tr>
<tr><th>Supervisor Comments</th>   <td>$Supervisor_comments</td></tr>
</tr>";
}
}

?>
</table>

-2

Решение

Вы должны отредактировать строку запроса, как показано ниже:

$dbQuery= $db->prepare("SELECT * FROM `Minute` WHERE `B_number` = '" .     $currentUser . "' AND `id` = " . $_POST['editMinute_ID']);
0

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

Других решений пока нет …

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