MyBB.de Forum

Normale Version: [PHP]Syntax-Fehler - Weiß nicht weiter
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallihallo,

Es geht um folgende Zeile:

PHP-Code:
function blaetterfunktion($seite,$maxseite,$url="index.php?site=newsarchiv".$HIER."",$anzahl=4,$get_name="newsarchiv")
{
...
}
... 

Ich möchte, da wo die Variable $url ist, hinter newsarchiv noch eine Variable anhängen. Ich hoffe mal ihr seht und könnt erahnen, was ich meine.

Die Variable $HIER wäre in dem Fall ja auch schon gesetzt.

Wäre sehr toll, wenn ihr mir helfen könntet.

Fehlermeldung:

Code:
Parse error: syntax error, unexpected '.', expecting ')'

MfG,
Waluigi
Hallo,
die "" hinter deinem $HIER sind zu viel.

PHP-Code:
function blaetterfunktion($seite$maxseite$url="index.php?site=newsarchiv".$HIER$anzahl=4$get_name="newsarchiv"

So würde ich es probieren. Hab es aber nicht getestet.
Leider kommt dann folgende Fehlermeldung:

Code:
Parse error: syntax error, unexpected '.', expecting ')'

MfG,
Waluigi
Das wird höchst wahrscheinlich so gehen:

PHP-Code:
function blaetterfunktion($seite,$maxseite,$url="index.php?site=newsarchiv",$anzahl=4,$get_name="newsarchiv"$HIER="")
{
$url.=$HIER;
...


Das $HIER="" bedeutet nur, dass wenn die Variable nicht übergeben wird, dass sie leer ist.
Ansonsten steht der Wert drinnen.

MfG Megaleecher
Veränderliche Zuweisungen in der Funktionsdeklaration (also speziell hier das Nutzen der Variablen $HIER) sind verboten, bei den default-Werten für die Parameter muss es sich um konstante Ausdrücke handeln (also zB nur ein einfacher String, wie Megaleecher schon andeutete).

Wenn du nun wirklich das $HIER mit als default-Wert haben willst, kannst du die Zuweisung "nachträglich" vornehmen:
PHP-Code:
function blaetterfunktion($seite$maxseite$url="default"$anzahl=4$get_name="newsarchiv")
{
    global 
$HIER// Damit der Wert von $HIER auch innerhalb der Funktion sichtbar wird
    
if ($url == 'default')
    {
        
$url "index.php?site=newsarchiv".$HIER;
    }

wobei für "default" ein Wert gewählt werden sollte, der niemals für $url angegeben werden wird (oder zum Beispiel ein leerer String). Entsprechend dann die if-Bedingung anpassen.