У меня возникли проблемы с тем, чтобы этот запрос «умереть» должным образом. Я использую html-форму для поиска данных в таблице. теперь, если данные существуют, запрос отлично отображает все, что мне нужно. но если я знаю, что данных не существует, используя штамп в моем коде, я хочу, чтобы он отображал «Ошибка получения данных, пожалуйста, повторите поиск», но это не так. Все просто ничего не делает, абсолютно ничего! Вы видите ошибки в коде? Я могу загрузить весь html-файл, если потребуется. Я смотрел на него часами и начал немного сумасшедшим! Благодаряphp query не умеет правильно
if (isset($_POST['submitted'])) {
$category = $_POST ['category'];
$criteria = $_POST ['criteria'];
$query = "SELECT g.GameID, g.GameName, g.PubID, g.TimePeriodID, g.SettingID, g.MoodID, g.GameWeaponID, g.GameCameraAngleID, g.GamePlayerTypeID, g.GameDescription FROM GameTable g WHERE $category = '$criteria'"; //selecting all the data from the game table that makes the search criteria
$result = mysqli_query($dbcon, $query) or die("Error getting data please search again");
echo "<table class='col-md-12'>"; // displays the searched data as a table
while ($row = mysqli_fetch_array($result)) {
echo "<form class=col-md-6 action=searchgame.php method=post>";
echo "<tr> <th> Game ID</th> </tr>";
echo "<tr>";
echo "<td>" . "<input class=text-black type=text name=gameid readonly=readonly value=" . $row['GameID'] . " </td> <br>"; //here i have made the game Id read only so that it is not editable by the administrator
echo "<tr> <th> Game Name</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=gamename value=" .$row['GameName'] . " < /td> <br>"; // editable boxes so administator can update
echo "<tr> <th> Publisher ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=pubid value=" . $row['PubID'] . " < /td><br>";
echo "<tr> <th> Time Period ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=timeperiodid value=" . $row['TimePeriodID'] . " < /td><br>";
echo "<tr> <th> Setting ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=settingid value=" . $row['SettingID'] . " < /td> <br>";
echo "<tr> <th> Mood ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=moodid value=" . $row['MoodID'] . " < /td><br>";
echo "<tr> <th> Weapon ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=gameweaponid value=" . $row['GameWeaponID'] . " < /td><br>";
echo "<tr> <th> Camera Angle ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=gamecameraangleid value=" . $row['GameCameraAngleID'] . " < /td><br>";
echo "<tr> <th> Player ID</th> </tr>";
echo "<td>" . "<input class=text-black type=text name=gameplayertype value=" . $row['GamePlayerTypeID'] . " < /td><br>";
echo "<tr> <th> Game Description</th> </tr>";
echo "<td>" . "<textarea style=height:200px;width:300px; class=text-black type=text name=gamedescription value=>" . $row['GameDescription'] . "</textarea><br>";
echo "<td>" . "<input type=hidden name=hidden value=" . $row['GameID'] . " </td>";
echo "<td>" . "<input class=text-black input-button-rounded type=submit name=update value=Update" . " </td>"; //update button
echo "<td>" . "<input class=text-black input-button-rounded type=submit name=delete value=Delete" . " </td>"; //delete button
echo "</tr>";
echo"</form>";
}
echo "</table>";
}
?>
Затем получить реальную ошибку 'mysqli_error ($ dbcon)' –
также распечатать запрос и запустить непосредственно в mysql ... – Naga
** ПРЕДУПРЕЖДЕНИЕ **: При использовании 'mysqli' вы должны использовать [параметризованные запросы] (http : //php.net/manual/en/mysqli.quickstart.prepared-statements.php) и ['bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php) для добавления пользовательских данных в ваш запрос. ** НЕ используйте ** интерполирование строк или конкатенацию для выполнения этого, потому что вы создали серьезную [SQL-инъекцию] (http://bobby-tables.com/). ** НИКОГДА не ставьте данные '$ _POST' или' $ _GET' непосредственно в запрос, это может быть очень вредно, если кто-то пытается использовать вашу ошибку. – tadman