![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam! W moim kodzie wkradł się błąd, którego nie potrafie znaleźć. Prosze o pomoc i z góry dziekuję.
Wypluło coś takiego. Parse error: syntax error, unexpected T_IF in public_html/dodaj.php on line 5 |
|
|
![]() |
-Andrzej.W.- |
![]()
Post
#2
|
Goście ![]() |
Sposób w jaki wstawiłeś funkcję jest nieprawidłowy '.funkcja.' wg. mnie. Tak wstawia się zmienną przy funkcji wywala błąd. Pozdrawiam. Andrzej. Ten post edytował Andrzej.W. 13.05.2013, 22:02:41 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Panie Andrzeju skypt działa, dziękuje bardzo lecz mam inny problem. Zrobiłem w skrypcie specjalny przycisk do usuwaniu calego wiersza z bazy danych
a wiersz mial znaleźć po id i rzeczy. Niestety skrypt nie usuwa mi z bazy danego wiersza po kliknięciu klawisza.
Ten post edytował AuronDiel 13.05.2013, 22:06:07 |
|
|
-Andrzej.W.- |
![]()
Post
#4
|
Goście ![]() |
Nie widzę tutaj zdefiniowania wartości $id, jeśli dobrze rozumiem to któryś z wiersz[] posiada tę wartość.
Ten post edytował Andrzej.W. 13.05.2013, 22:07:07 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Jest zdefiniowana, var_dump($id) wypisał ,,string(1) "1" NULL" co się zgadza id ma wartość 1. Wiersz nie podsiada id, pobrałem ją z sesji.
Użytkownik ma te samo id i pierw w bazie szuka po id a pozniej ma znaleźć wiersz który zawiera daną rzecz (każdy wiersz ma inną rzecz) i na jej podstawie usunąć cały rekord Ten post edytował AuronDiel 13.05.2013, 22:18:56 |
|
|
-Andrzej.W.- |
![]()
Post
#6
|
Goście ![]() |
Chyba nie zatrybiłem, zarówno id jak i rzecz to element tego samego rekordu? I czy oba sa unikalne dla każdego rekordu w tej tabeli?
Ten post edytował Andrzej.W. 13.05.2013, 22:30:45 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Tabela ,,tabela1" w bazie wygląda tak:
| id |mail | rzecz | data | imię | Po zarejestrowaniu użytkownik dostaje przez A_I numerek. Kiedy dodaje rekord do tabeli ,,tabela1" wypisuje tylko mail, rzecz, data, imie a id dopisuje mi sie same i to właśnie działa. Chciałem zrobic jeszcze opcje wyświetlania rekordów (rekordy wyswietlaja sie tylko te ktore id ich zgadza sie z id uzytkownika) oraz usunięcia poszczegolnego z bazy za pomocą submit. Wyświetlić mi się udało ale usunąc się nie chce. Chce usunąć też poszczególny rekord nie wszystkie. W bazie może być wiele rekordów dlatego są id by każdemu użytkownikowi były przepisane jego rzeczy. Więc pytanie miało wyglądać tak ,,Znajdz mi w tablicy ,,tabela1" wszystkie wiersze zawierajace id uzytkownika pozniej znajdz mi rzecz a nastepnie usun caly wiersz z bazy". Czemu szukam jeszcze rzeczy bo uzytkownik moze miec pare wierszy z tym samym id a rzecz jest unikalna. Mam nadzieje, że teraz jest wszystko zrozumiałe. NP. | id |mail | rzecz | data | imię | | 1 | ---- | kapsel | ---- | ----| | 1 | ---- | guma | ---- | ----| | 2 | ---- | kalosze |---- | ---| To sa przykladowe wiersze w bazie rozchodzilo mi sie o to ze po nacisnieciu klawisza usunie mi dany wiersz a znajdzie go pierw po id a pozniej po rzeczy. Odkryłem, że po id umie to znaleźć wiersze ale odpowiedni wiersz po rzeczy to już nie.
Może inaczej trzeba sformułować pytanie? Ten post edytował AuronDiel 13.05.2013, 22:42:38 |
|
|
-Andrzej.W.- |
![]()
Post
#8
|
Goście ![]() |
No to kolego sam już sobie odpowiedziałeś na pytanie, to powinno działać. Ja w sumie zawsze indeksuje tabele, więc każdy rekord ma unikalny id. zawsze też indeks nazywam id_nazwa_tabeli. (IMG:style_emoticons/default/wink.gif)
Pozdrawiam. Ten post edytował Andrzej.W. 14.05.2013, 06:06:42 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Mam po prostu inaczej sformułować pytanie?
|
|
|
-Andrzej.W.- |
![]()
Post
#10
|
Goście ![]() |
Wg. mnie tak, w pierwszej wersji zabrakło operatora AND sprawdziłem sobie na testowej tabeli, czy po dodaniu do Twojej konstrukcji zapytania AND prawidłowo skasuje rekord i skasowało.
Miałem 2 takie same id, a różne wartości drugiej kolumny, zatem tylko tyle. (IMG:style_emoticons/default/smile.gif) Często wyolbrzymia się problem, a diabeł tkwi w detalu. (IMG:style_emoticons/default/wink.gif) Ja wczoraj popełniłem mistrzostwo świata, godzinę szukałem gdzie jest problem w kodzie, że się nie wykonuje, a sprawdzając czy działa patrzyłem na inną tabelę, gdzie żadne zmiany się nie dokonywały heheh. A kod działał jak należy.(IMG:style_emoticons/default/smile.gif) Ten post edytował Andrzej.W. 14.05.2013, 07:30:35 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Wpisałem AND i niestety nie działa, myślę, że to może być przez pętle, ale nie jestem pewien. Zerknij jeśli możesz.
Albo może on wpisuje obydwie rzeczy do zapytania. |
|
|
-Andrzej.W.- |
![]()
Post
#12
|
Goście ![]() |
Ahhh
Jeśli się nie mylę, to z tego wynika, że zmiennej $wiersz[2] nigdzie nie wysyłasz, nie analizowałem pod tym kątem tego kodu, a skupiłem się tylko na poprawności zapytania.
Jeżeli się nie mylę, to value powinno mieć jeśli już wartość $wiersz[2] Tylko masz tu wszystko pomieszane, albo za mało kodu widzę. Po 1. warunkujesz wykonanie zapytania do bazy istnieniem $_POST['okk'], a chcesz obsłużyć ten formularz zewnętrznym plikiem zalogowany.php Więc , czy warunek if(isset($_POST['okk']; to część tego samego pliku, co tabela z wynikiem selecta. Czy innego pliku? Jeśli tabela z wynikiem selecta jest w tym samym pliku co zapyatnie DELETE z warunkiem $_POST['okk'], to wówczas : a. w deklaracji formularza nie dajesz action="nazwa_pliku.php", w ogóle pomijasz action i dajesz tylko method="post" @edit pomyliłem się 2. Jeżeli jest obsługiwane przez plik zalogowany.php to : a. Przekaż do wartości (value="") inputa submit, wartość $wiersz[2], w ten sposób przekażesz ją do zapytania. b. w zapytaniu powinno być wówczas nie $wiersz[2], a $_POST['okk']. Jeśli zaś masz tu pokazany kod z dwóch plików, to porozdzielaj to na dwa cytaty. To tak z grubsza.(IMG:style_emoticons/default/smile.gif) Ten post edytował Andrzej.W. 14.05.2013, 22:18:52 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 2.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
JESTEŚ GENIALNY UDAŁO SIĘ(IMG:style_emoticons/default/exclamation.gif) ! NIE MASZ POJĘCIA JAK BARDZO CI DZIĘKUJE! WYŚLE CI PIWO!
|
|
|
-Andrzej.W.- |
![]()
Post
#14
|
Goście ![]() |
Oj tam, cieszę się że mogłem pomóc, takie próby mnie rozwijają. Ja dopiero raczkuje w php.(IMG:style_emoticons/default/wink.gif)
Pkt pomógł w zupełności wystarczą. Dobrej nocy. (IMG:style_emoticons/default/wink.gif) @Edit Jest jeszcze jedna rzecz, mianowicie, to trochę bez sensu będzie wyglądać, że każdy guzik będzie mieć nazwę wiersz[2], nie wiadomo wówczas do czego on służy. Zatem polecam rozwiązanie jakie stosuję u siebie. Implementujesz do poniższego zestawu Input typu checkbox i zniego odbierasz dane do zapytania np w Twoim wypadku:
Wtedy warunek byłby mniej więcej taki:
Wówczas w tabeli nazwa przycisku usuń byłaby jednoznaczna i kliknięcie checkboksa intuicyjne. "PS pisane z palca więc mogą być błędy. Pozdrawiam.(IMG:style_emoticons/default/smile.gif) Ten post edytował Andrzej.W. 15.05.2013, 07:04:50 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 23:20 |