php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.07.2008, 22:56  
Benutzer
 
Benutzerbild von IgelHaut
 
Registriert seit: 22.07.2008
Beiträge: 64
PHP-Kenntnisse:
Fortgeschritten
IgelHaut ist zur Zeit noch ein unbeschriebenes Blatt
Standard [Erledigt] "Parse error: syntax error, unexpected T_IF"- Fehler lösen

Hallo,
also ich bin eigentlich ein recht guter PHP Programmierer doch auf
einmal steht eine Fehlermeldung bei mir vor der Tür!

Der Code ist der hier:
PHP-Code:
$menu_user = if($_SESSIOON['user'] == ''){echo'Gast';}else{echo''.$SESSIOON['user'].'';}; 
Jetzt brauche ich ein Rat von anderen wie Löst man diese Fehlermeldung:

Parse error: syntax error, unexpected T_IF in /var/www/freehost-script/user_web/agent_x/MyHomepage/data/befehle.inc.php on line 12

Ich brauche unbeding eure Hilfe...
MfG IgelHaut

Geändert von IgelHaut (24.07.2008 um 09:46 Uhr).
IgelHaut ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.07.2008, 23:05  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Also dass du ein guter Programmierer bist bezweifel ich. Denn dann würdest du deinen Code einrücken.

PHP-Code:
<?php
$menu_user 
= if($_SESSIOON['user'] == '') { 
    echo 
'Gast';
} else {
    echo 
''.$SESSIOON['user'].'';
};
1. Wieso weist du $menu_user eine IF Abfrage zu? Sowas hab ich auch noch nie gesehen.
2. Ich hab noch nie $_SESSIOON gesehen! Ich glaub du meinst eher $_SESSION.
3. die beiden leeren Strings um die Ausgabe sind total unnötig.
4. $SESSIOON hab ich ebenfalls noch nicht gesehen, ich denke da hast du wieder ein _ vergessen und falsch geschrieben.
5. Hast du einen Strichpunkt hinter der IF Abfrage, soll wohl zur Zuweisung gehören.

Also in 5 Zeilen Code 5 so gravierende Fehler zu verpacken, Respekt dann noch zu behaupten du wärst ein guter PHP Programmierer.
Flor1an ist offline  
Alt 22.07.2008, 23:06  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Hallo und wilkommen auf php.de,

du kannst hinter eine Zuweisung nicht einfach ein if-Statement setzen.
Überhaupt, mir ist nicht ganz klar was du da bezweckst: eine Ausgabe (echo) oder eine Zuweisung?

Eine Zuweisung könnte so mit dem ternären Operator klappen:
PHP-Code:
$menu_user = isset($_SESSION['user']) ? 'User' 'Gast'
Bitte beachte: sowas kann schnell unlesbar werden

Siehe Manual: PHP: Comparison Operators - Manual
__________________
Today you...Tomorrow me.
agrajag ist offline  
Alt 22.07.2008, 23:16  
Benutzer
 
Benutzerbild von IgelHaut
 
Registriert seit: 22.07.2008
Beiträge: 64
PHP-Kenntnisse:
Fortgeschritten
IgelHaut ist zur Zeit noch ein unbeschriebenes Blatt
Standard

das mit der ausgabe das wusste ich nicht so richtig aber das andere sind Tippfehler denn habe den Code fürs Forum etwas umgestellt:
PHP-Code:
$user $_SESSION['user'];
$menu_user = if($user == ''){echo'Gast';}else{echo $user;}; 
und was meinste mit punkt 5?

@agrajag
also es soll so sein das wenn der User nicht eingeloggt ist das er dann Gast heißt!!!
Also ich denke schon das es dann eine Zuweisung wird[oder?].

Geändert von IgelHaut (22.07.2008 um 23:20 Uhr).
IgelHaut ist offline  
Alt 22.07.2008, 23:19  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Du kannst in einer Zuweisung keine IF Abfrage schreiben. Möchtest du das '' oder Gast IN $menu_user steht? Dann brauchst du sowas:

