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

include Seite sperren

Frage Entwicklung PHP

Mitglied: escape

escape (Level 1) - Jetzt verbinden

21.05.2006, aktualisiert 31.07.2006, 5677 Aufrufe, 8 Kommentare

Servus @all

Ich habe einige Seiten mit Include gemacht.
Nun ist das Problem, dass wen einer eine Unterseite direkt aufruft, er kein Haeder oder footer hat auch die ganze css fehlen. (normal, da es sich hierbei nur im die Informationsseite handelt, die includet werden)

Der Link sieht in etwa so aus:

http://www.meinhost.de/inline.php?seite=club/vorstand.php

ein ganz schlauer könnte ja (oder auch über goggle) das eingeben:

http://www.meinhost.de/club/vorstand.php

das Problem ist dann eben das oben beschriebene... Wie kann ich das Lösen, dass wenn jemand auf so einer Unterseite zugreift, er automtisch zur Startseite:

http://www.meinhost.de/inline.php umgeleitet wird? Was muss in der vorstand.php stehen?

Besten Dank für jede Hilfe schon im voraus
escape
Mitglied: Dani
21.05.2006 um 17:59 Uhr
Legt doch einfach in den Ordner "club" eine .htaccess Datei an. Somit kann direkt nicht drauf zugreifen sondern nu indirekt.

01.
AuthName "test" 
02.
AuthType Basic 
03.
require valid-user
Andere Möglichkeit wäre, dass du irgendwie ne Variable setzt und dann auf jeder Seite schaust, ob es diese noch gibt.



Gruß
DAni
Bitte warten ..
Mitglied: filippg
21.05.2006 um 18:04 Uhr
Hallo,

eine etwas "dreckige" Lösung: setze in der inline.php als erstes eine bestimmte Variable. In jeder include-Datei fragst du als erstes ab, ob diese Variable gesetzt ist, wenn nicht leitest du halt um an die inline.php.
Sauber wäre eine Lösung über den Dateispeicherort: Dateien, die aus dem Internet nicht direkt abrufbar sein sollen, solltest du auch so ablegen, dass das nicht geht. Also nicht in einen Unterordner von htdocs legen (sofern du auf dem Server die Möglichkeit dazu hast) oder eben Lesezugriff nur für PHP-Interpreter erlauben, nicht für Webserver (was aber auch nicht immer möglich ist).

Filipp

EDIT: Ups, da hätte ich zwischendurch nochmal nue laden sollen, hat sich meine Antwort mit Danis überschnitten.
Bitte warten ..
Mitglied: Dani
21.05.2006 um 18:08 Uhr
Du könnest auch den $URL auslesen, die der Benutzer aufgerufen hat, und wenn dort z.b. club/ vorkommt, eine weiterleitung.


Gruß
Dani
Bitte warten ..
Mitglied: escape
21.05.2006 um 18:36 Uhr
Danke allen für die schnelle Antwort

Ich versteh was ihr meint, jedoch haperts bei mir mit der Umsetzung.

Vorschlag1
Mit .htaccess möchte ich nicht arbeiten, denn somit ist eine Weiterleitung nicht möglich, der User der z.b via Suchmaschine kommt ist dann aufgeschmissen.

Vorschlag2
1. kann leider nicht ausserhalb von htdocs speichern

Wie geht das:
2. Lesezugriff nur für PHP-Interpreter erlauben, nicht für Webserver
3. Könntest du mir nicht den Code für die "dreckige" Lösung geben. Wo muss ich was einbinden?


Vorschlag3
Das Auslesen mit $URL nützt nichts, denn das Verzeichnsi Club ist ja auch bei einer direkten eingabe immer vorhaden:
http://www.meinhost.de/club/vorstand.php

Gruss
Bitte warten ..
Mitglied: Dani
21.05.2006 um 18:47 Uhr
Hi,
Vorschlag3
Das Auslesen mit $URL nützt nichts,
denn das Verzeichnsi Club ist ja auch bei
einer direkten eingabe immer vorhaden:
http://www.meinhost.de/club/vorstand.php
Das schon, aber wenn du immer nach einem "/" aufteilst, steht club immer in einem anderen Feld.


Gruß
DAni
Bitte warten ..
Mitglied: Guenni
23.05.2006 um 12:14 Uhr
@escape

Hi,

du hast doch in die Datei inline.php sicherlich noch andere
Dateien per include oder z.B. deine *.css ? Datei mittels
<link rel="stylesheet" type="text/css" href="inc/style.css"> eingebunden.

Dann prüfe in den Dateien, die eingebunden werden, doch einfach, ob z.B.
die Datei style.css(oder wie sie bei dir heißt) existiert.

if(!file_exists("inc/style.css")){
header("location: ../index.php");
}

Gruß
Günni
Bitte warten ..
Mitglied: escape
23.05.2006 um 12:36 Uhr

Günni is the best !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Danke viel mals genau dass brauchte ich!
Bitte warten ..
Mitglied: escape
31.07.2006 um 23:17 Uhr
Servus alle
Wie bereits am 23.05.2006 geschrieben, geht alles. Nun bin ich auf einem neuen Server umgezogen und schon kommen die Problemen.

Ich erhalte nun diese Fehlermeldung:

Warning: Cannot modify header information - headers already sent by (output started at /home/httpd/vhosts/meinserver.ch/httpdocs/inline.php:9) in /home/httpd/vhosts/meinserver.ch/httpdocs/club/vorstand.php on line 3

der Eintrag in der Vorstand.php lautet so:


1. <?PHP
2. if(!file_exists("/css/style.css")){
3. header("location: /inline.php?includ=index.php");
4. }
5. ?>


muss hier echt noch eine else oder so Abfrage rein ? und wenn ja wie muss das ganze aussehen. Komischerweise ging das aber auf dem alten Server...
Besten Dank für die Hilfe
escape

Nachtrag:

Ich habe nun das zum Test so gemacht:

<?php
$filename = '/css/style.css';

if (file_exists($filename)) {
print "ok";
} else {
print "no";
}
?>

das Problem ist nun, es kommt immer o.k denn das File ist ja dort gelagert, aber eben es wird ja nicht geladen wenn man die vorstand.php direkt aufruft, und das sollte doch überprüft werden.
Kurzum er überprüft nur ob das File vorhanden ist, nicht ob es geladen wurde und das will ich ja
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Windows Netzwerk
gelöst Proxy Settings sperren (2)

Frage von joehuaba zum Thema Windows Netzwerk ...

HTML
Captive Portal login Seite (2)

Frage von gansa28 zum Thema HTML ...

Windows Installation
gelöst Portabel Apps erkennen oder sperren (5)

Frage von joehuaba zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

Exchange Server
DNS Einstellung - zwei feste IPs für Mailserver (15)

Frage von ivan0s zum Thema Exchange Server ...