Запрос на обновление sql удаляет содержимое других полей из базы данных - PullRequest
0 голосов
/ 21 мая 2011

У меня есть база данных с tblUsers со следующими полями 1. Дневник Лайтон | DiaryLichtoff | DiarySleep | DiaryAwake | Обратная связьПользователь | FeedbackDoctor

Когда я нахожусь на странице дневника, мне нужно заполнить DiaryLighton | DiaryLightoff | DiarySleep | DiaryAwake после нажатия кнопки сохранения. То же самое должно произойти на странице обратной связи. После нажатия на кнопку FeedbackUser | Необходимо заполнить FeedbackDoctor.

Проблема, однако, в том, что он сохраняет данные, но когда я сохраняю дневник после сохранения обратной связи, содержимое обратной связи исчезает из таблицы и наоборот.

Кто-нибудь знает? Вот код Спасибо!

Сохранить дневник:

public function saveDay($p_iUserid) {
    include("Connection.php"); //open connection to database

    $sql="UPDATE tblDiary
                     SET
                          DiaryLichtAan = '".$this->Aanuur."',
                          DiaryLichtUit = '".$this->Uituur."',
                          DiaryOpstaan = '".$this->Opstaan."',
                          DiaryGaanSlapen = '".$this->Slapen."'
                     WHERE fk_UserId = ".$p_iUserid."
                     and DiaryDay = '".$this->Day."';"; 
    try
    {
        $link->query($sql); 
    }
    catch(Exception $e)
    {
        $feedback = $e->getMessage();   
    }   

    mysqli_close($link); //close connection with database
}

AJAX:

$(".submitbutton").click( function() {
    var aanuur = $(".onzichtbaar_aan").val();
    var uituur = $(".onzichtbaar_uit").val();               
    var opstaan = $(".onzichtbaar_opstaan").val();
    var slapen = $(".onzichtbaar_slapen").val();
    var feeling = $("#onzichtbaar_feeling").val();
    var day = $(".confirmday").val();

    $.post("ajax/save.php", {lichtaan: aanuur, 
                            lichtuit: uituur, 
                            slapen: slapen, 
                            opstaan: opstaan, 
                            feeling: feeling,
                            userid: <?php echo $_SESSION['id']; ?>,
                            day: day},
            function(data) {
    });
    return false;
});

Сохранить отзыв:

public function saveFeedbackP($p_iUserid) {
    include("Connection.php");

    try
    {
        $sql = "UPDATE tblDiary
                SET 
                    DiaryOpmerkingen = '".$this->Patientfb."'
                WHERE fk_UserId = ".$p_iUserid." 
                AND DiaryDay = ".$this->Day.";";
        $rResult = mysqli_query($link, $sql);
        return $rResult;
    }
    catch(Exception $e)
    {
        // no connection database
        $feedback = $e->getMessage();
    }
    mysqli_close($link);
}

1 Ответ

0 голосов
/ 21 мая 2011

Мое первое предположение состоит в том, что ваш SQL в порядке, но ваш код обратной связи каким-то образом вызывает после saveDay пустое значение, которое перезаписывает все.

Просто попробуйте LOG все ваши обновления sql ивы увидите корень проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...