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

gelöst URL aus Adresszeile lesen

Frage Entwicklung PHP

Mitglied: DeeDee0815

DeeDee0815 (Level 1) - Jetzt verbinden

04.07.2006, aktualisiert 16.01.2007, 7289 Aufrufe, 6 Kommentare

Hallo,

Ich möchte mir PHP die URL aus der Adresszeile auslesen. Nicht die komplette URL, sondern nur den Dateinamen des aktuellen Skriptes. Allerdings mit GET-Parametern. Das hat folgenden Sinn: Bei der Seite, an der ich gerade arbeite, gibt es ein Loginsystem. Wenn man eingeloggt ist, erscheint ein Link zum ausloggen. Er verweist auf index.php?section=startpage&content=dealout. Klickt man auf ihn, ist man ausgeloggt und bekommt eine entsprechende Meldung. Der Link zum ausloggen ist aber noch vorhanden, da er bevor die Session "zerstört" wird ausgegeben wird. Ich möchte mit einer IF-Schleife überprüfen, ob die Auslog-Seite aufgerufen wurde, und nur wenn das nicht der Fall ist den Link anzeigen.

Das habe ich schon probiert:

if(isset($_SESSION['blablabla']) AND trim($_SERVER['PHP_SELF']) != ("index.php?section=startpage&content=dealout")) [

echo("<div style=\"float:right;text-align:right;padding:10px;\"><a class=\"link\" href=\"index.php?section=startpage&amp;content=dealout\">Sitzung beenden</a></div>\n");

]


-> Die Ausgabe dieser Variable ist aber nur das Stammverzeichnis und der Dateiname ohne Parameter


if(isset($_SESSION['blablabla']) AND trim($_SERVER['argv']) != ("index.php?section=startpage&content=dealout")) [

-> Die Ausgabe dieser Variable ist aber nur das Wörtchen 'Array'.

Was habe ich für möglichkeiten, um dieses Problem zu lösen?
DeeDee0815
Mitglied: Guenni
04.07.2006 um 21:02 Uhr
@DeeDee0815

Hi,

der Scriptname wird z.B. in $_SERVER["SCRIPT_NAME"] gespeichert.

Leg' mal eine Datei an mit dem Inhalt phpinfo();.

Wenn du diese Datei aufrufst, werden dir unten alle Servervariablen
aufgelistet und noch mehr.

Gruß
Günni
Bitte warten ..
Mitglied: EvilMoe
04.07.2006 um 21:23 Uhr
Die parameter kannste so ausgeben

01.
foreach($_SERVER['argv'] as $parameter) echo $parameter
02.
 
03.
//ich würds dann so machen 
04.
foreach($_SERVER['argv'] as $wert) $para .= $wert
05.
 
06.
//so hätte ich dann alle parameter in $para
Bitte warten ..
Mitglied: NaCkHaYeD
06.07.2006 um 06:59 Uhr
Hi,

warum machst du es so kompliziert. Wenn jemand eingeloggt ist oder nicht, siehst du doch an einer Datenbank oder einer Session Variable, je nach deiner Umsetzung.

Wenn er erfolgreich eingeloggt wurde, setzt du eine Session Variable, wenn er ausgeloggt wurde löscht du diese. Somit weisst du, wann er eingeloggt ist oder nicht.

Ich handhabe es so, dass ich die session_start() Variable in der Datenbank ablege und in einer Session Variable. Bei jeden Aufruf einer Internen Seite, wird geprüft ob diese Variable mit dem Usereintrag in der Datenbank übereinstimmt, wenn nicht gleich mal löschen. Bei jeder Prüfung wird in der DB ein Timestamp gesetzt und erneuert. Ist der Timestamp älter als xxx-Sekunden, wird der User ausgeloggt.

mfg
Thomas
Bitte warten ..
Mitglied: DeeDee0815
07.07.2006 um 18:14 Uhr
@Günni
Wenn meine Datei phpdatei.php heißt und mit dem parameter section=bla&nochwas=unsinn also phpdatei.php?section=bla&nochwas=unsinn in der Adresszeile steht, gibt diese Variable nur den Dateinamen aus: phpdatei.php. Das nützt mir nichts.

@EvilMoe
Vielen Dank für die Lösung des Problems.

@NaCkHaYeD:
Natürlich überprüfe ich mit einer Sessionvariable, ob jemand eingeloggt ist, oder nicht. In der Index.php wird ganz oben die Session gestartet. Loggt man sich ein, werden die Sessionvariablen gesetzt. In der Index.php wird vor dem Ausgeben des eingentlichen Inhalts anhand der Sessionvariablen überprüft ob man eingeloogt ist, und entsprechend ein Link zum Ausloggen in den Inhaltsteil ausgegeben. Wenn sich jemand ausloggt, wird der Link zu ausloggen ausgegeben, bevor die Sitzung beendet wird. Das liegt daran, dass eine PHP-Datei zum ausloggen includet wird.
Das habe ich aber eigentlich oben schon geschrieben.



Gruß
DeeDee0815
Bitte warten ..
Mitglied: 17735
24.10.2006 um 14:07 Uhr
Hallo,

nachträglich nochmal: Das ganze erreicht man mit $_SERVER["REQUEST_URI"], also z. B. default.php?section=article&id=123

Gruß,
Ahnenforscher
Bitte warten ..
Mitglied: EvilMoe
16.01.2007 um 17:17 Uhr
01.
echo $_SERVER['QUERY_STRING'];
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Firewall
Palo Alto PA-200 URL Filtering

Frage von Yannosch zum Thema Firewall ...

Webbrowser
DNS Problem in Browsern - Suche in Adresszeile (5)

Frage von tobivan zum Thema Webbrowser ...

Administrator.de Feedback
Bug? "m f g" (ohne Leerzeichen) wird auch in URL ersetzt (5)

Frage von emeriks zum Thema Administrator.de Feedback ...

Exchange Server
gelöst SBS 2008 (Exchange 2007 SP3) - externe URL ändern - neues Zertifikat (8)

Frage von Ezekiel666 zum Thema Exchange Server ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...