![]() |
![]() ![]() |
![]() |
-Tobson- |
![]()
Post
#1
|
Goście ![]() |
rzecz w tym , ze siedze siedze i naprawde juz nie wiem , jest baza sa tabele itd, jest stronka, operuje sobie na tym, robie cos na ksztal sklepu internetowego, wszystko gra poza jednym, mianowicie kompletnie nie moge sobie poradzic z tym updatem :
ciągle wyświetla ten blad piaty , albo jak kombinuje z innymi zapisami itd to bledy ze skladnia, ten przyklad ktory wkleilem , wydaje mi sie najmniej konfliktowy , ale to nie znaczy ze nie probowalem innych , naprawde mam juz tego dosyc nie mam pojecia co jest nie tak, moze błąd tkwi gdzie indziej, głebiej , bede ogromnie wdzieczny za wszelkie sugestie , z gory dzieki za pomoc ! Co trzeba to dokleje i pokaże, jesli może to pomoc. Pozdro ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
Zastosuj mysql_error" title="Zobacz w manualu PHP" target="_manual i może coś się wyjaśni.
-------------------- 404
|
|
|
![]()
Post
#3
|
|
![]() Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Nie bardzo widzę błąd w zapytaniu, tkwi on zapewne w zmiennych wstawianych do niego. Ja w takich przypadkach robię tak:
-wyświetlam sobie na stronie kwerendę SQL (juz tę gotową), u Ciebie będzie to echo $uaktualnij; wstawione ZA linijką z kwerendą -jeśli juz na pierwszy rzut oka widać, że coś jest nie tak (np. w miejsce spodziewanej wartości zmiennej w kwerendzie masz puste miejsce) - szukasz dalej:wyświetlasz sobie wartość zmiennej PRZED kwerendą, jeśli i tam coś jest nie tak, idziesz do miejsca, gdzie na zmiennej dokonujesz jakiejś operacji i tam ją wyświetlasz itd. Nie ma siły - w końcu znajdziesz moment powstawania błędu -jeśli kwerenda jest ok, kopiujesz ją i wklejasz sobie bezpośrednio w okienko wykonywania zapytań SQL w phpmyadminie (zakładam, że z niego korzystasz) - i wykonujesz ją. Tak eliminujesz z kolei błędy składniowe bądź literówki w samej kwerendzie - phpmyadmin wywala błąd wraz z w miarę szczegółowym opisem Tym sposobem jestem w stanie namierzyć 99% błędów w każdej pisanej aplikacji (reszta to literówki, drobne błędy składni itp.) Jeśli to nie pomoże, pisz. Będziemy myślec dalej. -------------------- Life's simple... You make choices and don't look back...
|
|
|
-Tobson- |
![]()
Post
#4
|
Goście ![]() |
yhm, na początek poszedłem za radą Cienkiego1980 i zrobiłem tak :
co zaowocowało takim wynikiem : Kod Warning: mysql_errno(): supplied argument is not a valid MySQL-Link resource in C:\WebServ\httpd\lic\zamow.php on line 38 Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in C:\WebServ\httpd\lic\zamow.php on line 38 nie wyskoczył komunikat o błedzie, ale przy tym zapisie zapomniałem dodać , że on ogólnie nie występuje, po prostu wartość w bazie sie nie zmienia i w tym cały ból. Słuchajcie , a jak upewnić się , że opcje dotyczące relacyjności w bazie sa ustawione dobrze? bo rzuciłem okiem i chyba przyczyna tkwi w tym własnie , że (używam zgadza sie- phpmyadmina ) po kliknieciu w zakladke bazy danych operacje u dołu jest komunikat o błędzie : Kod Błąd Dodatkowe możliwości pracy z połączonymi tabelami zostały wyłączone. Aby dowiedzieć się, dlaczego - kliknij tutaj. po kliknieciu "tutaj" : Kod PMA Database ... błąd[ Dokumentacja ] Ogólne funkcje relacyjne wyłączone hm?? |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
Połowicznie poszedłeś za moją radą .. Jakbyś dokładnie przeczytał zawartość pod linkiem który podałem zobaczyłbyś, że najpierw jest mysql_query() a dopiero potem mysql_error(); Popraw i zobacz czy teraz coś się pojawi.
-------------------- 404
|
|
|
-Tobson- |
![]()
Post
#6
|
Goście ![]() |
nie no ja odrobiłem pracę domową hehe , bo sprawdziłem jakies 10 róznych kombinacji i ustawien, wyczytalem , ze chodzi o ostatnią wykoną nad tym polceniem/poleceniami (biorąc pod uwage zarówno $uaktulnij, jak i $upgrade) własnie , bo nie byłem pewien czy jest jakas różnica odnośnie kolejności i tego którą wziąć pod uwagę, no wiec róznicy nie ma żadnej :/
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
Zrób echo $uaktualnij; i pokaż co się pokazało ... ten kod dodaj zaraz po mysql_query($uaktualnij); .. tam będzie najbezpieczniej.
-------------------- 404
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 5 Dołączył: 29.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie ma tu kodu odpowiedzialnego załączeni z bazą, zakladam, ze go sprawdizles i dziala. Czy na pewno wybrałeś baze na ktorej pracyjesz mysql_select ...
![]() -------------------- Strony internetowe http://rodia.eu
|
|
|
-Tobson- |
![]()
Post
#9
|
Goście ![]() |
wyglada na to ze "nie widzi " zmiennej $losc_zam_produktow ($ilosc_rozm_kosz rowna jest 100 własnie), a $ilosc_zam_produktow=45, $wynik więc powinien być równy 55 , ale jak to wszystko obojętnie w jakiej postaci dam czy te przypisania czy jako pola z tabeli czy jak , to jak echem dam to na ekran to wszystko sie wyswietla bez problemu... . |
|
|
-Tobson- |
![]()
Post
#10
|
Goście ![]() |
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
zrób tak i wrzuć tu wynik:
<?php $pom=$row['ilosc_rozm_kosz']; $wynik= $pom - $losc_zam_produktow; $id_wyniku=$row['id']; $uaktualnij= " UPDATE dane_koszulek SET ilosc_rozm_kosz='$wynik' WHERE id='$id_wyniku' "; echo $uaktualnij; $upgrade=mysql_query($uaktualnij) or die(mysql_error()); ?> |
|
|
-Tobson- |
![]()
Post
#12
|
Goście ![]() |
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 5 Dołączył: 29.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Aby sie upewnić, że błąd jest w kwerendzie to wyświetl tą kwerendę tak jak już to robiles, skopiuj do schowka i wykonaj ją bezpośrednio w phpMyAdmin - tam jest link SQL - można wkleić kwerende. - jeśli tam sie wykona to znaczy, że kwerenda jest OK.
-------------------- Strony internetowe http://rodia.eu
|
|
|
-Tobson- |
![]()
Post
#14
|
Goście ![]() |
sorry , za nie scalanie wiadomosci,a le jestem gościem póki co tym forum i chyba z tego co widzę , nie mam takiej możliwosci, chcialem tylko wspomnieć , że sprawę z relacyjnością naprawiłem , więc to nie to , bo wciąż jest lipa.
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
a skąd bierzesz $losc_zam_produktow bo wychodzi że tam jest 0?
|
|
|
-Tobson- |
![]()
Post
#16
|
Goście ![]() |
a skąd bierzesz $losc_zam_produktow bo wychodzi że tam jest 0? no własnie tam tylko tak wychodzi , generalnie jak zechce to wyswietlic , to normalnie sie wyswietla wartosc tej zmiennej , a jest to zmienna przekazywana do skryptu z formularza za pomocą metody POST , właśnie chyba nalezałoby iść tym tropem , bo nie wiem dlaczego w zapytaniu sql wychodzi zero a w skrypcie jak obok tego zapytania nawet wyswietle to wyswietla sie aktualna wartosc tej zmiennej . co do tego co napisales RODIA to kwerenda sie wykonuje , nie zwraca blędów, tylko nie modyfikuje też tego pola które chce by modyfikowala :/ |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
a spróbuj tak:
$uaktualnij= 'UPDATE dane_koszulek SET ilosc_rozm_kosz='.($pom - $_POST['przekazana_zmienna']).' WHERE id='.$id_wyniku; |
|
|
-Tobson- |
![]()
Post
#18
|
Goście ![]() |
a spróbuj tak: $uaktualnij= 'UPDATE dane_koszulek SET ilosc_rozm_kosz='.($pom - $_POST['przekazana_zmienna']).' WHERE id='.$id_wyniku; działa:D! Wielkie dzięki ! Teraz działa, myślałem ,że próbowałem wszystkiego ![]() |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
taka notacja jest szybsza (choć w tym przypadku nie ma to zbyt wielkiego znaczenia ale przynajmniej dobre przyzwyczajenie
![]() dlaczego zadziałało? myślę że błąd był gdzieś w kodzie którego nie pokazałeś |
|
|
![]()
Post
#20
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
...możesz mi powiedzieć właściwie dlaczego teraz zadziałało?? Pozdro i dzięki wszystkim za pomoc:) ! Pewnie dlatego że zostało wykorzystane poprawnie pobranie zmiennej z formularza za pomocą $_POST. Nikt wcześniej nie zwrócił uwagi i nie zapytał skąd bierzesz zmienne, wszyscy się skupili na "błędnym" zapytaniu które błędne nie było. Ten post edytował Cienki1980 1.10.2008, 07:48:35 -------------------- 404
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 19:49 |