Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Aktualizacja rekordu
darophp
post
Post #1





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


Możecie mi powiedzieć czemu mi to nie działa ?
  1. if ($zaplacono=="tak") {
  2. echo '<h2>Potwierdzenie wpłaty</h2>';
  3. $wynik = mysql_query("UPDATE wplaty SET paid='$paid' WHERE id='$id'") or die(mysql_error());
  4. if ($wynik) {
  5. echo <<<CODE
  6. <p>Jest ok</p>
  7. <p><a href="index.php?page=home">Powrót na stronę główną</a></p>
  8. <form method="post"><input type="hidden" name="id" value="$id" /><input type="hidden" name="paid" value="1" /></form>
  9. CODE;
  10. } else echo "<p>Wpłata nie została potwierdzona !</p>";
  11. }

link oczywiście <a href="/?zaplacono=tak&id=3"></a> <-- czy jakikolwiek inny numerek ... (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował darophp 20.08.2010, 07:39:50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




1) register_globals
2) Temat: Jak poprawnie zada pytanie
zastosuj się do podanych tu wszystkich porad a dowiesz się czemu nie działa.
Go to the top of the page
+Quote Post
darophp
post
Post #3





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


W każdym plku na początku mam error_reporting. Mimo to i tak nie wyrzuca. A o co chodzi z tym register_globals ?
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




No ale miales zastosowac się do wszystkich porad a nie jednego error_reporting. Poza tym oprócz error_reporting ma byc teź ini_set. (IMG:style_emoticons/default/tongue.gif) Wszystko masz w linku.
Masz sprawdzic czy zmienne zawierają to co myslisz. Sprawdzales? Robiles głupie echo $id? Robiles głupie echo $zaplacono?

O co chodzi z register globals?
http://nospor.pl/php-faq.html#faq-3
Go to the top of the page
+Quote Post
darophp
post
Post #5





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


Mimo, że kliknę na ten link to wyświetli mi to:
Cytat
Potwierdzenie wpłaty nr 10 <-- dodane id
tak <-- wartosc zaplacono tez jest
Jest OK
Powrót na stronę główną

Ale nic nie zaktualizuje, choć wszystkie dane są przekazywane.

PS. Póki co Google otwarte a czas jaki tam spędzam to parę godzin dziennie (IMG:style_emoticons/default/biggrin.gif) (IMG:style_emoticons/default/tongue.gif)

Ten post edytował darophp 20.08.2010, 07:57:41
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




O widzisz, nie mogles od razu podać jakie są objawy? Od razu by było wiadomo ze wszystkie zmiennej się dobrze przesłały i bym ci 4 liter głupotami nie zajmował (IMG:style_emoticons/default/winksmiley.jpg)

Najwidoczniej nie ma w bazie rekordu o ID 4 (IMG:style_emoticons/default/winksmiley.jpg)

ps:
  1. echo "UPDATE wplaty SET paid='$paid' WHERE id='$id'";

Zobacz jak wyglada zapytanie, wklej sobie do PhpMyAdmin i sprawdź czy działa jak powinno.
Go to the top of the page
+Quote Post
darophp
post
Post #7





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


Czy ja wiem ... (IMG:style_emoticons/default/tongue.gif)
(IMG:http://img828.imageshack.us/img828/1026/44043482.png)
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




spójrz na mojego PS z poprzedniego posta i zrob go (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
darophp
post
Post #9





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


Jasny gwint, moja głupota. Popatrz na $paid ... ona chyba była pusta <glupek_ze_mnie>
Teraz działa:
  1. $wynik = mysql_query("UPDATE orders SET paid='1' WHERE id='$id'") or die(mysql_error());

"Paid" czyli zapłacono musi przyjmować wartość "1" - jeżeli tak to na stronie głównej jest tabela i wyświetla się zapłacono. I jeśli paid=="1" to wyświetla się napis wyślij. Dzięki za rady (IMG:style_emoticons/default/smile.gif) Działa !
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Ech... czyli jednak jakbyś się od razu zastosował do porad co ci w linku dałem, to problem by już dawno był rozwiązany....

Zapoznaj się z tym linkiem dokładnie i stosuj się zawsze do niego zanim napiszesz na forum. Jak zobaczę, że się nie stosujesz, to z prawa nadanego mi przez spółkę forum - zamknę Ci temat (IMG:style_emoticons/default/smile.gif)

ps: tak, wiem, jestem niedobry... ale to naprawdę dla Twojego dobra (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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: 13.10.2025 - 00:03