PHP-Code:
<?php
$user 
$_SESSION['user'];
if (
$user == '') {
    
$menu_user 'Gast';
} else {
    
$menu_user $user;
}
Flor1an ist offline  
Alt 23.07.2008, 13:06  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

Es muss ein "Tutorial" geben, welches lehrt, dass Arrayausgaben mit leeren Strings einzurahmen snd. Dieses Dingens:

echo "" . $dies['das'] . "";

hab ich in Foren-Code schon sehr oft gesehen.
Wolla ist offline  
Alt 23.07.2008, 13:08  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Zitat:
Zitat von Wolla Beitrag anzeigen
Es muss ein "Tutorial" geben, welches lehrt, dass Arrayausgaben mit leeren Strings einzurahmen snd. Dieses Dingens:

echo "" . $dies['das'] . "";

hab ich in Foren-Code schon sehr oft gesehen.
... und ist total überflüssig und ohne jede Sinn.
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 23.07.2008, 13:12  
Benutzer
 
Benutzerbild von IgelHaut
 
Registriert seit: 22.07.2008
Beiträge: 64
PHP-Kenntnisse:
Fortgeschritten
IgelHaut ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke für die Lösung des Problems,
hab den Code, wie es agrajag beschrieben hatt, geschrieben und es geht...
Ich wusste nicht das if-Schleifen in Zuweisungen nicht stehen dürfen ansonsten war allses richtig[bis auf die $_SESSION[''] Tippfehler].
Aber könntet ihr mir vielleicht noch erklären wie das mit den ternären Operatoren geht
PHP-Code:
$menu_user = isset($_SESSION['user']) ? 'User' 'Gast'
?


MfGa IgelHaut

Geändert von IgelHaut (23.07.2008 um 13:21 Uhr).
IgelHaut ist offline  
Alt 23.07.2008, 13:40  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Wolla Beitrag anzeigen
Es muss ein "Tutorial" geben, welches lehrt, dass Arrayausgaben mit leeren Strings einzurahmen snd. Dieses Dingens:

echo "" . $dies['das'] . "";

hab ich in Foren-Code schon sehr oft gesehen.
Wenn alle sich gegenseitig einen Quatsch abschreiben, heisst das noch lange nicht, dass es richtig ist

Zitat:
Zitat von IgelHaut Beitrag anzeigen
Aber könntet ihr mir vielleicht noch erklären wie das mit den ternären Operatoren geht
Ganz einfach
Code:
bedingung ? ausdruck1 : ausdruck2;
Das heisst, wenn die Bedingung (reine Bedingung, ohne if oder so) wahr ist, gib Ausdruck1 zurück, sonst Ausdruck2
__________________
Gruss
L
lazydog ist offline  
Alt 23.07.2008, 13:51  
Benutzer
 
Benutzerbild von IgelHaut
 
Registriert seit: 22.07.2008
Beiträge: 64
PHP-Kenntnisse:
Fortgeschritten
IgelHaut ist zur Zeit noch ein unbeschriebenes Blatt
Standard

aha verstehe, aber
müsste dann der Code nicht so:
PHP-Code:
$menu_user = isset($_SESSION['user']) ? 'User' 'Gast'
sondern so heißen:
PHP-Code:
$menu_user = isset($_SESSION['user']) ? $_SESSION['user'] : 'Gast'
oder?
IgelHaut ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Fehler bei Versenden eines Formulars Dude23 PHP Tipps 2008 2 26.06.2008 18:28
[Erledigt] Fehler im Formular pev PHP Tipps 2008 8 26.06.2008 03:06
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
parse error: syntax error, unexpected t_if, syntax error, unexpected t_if, syntax error, unexpected t_if in, unexpected t_if, \bedingung ohne if\, syntax error wie lösen, parse error: syntax error, unexpected t_if in, hilfe parse error: syntax error, unexpected t_if

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:59 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum