я сделал этот код, чтобы получить «12345» и выберите его в MySQL Query из bithumor.co/posts/12345 поэтому запрос может выбрать данные WHERE ID = 12345SELECT, данные WHERE ID = часть URL
Пример: Текущий URL: bithumor.co/posts/12345 SELECT: данные где ID = 12345
Вот код:
<?php
$tokens = explode("/", $_SERVER[REQUEST_URI]);
$number = $tokens[count($tokens) - 1];
$sql = "SELECT id, post_title, username, content_url, pro_pic, username FROM posts WHERE id = ".$number;
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<br><div class='entire_post'><center><img class='pro_pic' src=http://cdn.bithumor.co/pro_pics/" . $row['pro_pic']. "></center><title>" . $row['post_title']. " </title><center><font face='HelveticaNeue-Light' font size='5'>" . $row['username']. "</font> </center><center><img class='upload' src=http://cdn.bithumor.co/uploads/" . $row["content_url"]. " width='100%'></center> " . $row["id"]. "<br></div>";
}
$conn->close();
?>
Что я сделал не так и как это исправить?
Это сообщение не существует. –
Если бы я мог дать вам подсказку ... не добавляйте переменную в запрос SQL ... используйте параметры ... иначе вы уязвимы для SQL-инъекции ... что, если содержимое переменной, исходящей из запроса url, будет be '; drop tables;' ? –
@JayBlanchard это просто пример, страница на самом деле не существует –