У меня есть две функции на одной и той же веб-странице, каждая из которых обновит одну другую таблицу в той же базе данных, в зависимости от того, какую кнопку вы нажимаете.PHP update query, code revision
Эта функция изменяет одну таблицу и работает:
function SaveMItem()
{
$DayOfWeekNumber = 0;
if ($_POST['selDayOfTheWeek'])
{$DayOfWeekNumber = $_POST['selDayOfTheWeek'];}
mysql_query("UPDATE tblMItem SET ItemText = '" . $_POST['txtFirstOne'] . "' WHERE MenuItemID = " . (1 + $DayOfWeekNumber));
echo "SaveMItem Ok";
}
function SavetblAnnouncement(){
mysql_query("UPDATE TblAnuncios SET Title=".$_POST['txtAnnouncementTitle']. ",Content=".$_POST['txtAnnouncementContent']." WHERE 1");
echo "Completed announcement" ;
}
При нажатии кнопки SaveMItem я могу увидеть сообщение SaveMItem Ok и сохраняет новые значения в таблице.
Когда я нажимаю кнопку SavetblAnnouncement, я могу увидеть сообщение Завершенное объявление, но таблица TblAnuncios не будет обновлена.
Поскольку этот файл находится в одном файле, База данных будет одинаковой, и функция SaveMItem сможет обновить таблицу, я полагаю, что соединение с БД в порядке.
Может ли кто-нибудь сообщить мне, что я делаю неправильно?
Заранее спасибо.
ваш запрос на обновление должен обновить всю запись всей таблицы одним и тем же. –
Прежде чем анализировать, что происходит, используйте обработку ошибок! Вы слепо верите, что все работает, и теперь вы _guess_, что может быть неправильно. MySQL, безусловно, выдает ошибку, говорит вам, что не так, но вы не слушаете! Проверьте руководство по расширению php mysql и прочитайте, как обнаружить ошибки. – arkascha
Кроме того: расширение mysql обесценивается, вместо этого используйте mysqli или PDO, и ваш код в настоящее время широко открыт для SQL-инъекций! – arkascha