Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mittels php Dateien oder Dateipfade öffnen

Frage Entwicklung PHP

Mitglied: Xenome

Xenome (Level 1) - Jetzt verbinden

02.09.2011 um 11:44 Uhr, 5195 Aufrufe, 3 Kommentare

Hallo liebe Community,

da ich mich in den letzten Tagen ein wenig mit der installation und konfiguration eines eigenen Wikipedia für meine Firma vertraut gemacht habe, habe ich recht schnell gemerkt dass man ohn PHP-Kenntnisse nicht sonderlich weit kommt. Von daher auch dieser Thread.

Folgendes ist bis jetzt gemacht worden und ist auch lauffähig:
Installation von XAMPP auf einem Windows-System
Installation von Mediawiki in der Version 1.17.0

Nun möchte ich die aktuell noch recht standardmäßige Installation anpassen. Hierbei möchte ich jedoch das eine oder andere noch erweitern. Hierbei würde ich gerne folgende Funktion einbinden, weiß jedoch nicht wie ich das machen soll.

In einem Artikel z.B. über unsere aktuellen Projekte möchte ich gerne auf Excel-Dateien verweisen oder auch auf Ordner.
Hierbei wäre es mir ganz recht das bei der Auswahl der xls Datei diese mit excel geöffnet wird und sich nicht als download öffnet.

Ich hoffe ihr könnt mir helfen.


Grüße

Xenome
Mitglied: nxclass
07.09.2011 um 15:34 Uhr
Prüfe mal die Header Informationen des Dokumentes wenn der Server die Datei sendet. ( 'application/xls' sollte drin stehen unter 'Content-type')
Bitte warten ..
Mitglied: Xenome
08.09.2011 um 08:26 Uhr
Morgen

im Header des Dokumentes beim öffnen der Datei steht der direkte Pfad zu der z.B. xls-Datei (Server/Dateipfad/Datei.xls).

Da MediaWiki alles auf verschiedene php-Dateien verteilt hätte ich jetzt auf anhieb keine Ahnung welche Datei ich da editieren sollte damit die von mir gewünschte Funktion funktioniert. Auf anhieb würde ich tippen, dass es die folgende php-Datei ist von der ich dir mal den Quelltext hier rein kopiere:

<?php

/
    • This file contains the main include file for the FileProtocolLinks extension of
    • MediaWiki. This code is released under the GNU General Public License.
    • As I am new to php the code for this plugin was taken from the XFNLinks Plugin.
    • Thanks to Travis Swicegood for his work.

    • @author Edmund Mielach <edmund.mielach@s.roteskreuz.at>
    • @copyright Copyright 2005, Edmund Mielach
    • @license http:opensource.org/licenses/gpl-license.php GNU Public License
    • @package MediaWikiExtensions
    • @version 0.2
*/

/

    • Register the FileProtocolLinks extension with MediaWiki
    */
    $wgExtensionFunctions[] = 'registerFileProtocolLinks';

    /
      • Sets the tag that this extension looks for and the function by which it
      • operates
    */
    function registerFileProtocolLinks()
    {
    global $wgParser;
    $wgParser->setHook('file', 'renderFileProtocolLink');
    }


    /

      • Renders a file protocol link based on the information provided by $input.
      • @param string
      • The string should be in the following format:
      • URI[;link text]
      • One example for a Windows environment would be:
      • c:/something.txt|some nice text
      • @return string
      • Returns an anchor tag for the given input. For the example above
      • the return string would be
      • <a style="color:green" href="file:///c:/something.txt“>some nice text</a>
      • The links are rendered in green text color to make it easier to recognize
      • them as local shares.
    */
    function renderFileProtocolLink($input)
    {
    $exploded = explode('|', $input);
    $uri = htmlentities($exploded[0], ENT_COMPAT, "UTF-8");

    if (!isset($exploded[1]) || empty($exploded[1])) {
    no linktext has been specified ==> use the URI as linktext
    $linktext = $uri;
    }
    else {
    $linktext = htmlentities($exploded[1], ENT_COMPAT, "UTF-8");
    }

    return sprintf('<a style="color:green" href="file:
    /%s">%s</a>',
    $uri, $linktext);
    }

    #credits for [[Special:Version]]
    $wgExtensionCredits['parserhook'][] = array(
    'name' => 'FileProtocolLinks',
    'author' => 'Edmund Mielach',
    'description' => 'highlights links to local filesystem',
    'url' => 'http://www.mediawiki.org/wiki/Extension:FileProtocolLinks'");
    ?>

    Ich hoffe dieser Quelltext hilft etwas, ansonsten schaue ich nochmal welche Dateien sonst noch so dafür verwendung finden könnten.

    Grüße

    Xenome
Bitte warten ..
Mitglied: nxclass
08.09.2011 um 11:34 Uhr
im Header des Dokumentes beim öffnen der Datei steht der direkte Pfad zu der z.B. xls-Datei (Server/Dateipfad/Datei.xls).
ich meinte was anderes - den Mime Type der im Response-Header des Servers steht. Es kann sein, dass dein Server da noch nicht richtig konfiguriert ist.

http://httpd.apache.org/docs/current/mod/mod_mime.html
http://httpd.apache.org/docs/current/mod/mod_mime_magic.html

EDIT: wenn du die Mod nicht installieren kannst:
erstelle eine php Datei: (dl.php)
01.
<?php 
02.
define( 'ROOT_PATH', realpath('.').'/' ); 
03.
if (!empty($_GET['file'])) { 
04.
    $file =  ROOT_PATH . preg_replace('/.*\//', '', $_GET['file']); 
05.
    if (file_exists($file)) { 
06.
        $pathinfo = pathinfo($file); 
07.
        switch ($pathinfo['extension']) { 
08.
            case 'doc': 
09.
            case 'xls': 
10.
                header('Content-Type: application/'.$pathinfo['extension']); 
11.
                break; 
12.
            // usw. 
13.
            default: 
14.
                header('Content-Type: application/octet-stream'); 
15.
16.
        header('Content-Disposition: attachment; filename='.$pathinfo['basename']); 
17.
        header('Content-Length: ' . filesize($file)); 
18.
        readfile($file); 
19.
20.
21.
exit; 
22.
?>
und benutze 'dl.php?file=DieDatei.xls' im Link.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
Mehr als 20 Excel Dateien öffnen gleichzeitig (7)

Frage von PizzaPepperoni zum Thema Microsoft Office ...

Visual Studio
gelöst Windows Form Dateien aus Ordner auflisten "dir" und per button öffnen (5)

Frage von Pilger83 zum Thema Visual Studio ...

Windows 10
Probleme beim öffnen von großen Powerpoint Dateien mit Windows 10 (7)

Frage von Schlafwvndler zum Thema Windows 10 ...

Windows 8
PDF Dateien öffnen sich nicht (3)

Frage von andywolf zum Thema Windows 8 ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...