У меня есть форма, в которой пользователь вводит требуемый URL и переходит к следующему шагу. Все это делается без обновления страницы, поэтому я полагаюсь на Ajax для отправки информации. Когда пользователь отправляет URL-адрес, который им нужен, им разрешается перейти к следующей части. Пользователь также имеет возможность вернуться на страницу URL-адреса и изменить свой URL-адрес. Я знаю, как правильно вставить URL-адрес, но я не знаю, как обновить запись с помощью нового URL-адреса. Я попробовал это, но это не работает:Обновление записи на основе предыдущего значения
$prevUrl;
$newUrl;
if ((isset($_POST["url"]))
{
$newUrl = $_POST["url"];
if ($prevUrl == "")
{
$db->query("INSERT INTO Articles (`url`) VALUES ('$newUrl')");
$prevUrl = $newUrl;
}
else
{
$db->query("UPDATE Articles SET url = '$newUrl' WHERE url = '$prevUrl'");
$prevUrl = $newUrl;
}
}
Как я могу сделать это так, что, когда запись обновляется, он обновляется на основе того, что было в предыдущем URL?
Что не так: когда я вернусь, чтобы обновить URL-адрес, URL-адрес не обновляется с новым. Предложение WHERE не выполняется успешно. Как будто переменная $ prevUrl пуста. Я полагаю, что, поскольку PHP является серверной, любые переменные отображаются при обновлении страницы, это переменные, и они не могут измениться. Поскольку $ prevUrl сначала пуст, оператор WHERE, вероятно, делает что-то вроде этого WHERE url = "". Я не уверен, что все. Не было ошибки исключения или какой-либо фатальной ошибки.
Можете ли вы рассказать о том, как ваш код «не работает»? Что вы ожидали, и что на самом деле произошло? Если вы получили исключение/ошибку, опубликуйте строку, в которой она произошла, и сведения об исключении/ошибке. Пожалуйста, отредактируйте эти данные или мы не сможем помочь. – FrankerZ
@FrankerZ Я только что обновил вопрос с этими деталями – user2896120
Я вижу тонны опечаток: 'es (\' url) '(Missing a \'). '$ db-query (" UPDATE Articles' (Отсутствует '' 'перед запросом.Как этот код работает вообще? См. [this] (http://stackoverflow.com/questions/845021/how-to-get- полезный-error-messages-in-php), а также включить «error_reporting» и отправить обратно с фактическими ошибками. – FrankerZ