![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 7 Dołączył: 17.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Robię coś takiego. Na początku wypisuję sobie zawartość tablicy post i wszystko jest ładnie. Następnie składam zapytanie i je sobie wypisuję. Później wypisuję to zapytanie sobie. I je wywołuje. Moje zdziwienie gdy otwieram phpMyadmina, gdy widzę wartości pól 1w,2v,3r,4s, 5z, 6l, 7t, 8zz dla updatowanego id są puste.
Jeżeli przekleję to wyechowane zapytanie do phpMyAdmin to się updatuje poprawnie. Zrzut bazy:
A dane pochodzą z fomularza w html: <form method="post" action="costam.php?action"> Siedzę nad tym problemem 3 dzień i nic nie mogę zdziałać. A jeszcze dodam, że to samo jest, gdy usunę rekord i dodam go na nowo. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 56 Dołączył: 3.06.2010 Skąd: Tarnowskie Góry Ostrzeżenie: (0%) ![]() ![]() |
mysql_error() zwarca stringa czyli:
mysql_query() zwraca FALSE kiedy jest błąd, więc
Skoro zapytanie jest dobre to jedynie tu może być jakieś przekłamanie. -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 7 Dołączył: 17.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Niestety mysql_error() nie zwrócił nic. Zmiana warunku w if'ie nie zmieniła także nic. Na bazie danych nie ma żadnego triggera.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 9 Dołączył: 16.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
`trafo_id` to primary_key, także jest unikalny, więc limit jest Ci niepotrzebny
![]() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@GwynBleidD limit sluzy w tym przypadku do optymalizacji. Jak masz milion rekordów to po znaleziueniu tego rekordu z danym ID mysql nie szuka już wiecej. Bez limit mysql by szukał nadal.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 9 Dołączył: 16.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Hmm... zawsze myślałem, że jeśli zadamy silnikowi MySQL do szukania wartość, która jest unikalna (primary key albo unique) to poprzestanie on szukania na tej jednej i nie będzie kontynuował szukania, gdyż na pewno drugiej nie znajdzie.
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
To machnij testa na milionie rekordów. Sam z chęcią sprawdzę w praktyce jak to jest
![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 7 Dołączył: 17.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cytat `trafo_id` to primary_key, także jest unikalny, więc limit jest Ci niepotrzebny Może bez limit pójdzie. I bez limitu nie działa:/ Cytat PS. daj cały kod php pomiędzy znaczniki <pre> i </pre> to będzie lepiej wynik odczytywać (nowe linie). Nie rozumiem co masz na myśli. Ten post edytował kreciko 5.01.2011, 14:21:46 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
czy oby na pewno zrobiles
echo mysql_error(); jak ci kazano? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 7 Dołączył: 17.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak. Do tego jeszcze var_dump();
Tak to wygląda obecnie. Mam trzy funkcje, które działają podobnie do tej, i tylko w jeden zmieniłem. Jednak problem nadal jest. Co zauważyłem przed chwilą. Że gdy daję wartość otoczę spacjami czyli np. ' dupa ', i tą wartość updatuję, to te spacje otaczające dupa zostają. Ten post edytował kreciko 5.01.2011, 15:30:18 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 9 Dołączył: 16.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Ja bym dał to tak:
Ten post edytował GwynBleidD 6.01.2011, 18:11:55 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 7 Dołączył: 17.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Widze, że zmieniłeś tylko warunek w if'ie. Problem nadal jest.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 9 Dołączył: 16.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Temat stary, ale chyba mam rozwiązanie. Możliwe, że masz w zapytaniu (z tablicy post) jakieś nieprintowalne znaki (np. nulle) które zaburzają coś. Otocz wszystkie $post[*] w zapytaniu funkcją mysql_real_escape_string.
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 7 Dołączył: 17.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki. Na przyszłość się przyda:)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 04:23 |