Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP] wywolanie funkcji php po przycisnieciu funkcji submit
dan-j2
post 1.12.2010, 11:18:11
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.05.2009

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


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');
Go to the top of the page
+Quote Post
zordon
post 1.12.2010, 11:46:44
Post #2





Grupa: Zarejestrowani
Postów: 358
Pomógł: 78
Dołączył: 4.11.2008
Skąd: Kraków

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


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
Go to the top of the page
+Quote Post
dan-j2
post 1.12.2010, 16:31:52
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.05.2009

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


A nie moge tego zastąpić w taki sposób żeby w tym samym pliku ten skrypt był wykonywany ?
Go to the top of the page
+Quote Post
wdev
post 1.12.2010, 17:00:05
Post #4





Grupa: Zarejestrowani
Postów: 86
Pomógł: 20
Dołączył: 20.01.2010

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


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...


--------------------
-wdev-
Go to the top of the page
+Quote Post
dan-j2
post 5.12.2010, 20:39:35
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.05.2009

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


A co zrobic kiedy masz kilka przyciskow submit na stronie ? i kazdy ma wywolywac inny skrypt ?
Go to the top of the page
+Quote Post
mmica
post 5.12.2010, 21:17:50
Post #6





Grupa: Zarejestrowani
Postów: 60
Pomógł: 20
Dołączył: 30.11.2010
Skąd: 127.0.0.1

Ostrzeżenie: (10%)
X----


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(...)".

Ten post edytował mmica 5.12.2010, 21:42:45


--------------------
"Imagination is more important than knowledge, because knowledge is limited." ~Albert Einstein
<?php $var = array('foo', 'bar'); ?>
Go to the top of the page
+Quote Post
dan-j2
post 6.12.2010, 14:26:45
Post #7





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 31.05.2009

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


Ok dzieki kolego wielkie bede probowal smile.gif klikam pomogl
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 01:59