Php Prikaz

Programovacie jazyky, rady, poradňa...
CyberSPB
Light Expert
Light Expert
Príspevky: 56
Registrovaný: 16 nov 2008, 13:47

Php Prikaz

Príspevok od používateľa CyberSPB »

Ahoj
je mozne spravit php script krory by som umiestnil na localhoste a cez web prehliadac klikol na nejake tlacitko ktore by vykonalo nejaky prikaz ? napriklad prikaz na spustenie ftp servra na pocitaci alebo hoc aky iny exac.

Dik za odpoved
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Php Prikaz

Príspevok od používateľa audiotrack »

áno, je to možné
Mmartin
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2786
Registrovaný: 07 feb 2009, 12:49
Bydlisko: Bratislava

Re: Php Prikaz

Príspevok od používateľa Mmartin »

s tymto som sa stretol malo krat, ak sa nemylim, tak na to by mal sluzit system();. Ak si pamatam, pouziva sa system(prikaz[],return);. Cize

Kód: Vybrať všetko

system("start iexplore",$return);
do $return ti ulozi premennu, ktora bola returnuta

mozno sa mylim, a funkcia je na nieco uplne ine
CyberSPB
Light Expert
Light Expert
Príspevky: 56
Registrovaný: 16 nov 2008, 13:47

Re: Php Prikaz

Príspevok od používateľa CyberSPB »

no ja niesom profik ale chcel by som skusit vlastne taku hovadinu na locale ze ked ja stlacim na mojom servri tlacitko tak sa spusti remote desktop server.

cize za prikazom return ako popisujes mozem zadat hoc aky prikaz ?

este by ma zaujimalo ci sa ten prikaz vykona na servri alebo na pocitaci z ktoreho kliknem
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Php Prikaz

Príspevok od používateľa audiotrack »

na serveri, čiže na tvojom domácom počítači. Nezabúdaj ale že musíš mať verejnú ip
Mmartin
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2786
Registrovaný: 07 feb 2009, 12:49
Bydlisko: Bratislava

Re: Php Prikaz

Príspevok od používateľa Mmartin »

Kód: Vybrať všetko

function spustiprogram(){
$program = "iexplore"; // nazov programu, ktory sa bude po kliku spustat, bez pripony .exe, ako priklad som dal internet explorer
system("start ".$program,$return); //nastartuje program, a ulozi do $return value, ci je start uspesny (true), ci nie (false).
switch($return){ //dame switch, ktory bude kontrolovat return
 case true: return true;break;
 case false: return false;break;
}
}
a tunak si sprav button (odporucam form)

Kód: Vybrať všetko

<form method="post">
<input type="submit" value="Štart" name="start">
</form>
a uz len zavolas

Kód: Vybrať všetko

if(isset($_POST['start'])){
 spustiprogram();
 if(spustiprogram()){echo'Spustené!';}else{echo'Nespustene, nieco zlyhalo';}
}
ak mi najdete chybu, opravte ma.
Gepid
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1006
Registrovaný: 15 júl 2008, 16:54
Bydlisko: Trnava
Kontaktovať používateľa:

Re: Php Prikaz

Príspevok od používateľa Gepid »

A k čomu je exec()?
Myslím, že je to niečo podobné.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Php Prikaz

Príspevok od používateľa audiotrack »

zbytočne si ten system zaobalil do novej funkcie, iba si mu "uškodil"

Kód: Vybrať všetko

switch($return){ //dame switch, ktory bude kontrolovat return
case true: return true;break;
case false: return false;break;
}
stačilo dať ako return $return; Navyše by to bolo lepšie, lebo $return nemusí mať hodnoty true/false (programy často vracajú číselnú hodnotu) a potom tvoja funkcia nevráti nič, lebo tam nemáš default vetvu. Ďalšia vec je opakovateľná nepoužiteľnosť tvojej funkcie, keďže program si tam napísal napevno a teda si system svojím zaobalením obral o jeho výhodu parametra
CyberSPB
Light Expert
Light Expert
Príspevky: 56
Registrovaný: 16 nov 2008, 13:47

Re: Php Prikaz

Príspevok od používateľa CyberSPB »

hmm to je interesantne
vy ste naozaj hlavicky a ja hlava dubova :D
skusim dam vediet

