Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] zapytanie UPDATE nie działa
bigda
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.04.2018

Ostrzeżenie: (0%)
-----


Chcę uaktualnić rekord. Wpisałem kod:

CODE
if ($wszystko_OK==true)
{
$polaczenie -> query("UPDATE klienci SET imie='$imie', nazwisko='$nazwisko', malzonek_imie='$imiemalzonek', malzonek_nazwisko='$nazwiskomalzonek', telefon='$telefon', miasto='$miasto', ulica='$ulica', nr_domu='$nrdomu', nr_mieszkania='$nrmieszkania', pesel='$pesel', farmakoterapia='$farmakoterapia', poprzednie_terapie='$psychoterapia', opis='$opis', kontrakt='$kontrakt', cena_atualna='$cena' WHERE id_klienta='$id'");


$_SESSION['zapisano']="Zmodyfikowano wpis w bazie danych";
}


Warunek jest spełniony - wyświetla się $_SESSiON['zapisano'] potraktowany printem;
Połączenie jest nawiązane.
Wszystkie zmienne użyte w zapytaniu są ustawione - wyświetlają się printem.
UPDATE wpisane w phpMyAdminie działa.

Po kliknięciu na guzik submit w formularzu strona się odświeża, w bazie nic się nie zmienia.

Gdzie tkwi błąd?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bigda
post
Post #2





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.04.2018

Ostrzeżenie: (0%)
-----


mrk9109 Spróbowałem, niestety żadnych zmian.
nospor Wyświetla się wszystko - zapytanie, treść wypełnionych pól formularza - czyli niepuste zmienne, a na koniec napis "widzisz mnie?". If chyba jednak działa.


viking Jestem totalnie zielony, bo dopiero co zacząłem się uczyć, a i to tylko hobbystycznie robię, choć staram się zrobić coś użytkowego dla siebie. Było nie było nie wiem, czy dobrze zastosowałem się do Twojej rady.
Błędy wyświetliłem kodem

  1. <?PHP
  2. ini_set( 'display_errors', 'On' );
  3. error_reporting( E_ALL );
  4. ?>


Zapytanie:

Kod
if ($wszystko_OK==true)
{
    try {
    
$polaczenie -> query("UPDATE klienci SET imie='$imie', nazwisko='$nazwisko', malzonek_imie='$imiemalzonek', malzonek_nazwisko='$nazwiskomalzonek', telefon='$telefon', miasto='$miasto', ulica='$ulica', nr_domu='$nrdomu', nr_mieszkania='$nrmieszkania', pesel='$pesel', farmakoterapia='$farmakoterapia', poprzednie_terapie='$psychoterapia', opis='$opis', kontrakt='$kontrakt', cena_atualna='$cena' WHERE id_klienta='$id'");
         }
catch(Exception $e)
{
echo '<span style="color:red;">Błąd serwera! Przepraszamy za niedogodności i prosimy o rejestrację w innym terminie!</span>';
echo '<br />Informacja developerska: '.$e;    
    
}

$_SESSION['zapisano']="Zmodyfikowano wpis w bazie danych";
}



Bez zmian - nic się nie zmienia, nie wyświetlają się błędy wyświetla. O PDO i o bindowaniu coś słyszałem, ale jeszcze nie umiem. Będę grzebać w necie i uczyć się. Połączenie jest w mysqli.

Zastanawiam się, czy problemem może być to, że nie wszystkie pola formularza są obowiązkowe, a puste pole, to pusta zmienna w zapytaniu. Wcześniej w innym skrypcie już miałem taki problem, ale rozwiązałem go naokoło - tutaj takiej metody nie dam rady zastosować. Cały skrypt jest identyczny jak w innym miejscu tej samej stronki, tylko zmienne są inne. Tam też występują w zapytaniu puste zmienne i wszystko działa jak należy.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 11:50