link naar locaal programma

Status
Niet open voor verdere reacties.

ecross

Gebruiker
Lid geworden
4 mrt 2009
Berichten
638
hallo allemaal,
dit is alweer de zoveelste vraag, maar ik word zo goed geholpen :D,
ik heb een programma'tje gedownload waarmee je locaal php kan draaien,
dit programma'tje heb ik op een usb gezet en ook een mapsysteem met php gemaakt

en nu wil ik dat als je rechtermuisknop op een link klikt je dan kan kiezen 'open met notepad'
dit kan wel als je dat gewoon op je bureau blad doet maar dat kan niet op een link in een php/html pagina.

dus is er een mogelijkheid dat ik in een php pagina, rechtsklik op een link naar een html/php pagina kan kiezen 'open met notepad'?
 
Wat wil je er mee doen dan als je het geopend hebt met notepad?
Als ik jou was zou ik het downloaden en openen met notepad... zie het nut er niet helemaal van, maar dat zal wel aan mij liggen!
 
Als het lokaal op die usb stick staat kun je natuurlijk file:// gebruiken ipv een normale link.
 
als je een gewone link gebruikt dan gebruikt hij gewoon je browser (wat ook de bedoeling is) andere iedee?
 
Probeer dit eens!
PHP:
// Controlle of het echt een bestand is
if(is_file($file_name))
{

	// Nodig voor IE
	if(ini_get('zlib.output_compression'))
        {
            ini_set('zlib.output_compression', 'Off');
        }

	header('Pragma: public'); 	// Verplicht
	header('Expires: 0');		// Geen cache
	header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
	header('Cache-Control: private',false);
	header('Content-Type: application/force-download');
	header('Content-Disposition: attachment; filename="'.basename($file_name).'"');
	header('Content-Transfer-Encoding: binary');
	header('Content-Length: '.filesize($file_name));	// provide file size
	readfile($file_name);		// Forceer de download
	exit();
}
 
Je kunt niet een webserver een programma laten openen op de doelmachine, alleen op zichzelf (ie: hij opent notepad dan op je server; als je dus ingelogd bent op de server zie je dat, maar een bezoeker ziet het niet) en dat is maar goed ook.

Ik zit er niet op te wachten dat websites op mijn pc virussen gaat openen :p
 
Dat ben ik helemaal met je eens Frats! :D haha!

Daarom heb ik dat script hierboven gemaakt zodat je een bestand geforceerd moet downloaden. Dan moet je zelf of de gebruiker notepad starten.
 
bedankt voor julie reacties!

downloaden heeft geen zin, het staat al op de usb en het is niet deboeling dat het op je computer komt
Je kunt niet een webserver een programma laten openen op de doelmachine, alleen op zichzelf
het is dus op zich zelf, hoe doe je dat dan?
 
Met een system call :)

PHP:
system();

of

PHP:
exec();

Er zijn er nog meer. Hij voert het opgegeven statement uit alsof het ingetikt wordt op de command prompt (uitgaande van een windows machine)

Pas op:
* Dit soort code is niet erg cross-platform friendly; als je naar een ander operating system gaat (lees: als je deze code upload) dan kan het best wel eens niet meer werken
* De meeste providers geven je geen toegang tot deze functie, dus kijk of je er wel mee mag werken
* Als je hier een security leak in hebt, kan iemand je hele webserver overnemen en dan kom je er zelf niet meer in + al je code en prive info die op de machine staan liggen op straat.

Weet dus waar je aan begint ;)
 
heel erg bedankt!

ik heb de volgende batch file gemaakt (test.bat)
start notepad++ C:\Documents and Settings\ewoud\Mijn documenten\scripts\hzm\index.php
exit

en dan de volgende php code:
PHP:
exec('test.bat');

en het werkt (locaal) heel erg bedankt!

EDIT:

dit werk nog beter (in iedergeval makkelijker):
PHP:
shell_exec('start notepad++ C:\Documents and Settings\ewoud\Mijn documenten\scripts\hzm\index.php');
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan