include mit {
Jürgen
- php
hallo
ich will diese 2 zeile in ein include packen, also
session.php mit inhalt:
@session_start();
if ($_SESSION['rechte']=="Admin") {
wenn ich nun:
include("session.php");
kommt die fehlermeldung das:
Parse error: syntax error, unexpected '}' in D:\Inetpub\wwwroot\swisssonic\web\admin
d.h er erkennt das öffnen der klammer nicht
wenn ich aber die 2 zeilen in die datei schreibe
@session_start();
if ($_SESSION['rechte']=="Admin") {
ist alles ok.
Warum diese fehlermeldung?
wie kann ich das mit include lösen?
mfg juergen
Hi! ist es:
@session_start();
if ($_SESSION['rechte']=="Admin") {
ODER
if (){
}<-!!!??
hast du die } nicht vergessen?
MFG
bleicher
Hi! ist es:
@session_start();
if ($_SESSION['rechte']=="Admin") {ODER
if (){}<-!!!??
hast du die } nicht vergessen?
das schliesen der klammer habe ich dann wieder in der datei }.
das oben ist ja nur das include, aber genau die schliesende } erkennt er jetzt als fehler an. d.h doch dann er erkennt das {} der klammern über ein include nicht an??
Gruß jürgen
Hallo
nochmal einfach dargestellt mein problem:
<?php
//test.php
include("include.php");
echo "test";
}
?>
und in clude.php steht:
if(1==1){
Warum geht das nicht?
Danke jürgen
Hallo
nochmal einfach dargestellt mein problem:<?php
//test.php
include("include.php");echo "test";
}
?>
und in clude.php steht:
if(1==1){Warum geht das nicht?
Danke jürgen
weil hier kein {-öffenndes element ist.
Zeig mal das ganze - bzw. alles außer den variblen etc. wenn du die nicht zeigen willst.
MFG
bleicher
Hallo
das ganze ist in nem riesenscript aber ich habe hier das problem reduziert
<?php
//test.php
include("include.php");echo "test";
}
?>
und include.php steht:
if(1==1){Warum geht das nicht?
Danke jürgenweil hier kein {-öffenndes element ist.
das { öffnende Klammer ist in der include datei und das } in der test datei [in der die include.php includiert wird] aber das geht nicht.reqire geht auch nicht.
Gruß jürgen
Hi,
anders gefragt: Warum willst du so einen Unsinn machen? Include dient dazu andere (mehr oder weniger in sich geschlossene) Programmteile hinzuzuladen und nicht seinen Code vollkommen wirr zu zerschneiden. Ich weiß nicht ob es theoretisch einen Weg gibt, das es geht die geschweiften Klammern über die Dateigrenzen hinweg zu öffnen, aber hoffe einfach mal, das es das nicht tut, weil es ganz großer Blödsinn ist sowas zu machen. Ich behaupte mal das es nicht eine einzige sinnvolle Anwendung für solch ein Konstrukt gibt. Bitte denk nochmal über die Planung deines Codes nach. Sowas ist definitiv nicht notwendig.
Marc
hallo
anders gefragt: Warum willst du so einen Unsinn machen?
z.b.
du hast eine login mit session, jetzt wird bei jedem weiterem script geprüft ob die session noch läuft und dann kommt das jeweilige script , und um diese session überprüfung auszulagern. na ist das kein gelungens bsp?
gruß jürgen
Hi,
na ist das kein gelungens bsp?
nö, nicht im geringsten ;) Um das zu realisieren gibt es Millionen verschiedener Methode. Eine wäre zum beispiel die Überprüfung in eine Funktion zu packen und diese komplett auszulagern.
include.php
function check_login(){
//Session überprüfen
return true bzw. false;
}
Script:
include("include.php");
if(check_login()){
echo "Alles klar";
}
Andere (wohl noch sinnvollere Methode) wäre die Überprüfung in deiner index.php drinne zu lassen und dann abhängig vom ergebniss der Überprüfung den Inhalt zu includen (musst dann allerdings aufpassen, das der Inhalt in einem Verzeichniss liegt, das nicht direkt vom Besucher aufgerufen werden kann)
Marc
du hast eine login mit session, jetzt wird bei jedem weiterem script geprüft ob die session noch läuft und dann kommt das jeweilige script , und um diese session überprüfung auszulagern. na ist das kein gelungens bsp?
Wie wärs mit der exit() Funktion, sprich Bedingung umkehren
if ($_SESSION['rechte']!="Admin") { echo"Keine Adminrechte"; exit(); }
Huhu
kommt die fehlermeldung das:
Parse error: syntax error, unexpected '}' in D:\Inetpub\wwwroot\swisssonic\web\admin
d.h er erkennt das öffnen der klammer nicht
Keineswegs.
Der Parser meldet eine unerwartete schließende Klammer.
D.h. Du hast einen öffnende Klammer zuwenig.
Oder eine schließende zuviel.
Das ist ein simpler Syntax-Error und hat nichts mit include() zu tun.
Benutze ggf. einen Editor der zugehörige Klammerpaare beim
Editieren optisch hervorhebt, das hilft ungemein solche Fehler zu minimieren.
Viele Grüße
lulu
hallo
kommt die fehlermeldung das:
Parse error: syntax error, unexpected '}' in D:\Inetpub\wwwroot\swisssonic\web\admin
d.h er erkennt das öffnen der klammer nichtKeineswegs.
Der Parser meldet eine unerwartete schließende Klammer.D.h. Du hast einen öffnende Klammer zuwenig.
genau den das heist ja es fehlt die öffnende { und ich vermute mal die öffnende klammer ist die in der include datei weil wenn ich den include text in die datei schreibe kommt keine fehlermeldung
gruß jürgen
echo $begrüßung;
ich will diese 2 zeile in ein include packen, also
@session_start();
if ($_SESSION['rechte']=="Admin") {wenn ich nun:
include("session.php");
kommt die fehlermeldung das:
Parse error: syntax error, unexpected '}' in D:\Inetpub\wwwroot\swisssonic\web\admin
d.h er erkennt das öffnen der klammer nicht
Das Parsen findet vor dem Ausführen statt. Der Inhalt der zu inkludierenden Datei ist während des Parsens noch nicht bekannt und kann deshalb nicht berücksichtigt werden. Daraus folgt, dass eine Anweisung nicht über mehrere Dateien verteilt werden kann.
echo "$verabschiedung $name";