//autoeditácia príspevku (29 Jan 2010, 20:52)
ten kod som dal takto:

<?php
function spustiprogram(){
$program = "iexplore"; // nazov programu, ktory sa bude po kliku spustat, bez pripony .exe, ako priklad som dal internet explorer
system("start ".$program,$return); //nastartuje program, a ulozi do $return value, ci je start uspesny (true), ci nie (false).
switch($return){ //dame switch, ktory bude kontrolovat return
case true: return true;break;
case false: return false;break;
}
}

if(isset($_POST['start'])){
spustiprogram();
if(spustiprogram()){echo'Spustené!';}else{echo'Nespustene, nieco zlyhalo';}
}
?>

<form method="post">
<input type="submit" value="Štart" name="start">
</form>

ide to aj ked to pise ze nespustilo :D
len problem je ze to spustilo na pocitaci kde je ten php script
cize na servri a nie u mna. :S
Mmartin
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2786
Registrovaný: 07 feb 2009, 12:49
Bydlisko: Bratislava

Re: Php Prikaz

Príspevok od používateľa Mmartin »

No aj to tak ma byt
subor u teba nespustis tak lahko
to by bola hracka pre hackerov
pohraj sa s tym returnom, ako audio piasl, spravil som tam chybu, namiesto true si daj 1 a false 0
CyberSPB
Light Expert
Light Expert
Príspevky: 56
Registrovaný: 16 nov 2008, 13:47

Re: Php Prikaz

Príspevok od používateľa CyberSPB »

asi by sme to mali radsej riesit cez pm lebo to moze dakto zneuzit
Mmartin
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2786
Registrovaný: 07 feb 2009, 12:49
Bydlisko: Bratislava

Re: Php Prikaz

Príspevok od používateľa Mmartin »

napis mi na icq, mam to v profile, coskoro tam pridem
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Php Prikaz

Príspevok od používateľa audiotrack »

Mmartin napísal:No aj to tak ma byt
subor u teba nespustis tak lahko
to by bola hracka pre hackerov
pohraj sa s tym returnom, ako audio piasl, spravil som tam chybu, namiesto true si daj 1 a false 0
ja som nikde predsa nenapísal že namiesto true a false nech dá 1 a 0. Ja som písal že najlepšie je dať rovno return $return, lebo program môže vrátiť aj záporné číslo, aj dvojku.. záleží od programu
CyberSPB
Light Expert
Light Expert
Príspevky: 56
Registrovaný: 16 nov 2008, 13:47

Re: Php Prikaz

Príspevok od používateľa CyberSPB »

audiotrack napísal: ja som nikde predsa nenapísal že namiesto true a false nech dá 1 a 0. Ja som písal že najlepšie je dať rovno return $return, lebo program môže vrátiť aj záporné číslo, aj dvojku.. záleží od programu

chlopi klud zaklad je dobry ja mam rad jednoduchost pretoze do php niesom frajer ako vy
:D
Ing. Gandalf
Expert
Expert
Príspevky: 178
Registrovaný: 02 feb 2007, 19:46

Re: Php Prikaz

Príspevok od používateľa Ing. Gandalf »

Mne funguje toto:

Kód: Vybrať všetko

function spustiProgram()
{
  $cmd = 'C:\Cesta\k\programu.exe'; // CMD prikaz na spustenie servera, zalezi od programu
  exec($cmd, $out); // Spustenie servera
  return $out; // Vrati pole hlasok, co to vyhodilo... Vypisat cyklom alebo pouzi print_r($out);
}
Mmartin
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2786
Registrovaný: 07 feb 2009, 12:49
Bydlisko: Bratislava

Re: Php Prikaz

Príspevok od používateľa Mmartin »

nakoniec sme ale dospeli k tomu, ze on chce PHP dokumentom na serveri(a) pustat program na PC(b). A myslim, ze toto je nemozne.
Ing. Gandalf
Expert
Expert
Príspevky: 178
Registrovaný: 02 feb 2007, 19:46

Re: Php Prikaz

Príspevok od používateľa Ing. Gandalf »

Aha, ale podla prveho prispevku mi to znelo tak, ze ma webserver aj program na pc. Tak nic, snaha bola...
Napísať odpoveď