Forum » Programiranje » Vgraditev dinamične strani v HTML ogrodje
Vgraditev dinamične strani v HTML ogrodje
joker16_7 ::
Pozdravljeni!
Prosim vas za malo usmeritve pri izdelavi službene platforme. Imam kar nekaj izkušenj s programiranjem, vendar sem v osnovi strojnik, zato mi marsikateri programerski izziv predstavlja pretežek ali vsaj časovno močno zamuden postopek.
Nova platforma je v osnovi povsem zadostna na osnovi HTML-ja v kombinaciji s CSS-jem, vendar potrebuje eno dinamično podstran "My projects". Podstran mora vsebovati zgolj 4 gumbe - dodaj projekt, briši projekt, arhviraj projekt in arhiv. Vsak zaposleni bi si lahko s pomočjo omenjenih gumbov "skreiral" svojo lastno podstran, kjer bi imel neke vrste bližnjice, ki bi predstavljale globoko zakopane mape na serverju.
Težavo nameravam rešiti z vgraditvijo predelanega template-a Java/PHP skripte. Zanima me ali sem se sploh pravilno lotil problema in če da, kater template mi priporočate, da uporabim?
Hvala že v naprej!
Prosim vas za malo usmeritve pri izdelavi službene platforme. Imam kar nekaj izkušenj s programiranjem, vendar sem v osnovi strojnik, zato mi marsikateri programerski izziv predstavlja pretežek ali vsaj časovno močno zamuden postopek.
Nova platforma je v osnovi povsem zadostna na osnovi HTML-ja v kombinaciji s CSS-jem, vendar potrebuje eno dinamično podstran "My projects". Podstran mora vsebovati zgolj 4 gumbe - dodaj projekt, briši projekt, arhviraj projekt in arhiv. Vsak zaposleni bi si lahko s pomočjo omenjenih gumbov "skreiral" svojo lastno podstran, kjer bi imel neke vrste bližnjice, ki bi predstavljale globoko zakopane mape na serverju.
Težavo nameravam rešiti z vgraditvijo predelanega template-a Java/PHP skripte. Zanima me ali sem se sploh pravilno lotil problema in če da, kater template mi priporočate, da uporabim?
Hvala že v naprej!
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
joker16_7 ::
P.S.: Identifikator vsakega userja je Visual Basic datoteka v kateri so informacije vseh zaposlenih na podlagi Computer name-a.
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
joker16_7 ::
Še nekaj dodatnih informacij... Takole kliče skripta npr. Notepad:
Treba bi bilo urediti, da bi klicala VBS datoteko, ki je na serverju.
Takole pa izgleda del HTML kode, ki kliče to skripto:
Upam, da je kaj pomagalo
Treba bi bilo urediti, da bi klicala VBS datoteko, ki je na serverju.
Takole pa izgleda del HTML kode, ki kliče to skripto:
Upam, da je kaj pomagalo
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
Stari89 ::
Ni mi čist jasno, kaj želiš naredit, ampak če boš izvajal skripte na serverju ti JavaScript (ni isto kot Java!) na clientu ne bo dosti pomagal.
Če ti na serverju laufa PHP, si poglej naslednji članek o osnovah obrazcev: klik.
Ni mi čisto jasno, kako boš s PHPjem prišel do imena clienta. Če z JavaScriptom prideš do njega s pomočjo ActiveXObject, ga lahko posreduješ PHP skripti preko Ajaxa (uporabi v navezi z jQuery, ti precej olajša delo). Na ta način lahko ohraniš podobno strukturo metode RunScript(), recimo kaj takega (psevdokoda, vzemi zelo z rezervo):
Potem pa to s PHP skripto obdelaš na približno tak način: TvojaSkripta.php
Recimo, tko na hitr, ziher je miljavžent napak vmes. Zdej pa marš med knjige in učit! :D
LP
Če ti na serverju laufa PHP, si poglej naslednji članek o osnovah obrazcev: klik.
Ni mi čisto jasno, kako boš s PHPjem prišel do imena clienta. Če z JavaScriptom prideš do njega s pomočjo ActiveXObject, ga lahko posreduješ PHP skripti preko Ajaxa (uporabi v navezi z jQuery, ti precej olajša delo). Na ta način lahko ohraniš podobno strukturo metode RunScript(), recimo kaj takega (psevdokoda, vzemi zelo z rezervo):
<!-- vključen jQuery --> <script src="jquery-3.1.1.min.js"></script> <script type="text/javascript> function Runscript() { WsShell = new ActiveXObject("WScript.Shell"); clientComputerName = WsShell.getClientComputerNameSomehowIDontKnowHow(); $.ajax({ url: '/TvojaSkripta.php', data: { client: clientComputerName }, type: 'POST', dataType: 'json', error: function() { alert('Ajax error!'); }, success: function() { alert('Ajax success!'); } }); } </script>
Potem pa to s PHP skripto obdelaš na približno tak način: TvojaSkripta.php
$clientComputerName = $_POST['client']; ... echo json_encode(array('status' => 'success'));
Recimo, tko na hitr, ziher je miljavžent napak vmes. Zdej pa marš med knjige in učit! :D
LP
mm&r ::
Skriptiranje z uporabo ActiveX ti bo tekel izključno samo v Internet Explorerju, MS Edge mislim, da tudi tega ne podpira.
Osebno bi ti svetoval ASP.NET MVC aplikacijo (custom HTML/CSS template niso problem), kjer na strežniku vklopiš Windows AD avtentifikacijo.
Strežnik ob vsakem klicu ve, kater uporabnik je izvedel klic in s katerega računalnika in glede na to lahko potem zgradiš poslovno logiko dostopa do map.
Osebno bi ti svetoval ASP.NET MVC aplikacijo (custom HTML/CSS template niso problem), kjer na strežniku vklopiš Windows AD avtentifikacijo.
Strežnik ob vsakem klicu ve, kater uporabnik je izvedel klic in s katerega računalnika in glede na to lahko potem zgradiš poslovno logiko dostopa do map.
Zgodovina sprememb…
- spremenil: mm&r ()
joker16_7 ::
Najbrž bo potrebno malo dodatne razlage, ker nismo profesionalci na tem področju je malo težje razložiti kaj točno se želi
Trenutno smo v tej fazi:
- HTML link, ki kliče funkcijo:
- Funkcija
Poskušamo vzpostaviti interno (intranet) "spletno" stran, ki bi združevala informacije na enem mestu - trenutno so te razdrobljene in ne omogočajo efektivnega dela. Vstopna stran vsebuje gumb My_projects, ki naj bi vsakega posameznika preusmerila na osebno stran. Zaporedje izgleda nekako takole:
Vstopna stran -> Povezava na My_projects -> štart skripte (skripta se nahaja na lokalnem serverju - kot tudi celotna "spletna" stran) -> VBS prebere ime računalnika -> vbs uporabnika preusmeri na osebno stran (novo okno).
Stvar deluje brez problema dokler se skripta nahaja lokalno (npr namizje) s kodo priloženo zgoraj. Imamo težave spremeniti lokacijo direktorija kjer se skripta zažene. Poskušali smo s kombinacijami pushd in pa setCurrentDir funkcij ampak ne najdemo prave kombinacije. Rešitev je zelo blizu a hkrati zelo daleč
Naj omenim, da stran izdelujemo "navadni" delavci, torej nimamo admin pravic, itd... Se pravi ne moremo stvari upravljati s strani serverja ali pa preveč komplicirati na ravni novih programov/inštalacij in podobno.
"Varnost" z našega stališča ni problem, saj vse teče lokalno znotraj podjetja, sama skripta pa tudi ni nič posebnega.
Upam, da dodatno pojasnilo pomaga pri reševanju zagate.
Hvala še enkrat
P.S.: Še malo za predstavo kako izgleda vstopna stran...
Trenutno smo v tej fazi:
- HTML link, ki kliče funkcijo:
<a href="#" onClick="RunScript();">
- Funkcija
<script type="text/javascript" language="javascript"> function RunScript() { var objShell = new ActiveXObject("WScript.Shell"); objShell.Run("wscript.exe test.vbs"), 1, false; } </script>
Poskušamo vzpostaviti interno (intranet) "spletno" stran, ki bi združevala informacije na enem mestu - trenutno so te razdrobljene in ne omogočajo efektivnega dela. Vstopna stran vsebuje gumb My_projects, ki naj bi vsakega posameznika preusmerila na osebno stran. Zaporedje izgleda nekako takole:
Vstopna stran -> Povezava na My_projects -> štart skripte (skripta se nahaja na lokalnem serverju - kot tudi celotna "spletna" stran) -> VBS prebere ime računalnika -> vbs uporabnika preusmeri na osebno stran (novo okno).
Stvar deluje brez problema dokler se skripta nahaja lokalno (npr namizje) s kodo priloženo zgoraj. Imamo težave spremeniti lokacijo direktorija kjer se skripta zažene. Poskušali smo s kombinacijami pushd in pa setCurrentDir funkcij ampak ne najdemo prave kombinacije. Rešitev je zelo blizu a hkrati zelo daleč
Naj omenim, da stran izdelujemo "navadni" delavci, torej nimamo admin pravic, itd... Se pravi ne moremo stvari upravljati s strani serverja ali pa preveč komplicirati na ravni novih programov/inštalacij in podobno.
"Varnost" z našega stališča ni problem, saj vse teče lokalno znotraj podjetja, sama skripta pa tudi ni nič posebnega.
Upam, da dodatno pojasnilo pomaga pri reševanju zagate.
Hvala še enkrat
P.S.: Še malo za predstavo kako izgleda vstopna stran...
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
Zgodovina sprememb…
- spremenilo: joker16_7 ()
Stari89 ::
Mislim, da vem kaj te muči.
Ker koda teče na cliet računalniku (ne na strežniku), bo objectShell.Run uspel najt wscript.exe (saj se nahaja v System32, ki je v PATH environment variablu). Ne bo pa uspel najt "test.vbs", saj ga imaš na strežniku.
Skripto moraš nekako prenest na clienta, preden jo zaženeš. Morda bi vžgala taka varianta:
ZacetnaFunkcija() -> nekje v test.vbs moraš met tole funkcijo z istim imenom!
Viri: vir 1, vir 2
Upam, da pomaga! Z vbscript še nisem delal! :P
objShell.Run("wscript.exe test.vbs"), 1, false;
Ker koda teče na cliet računalniku (ne na strežniku), bo objectShell.Run uspel najt wscript.exe (saj se nahaja v System32, ki je v PATH environment variablu). Ne bo pa uspel najt "test.vbs", saj ga imaš na strežniku.
Skripto moraš nekako prenest na clienta, preden jo zaženeš. Morda bi vžgala taka varianta:
<script type="text/vbscript" src="test.vbs"></script> <a href="#" onClick="vbscript:ZacetnaFunkcija()">My Projects</a>
ZacetnaFunkcija() -> nekje v test.vbs moraš met tole funkcijo z istim imenom!
Viri: vir 1, vir 2
Upam, da pomaga! Z vbscript še nisem delal! :P
joker16_7 ::
Pozdravljen
Hvala za odgovor ampak s tem sem še vedno na istem. Zadeva teče na client računalniku brez problema. Rad pa bi, da s clientom nimam opravka in da zadeva teče iz serverja. Problem je seveda v naslovu serverja ker po client računalniku bi se slej ko prej uspel sprehodit do specifičnega direktorija - direktno klicat očitno tudi ne gre. Zato sem se pa igral tudi s funkcijo pushd, da bi le ta ustvarila virtualni disk, ki ima črko - kamor se lahko premakneš.
Hvala za odgovor ampak s tem sem še vedno na istem. Zadeva teče na client računalniku brez problema. Rad pa bi, da s clientom nimam opravka in da zadeva teče iz serverja. Problem je seveda v naslovu serverja ker po client računalniku bi se slej ko prej uspel sprehodit do specifičnega direktorija - direktno klicat očitno tudi ne gre. Zato sem se pa igral tudi s funkcijo pushd, da bi le ta ustvarila virtualni disk, ki ima črko - kamor se lahko premakneš.
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
Stari89 ::
Sej maš temle:
vse datoteke na serverju (html in "test.vbs"). Res pa je, da se koda nato izvaja na clientu. Če želiš "test.vbs" izvajat direkt na serverju, je z Javascriptom (ki vedno laufa na clientu) ne boš uspel kar tako pognat. Boš moral uporabit PHP skripto (ki vedno laufa na serverju)(če mate PHP server), da ti zažene "test.vbs" in vrne response. Ni pa mi jasno, kako boš potem z .vbs skripto dobil ime clienta, če pa laufa na serverju.
To ti zalaufa wscript.exe na clientu, ne na serverju.
<script type="text/vbscript" src="test.vbs"></script> <a href="#" onClick="vbscript:ZacetnaFunkcija()">My Projects</a>
vse datoteke na serverju (html in "test.vbs"). Res pa je, da se koda nato izvaja na clientu. Če želiš "test.vbs" izvajat direkt na serverju, je z Javascriptom (ki vedno laufa na clientu) ne boš uspel kar tako pognat. Boš moral uporabit PHP skripto (ki vedno laufa na serverju)(če mate PHP server), da ti zažene "test.vbs" in vrne response. Ni pa mi jasno, kako boš potem z .vbs skripto dobil ime clienta, če pa laufa na serverju.
<script type="text/javascript" language="javascript"> function RunScript() { var objShell = new ActiveXObject("WScript.Shell"); objShell.Run("wscript.exe test.vbs"), 1, false; } </script>
To ti zalaufa wscript.exe na clientu, ne na serverju.
joker16_7 ::
V osnovi je zadeva čisto preprosta. VBS bo tekel tam od koder ga zaženem - na client računalniku. Gre se samo za to da se skripta (datoteka) nahaja na serverju se pravi, jo jaz samo kličem od tam - požene pa se na clientu. Server v tem primeru je samo mrežna lokacija oz interni fizični server - od tu naprej ne zanm razložit zaradi pomanjkanja znanja ampak ne govorimo o serverju kot se ga uporablja za internetne storitve ali izvajanje dostopov...
Po domače povedano lokacija v omrežju je namesto G:\server\folder\folder - \\server\folder\folder in jo lahko obravnavaš kot navaden mrežen disk - ker pa gre seveda za interni server smo mogoče malo zašli v semantiko oz strokovno plat programiranja za kar se opravičujem.
Po domače povedano lokacija v omrežju je namesto G:\server\folder\folder - \\server\folder\folder in jo lahko obravnavaš kot navaden mrežen disk - ker pa gre seveda za interni server smo mogoče malo zašli v semantiko oz strokovno plat programiranja za kar se opravičujem.
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
joker16_7 ::
Težavo je v enem dnevu rešil ponudnik na fiverrju za vsega 20 dolarjev, in sicer z uporabo JavaScripta. Priporočam
"Ambition is the path to success. Persistence is the vehicle you arrive in."
Bill Bradley
Bill Bradley
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | JS frameworks: knockoutJS, angularJS, react, ...Oddelek: Programiranje | 7330 (4175) | kuall |
» | Vsebina tretje spletne straniOddelek: Izdelava spletišč | 1454 (1237) | alexa-lol |
» | Nasvet pred izdelavoOddelek: Programiranje | 3055 (2399) | Gandalfar |
» | Menu samo v eni datoteki (brez frame-ov)Oddelek: Izdelava spletišč | 1572 (1341) | R33D3M33R |
» | Alternative server side jezikom?Oddelek: Izdelava spletišč | 2501 (2153) | CWIZO |