Hallo, Gast!
AnmeldenRegistrieren

[PHP]Syntax-Fehler - Weiß nicht weiter
#1
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
 
#2
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.
 
#3
Leider kommt dann folgende Fehlermeldung:

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

MfG,
Waluigi
 
#4
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
 
#5
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.