Я пытаюсь использовать инструкцию INSERT INTO SQL в php. Он будет вводить все правильно до последнего значения ($bands_bio
). Вместо того, чтобы вводить правильную информацию, она оставляет значение пустым. Я просмотрел все и не могу найти никаких синтаксических ошибок.Инструкция INSERT INTO не будет вставлять определенное значение правильно?
$page_title = "Create a new band";
require ('includes/database.php');
require_once 'includes/bandsHeader.php';
$band_name = $conn->real_escape_string(trim(filter_input(INPUT_GET, 'band_name', FILTER_SANITIZE_STRING)));
$band_photo = $conn->real_escape_string(trim(filter_input(INPUT_GET, 'band_photo', FILTER_SANITIZE_STRING)));
$genre = $conn->real_escape_string(trim(filter_input(INPUT_GET, 'genre', FILTER_SANITIZE_STRING)));
$band_bio = $conn->real_escape_string(trim(filter_input(INPUT_GET, 'band_bio', FILTER_SANITIZE_STRING)));
echo $band_bio;
if (($band_name === "") OR ($genre === "") OR ($band_photo === "") OR ($band_bio = "")) {
$errno = $conn->errno;
$errmsg = $conn->error;
echo "<div id='contentWrapper'>";
echo "<div class='contentBox'>";
echo "Insertion failed with: ($errno) $errmsg<br/>\n";
echo "</div></div>";
$conn->close();
include 'includes/searchFooter.php';
exit;
}
$albums = 0;
$sql = "INSERT INTO bands VALUES (NULL, '$band_name', '$genre', '$albums', '$band_bio')";
$query = @$conn->query($sql);
if (!$query) {
$errno = $conn->errno;
$errmsg = $conn->error;
echo "<div id='contentWrapper'>";
echo "<div class='contentBox'>";
echo "Insertion failed with: ($errno) $errmsg<br/>\n";
echo "</div></div>";
$conn->close();
include 'includes/footer.php';
exit;
}
Как вы можете видеть, я вторил из $band_bio
для того, чтобы увидеть, если он получал правильное значение от моей формы, которая использует метод GET, который это так, что это не проблема. У меня нет проблем с вставкой все правильно до последнего значения, которое должно быть последним столбцом с именем band_bio
в моей таблице bands
в моей базе данных. Он также не выдаст никаких ошибок или чего-либо еще. Это почти похоже на то, что он берет строковые данные из переменной и удаляет весь текст до того, как он вставляет информацию.
Я работаю на этом сайте всего несколько недель и использую инструкцию INSERT INTO точно так же, как и на других страницах, и это работает нормально. Это первое, что меня действительно задело, и я не могу понять. Любая помощь приветствуется.
Что такое ddl (схема) для вашей таблицы 'band'? – eggmatters
Какие яйцо говорит + пример значений, которые вы вставляете, если возможно :) – vuryss
Может быть: '$ bands_bio =" ''); DELETE из диапазонов, где true '"'? – eggmatters