Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP] wywolanie funkcji php po przycisnieciu funkcji submit
Forum PHP.pl > Forum > Przedszkole
dan-j2
Witam posiadam stronke konfiguracyjna napisana w php mam przycisk

<A HREF="?m=accessadd">{t}Cancel{/t} <IMG SRC="img/cancel.gif" alt=""></A> i chcial bym zeby po jego wykonaniu odpalal skrypt napisany w bashu przy pomocy sudo exec np tak

echo exec('sudo /etc/autowarning');
zordon
ale w czym problem? klikasz, przechodzisz do skryptu php, który wywołuje exec, dajesz redirecta z powrotem

ew możesz zrobić to samo przez ajax
dan-j2
A nie moge tego zastąpić w taki sposób żeby w tym samym pliku ten skrypt był wykonywany ?
wdev
Jeżeli chcesz to zrobić w tym samym pliku, to dajesz na początku:
  1. if(isset($_GET['m'] && $_GET['m'] == 'accessadd'){
  2. system('sudo /etc/autowarning');
  3. }
  4. /* tu reszta kodu */

Gdzie jest problem?

Jeśli chcesz to zrobić na tej samej stronie czyli bez odświeżania, to pozostaje Ci AJAX, jak wyżej napisał zordon...
dan-j2
A co zrobic kiedy masz kilka przyciskow submit na stronie ? i kazdy ma wywolywac inny skrypt ?
mmica
Hey ;]

Może:
  1. if(isset($_GET['m'] && $_GET['m'] == 'accessadd'){
  2. system('sudo /etc/autowarning');
  3. }
  4.  
  5. if(isset($_GET['2'] && $_GET['2'] == '2'){
  6. system('cos');
  7. }
  8.  
  9. if(isset($_GET['3'] && $_GET['3'] == '3'){
  10. system('cos2');
  11. }

Hmm?

Pozdrawiam,
mmica

//edit:
Chociaż mądrzejszym sposobem byłby taki:
  1. <html><body>
  2. <form method="get" action="#">
  3. <input type="submit" name="akcja" value="akcja1" />
  4. <input type="submit" name="akcja" value="akcja2" />
  5. <input type="submit" name="akcja" value="akcja3" />
  6. <input type="submit" name="akcja" value="akcja4" />
  7. </form>
  8. </body></html>
  9.  
  10. <?php
  11. switch($_GET['akcja'])
  12. {
  13. case 'akcja1': echo 'akcja1'; break;
  14. case 'akcja2': echo 'akcja2'; break;
  15. case 'akcja3': echo 'akcja3'; break;
  16. case 'akcja4': echo 'akcja4'; break;
  17. default: echo 'taka akcja nie istnieje!';
  18. }
  19. ?>
Jako wypadki dla switch'a podajesz wtedy "system(...)".
dan-j2
Ok dzieki kolego wielkie bede probowal smile.gif klikam pomogl
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.