Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Kod php wywoływany po kliknięciu na link
Forum PHP.pl > Forum > Przedszkole
seweryn
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.

skowron-line
Użyj AJAX -a
seweryn
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?
b4rt3kk
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. smile.gif

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

http://api.jquery.com/jQuery.ajax/
seweryn
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)
viking
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.
seweryn
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?
b4rt3kk
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ę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.