Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Kod php wywoływany po kliknięciu na link
seweryn
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 24.08.2012

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


Witam,

mam taki kod:

  1. <?php
  2.  
  3. $print_url = juri::root().'index.php?option=com_virtuemart&view=invoice&layout=invoice&tmpl=component&virtuemart_order_id=' . $order->virtuemart_order_id . '&order_number=' .$order->order_number. '&order_pass=' .$order->order_pass;
  4. $print_link = "<a href=\"java script:void window.open('$print_url', 'win2', 'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,width=6
    40,height=480,directories=no,location=no');\" >"
    ;
  5. $print_link .= '<span class="hasTip print_32" title="' . JText::_('COM_VIRTUEMART_PRINT') . '">&nbsp;</span></a>';
  6.  
  7. ?>
  8.  
  9. <td><?php echo $print_link; ?></td>


Chciałbym, aby po kliknięciu w link uruchamiał się kod PHP powodujący zmianę w MySQL.

Obecnie otwiera się strona w nowym okienku, do tego chciałbym jeszcze dorzucić właśnie funkcję w PHP, która będzie aktualizowała bazę danych (chodzi o zmianę statusu zamówienia).
Ze składnią SQL raczej sobie poradzę, ale nie mam pojęcia jak uruchomić kod PHP po kliknięciu w link.

Bardzo proszę o pomoc.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Użyj AJAX -a
Go to the top of the page
+Quote Post
seweryn
post
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 24.08.2012

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


Niestety, ale AJAX-a już w ogóle nie znam.

Może jest jakaś składnia, która odpala kod PHP po kliknięciu w link?

Ten post edytował seweryn 19.09.2012, 14:15:01
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #4





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Cytat(seweryn @ 19.09.2012, 15:14:04 ) *
Niestety, ale AJAX-a już w ogóle nie znam.

Może jest jakaś składnia, która odpala kod PHP po kliknięciu w link?


Tak, jest, AJAX. (IMG:style_emoticons/default/smile.gif)

http://www.w3schools.com/ajax/default.asp

http://api.jquery.com/jQuery.ajax/
Go to the top of the page
+Quote Post
seweryn
post
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 24.08.2012

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


(IMG:style_emoticons/default/smile.gif)

Dopiero zaczynam robić coś z PHP, a od razu łączenie do tego AJAX-a wydaje mi się górą nie do przeskoczenia ;(

Myślałem, że jest może na to jakiś sposób używając tylko PHP - miałem nadzięję, że może coś z "if" by tutaj zadziałało.

Czy naprawdę nie ma żadnego sposobu na rozwiązanie mojego problemu? (używając tylko PHP)
Go to the top of the page
+Quote Post
viking
post
Post #6





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


PHP działa po stronie serwera, JS po stronie klienta. Jeśli to ma być bez przeładowania aktualnie wygenerowanej strony nie da się tego zrobić w gołym PHP bo już dawno zostałą przetworzona przez serwer i odesłana. A nie musisz też od razu pakować się w całą bibliotękę jQuery tylko np https://github.com/ded/Reqwest Przykłady chyba są wystarczająco proste.
Go to the top of the page
+Quote Post
seweryn
post
Post #7





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 24.08.2012

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


Cytat(viking @ 19.09.2012, 15:43:17 ) *
Jeśli to ma być bez przeładowania aktualnie wygenerowanej strony nie da się tego zrobić w gołym PHP bo już dawno zostałą przetworzona przez serwer i odesłana.


Przeładowanie strony jest nawet wskazane w tym przypadku.

Obecnie wygląda to tak, że w nowym oknie otwiera się tylko "wydruk".
A strona ze statusem, który ma zostać zmieniony jest wyświetlana w pierwszym oknie przeglądarki - i ona jak najbardziej może się przeładować.

Czy w takim przypadku da się to zrobić w gołym PHP?
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #8





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Cytat(seweryn @ 19.09.2012, 15:50:09 ) *
Przeładowanie strony jest nawet wskazane w tym przypadku.

Obecnie wygląda to tak, że w nowym oknie otwiera się tylko "wydruk".
A strona ze statusem, który ma zostać zmieniony jest wyświetlana w pierwszym oknie przeglądarki - i ona jak najbardziej może się przeładować.

Czy w takim przypadku da się to zrobić w gołym PHP?


Da się zrobić w gołym PHP. Musisz wysłać formularz do strony .php, która doda wpis do bazy, ale żeby zmiany były widoczne dla użytkownika musi on przeładować stronę.
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: 25.08.2025 - 02:43