[PHP]aktualizacja

0

Napisałem prosty skrypt aktualizacji danych w bazie danych no i nie wiem dlaczego nie działa. Jeżeli ktoś wie dlaczego to prosze o pomoc.
[glowa] [glowa] [glowa]

<? $wynik=mysql_pconnect("localhost", "", ""); mysql_select_db("uzytkownik"); $zapytanie = "update uzytkownik set imie='$imie', nazwisko ='$nazwisko', data_ur = '$dataur', where nazwisko='Kowalski'"; $wynik = @mysql_query($zapytanie); echo "Twój profil został zaktualizowany"; ?>
0

Zrob:

echo mysql_error();

To Ci wyswietli przyczyne bledu.

0
<?
error_reporting(E_ALL); //to by się przydało... 
$wynik=mysql_pconnect("localhost", "", ""); /*nie ma użytkownika i hasła (może dlatego nie łączy) a poza tym może wystarczy mysql_connect*/
mysql_select_db("uzytkownik");
$zapytanie = "update uzytkownik
        set imie='$imie', /* ja to robię jakoś tak : set imie='".$imie."' */
        nazwisko ='$nazwisko',
        data_ur = '$dataur',
        where nazwisko='Kowalski'"; /*może dlatego, że zmieniasz nazwisko a po nim szukasz rekordu? szukaj po jakimś identyfikatorze */
$wynik = @mysql_query($zapytanie); /*bez @ i będzie błędy pokazywało!*/
echo "Twój profil został zaktualizowany";
?>

A skąd bierzesz zmienne do postu? Jak z formularza może musisz odwoływać się poprzez tablice globalne $_POST["imie"] zamiast $imie bo nie masz register_globals ustawionego na on (np. nowe PHP > 4.1.3)

no i ewentualnie mysql_error() żeby błąd zobaczyć...

[Dopisek] Ale dziwne kolorowanie... U mnie w notatniku SP to inaczej wygląda :)

0

Zrobiłem wszystko- błędów nie pokazuje oraz w dalszym ciągu nie aktualizuje rekordu. Ale i tak dzięki.

;-| ;-| ;-|

Może ktoś widział gdzieś jakiś prosty przykład wykorzytania updata w php?Za pomoc będe naprawde wdzięczny.

:-| :-| :-|

0

Ale jaka w tym jest filozofia? Tutaj: www.mysql.com

skladnia: UPDATE tabela SET kolumna="nowa wartosc"

W powyzszym przypadku zostana aktualizowane wszystkie rekordy w danej tabeli. Mozesz tez uzywac warunku WHERE:

UPDATE tabela SET kolumna="wartosc" WHERE id = 1

Zaktualizuje wszystkie rekordy, w ktorych kolumna id = 1.

0

where nazwisko='Kowalski'"; /*może dlatego, że zmieniasz nazwisko a po nim szukasz rekordu? szukaj po jakimś identyfikatorze */

No tu się nie zgodzę, bo mysql najpierw wyszukuje w tabeli wiersz, gdzie nazwisko = ... a później dopiero ten wiersz modyfikuje...

0

Czeski błąd już wszystko działa.

[wstyd] [wstyd] [wstyd]

1 użytkowników online, w tym zalogowanych: 0, gości: 1