Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in

Der Code ab

PHP:
        // get the accessible tutorials categories

steht außerhalb einer Methode, oder? Das geht nicht.
 
Danke das dachte ich auch,aber egal wo der Code sitzt er meckert wegen diesem.
PHP:
$labelGroupIDs = TutorialsCategoryCache::getInstance()->getLabelGroups($this->category->categoryID);
Immer noch rum,darin muss ich einen Fehler haben.
 
PHP:
/**
	 * @see	\wcf\form\IForm::readFormParameters()
	 */
	public function readFormParameters() {
		parent::readFormParameters();
		if (isset($_POST['enableDelayedPublication'])) $this->enableDelayedPublication = intval($_POST['enableDelayedPublication']);
		if (isset($_POST['publicationDate'])) $this->publicationDate = $_POST['publicationDate'];
		if (isset($_POST['enableAutomaticArchiving'])) $this->enableAutomaticArchiving = intval($_POST['enableAutomaticArchiving']);
		if (isset($_POST['archivingDate'])) $this->archivingDate = $_POST['archivingDate'];
        if (isset($_POST['labelIDs']) && is_array($_POST['labelIDs'])) $this->labelIDs = $_POST['labelIDs'];
		if (isset($_POST['teaser'])) $this->teaser = StringUtil::trim($_POST['teaser']);
		if (isset($_POST['tags']) && is_array($_POST['tags'])) $this->tags = ArrayUtil::trim($_POST['tags']);
		if (isset($_POST['isHot'])) $this->isHot = intval($_POST['isHot']);

		// read available label groups
                $labelGroupIDs = TutorialsCategoryCache::getInstance()->getLabelGroups($this->category->categoryID);
		if (!empty($labelGroupIDs)) {
			$this->labelGroups = LabelHandler::getInstance()->getLabelGroups($labelGroupIDs, true, 'canViewLabel');
			
			if (isset($_REQUEST['labelIDs']) && is_array($_REQUEST['labelIDs'])) {
				$this->labelIDs = $_REQUEST['labelIDs'];
				
				foreach ($this->labelIDs as $groupID => $labelID) {
					$isValid = false;
					
					// ignore zero-values
					if (!is_array($labelID) && $labelID) {
						if (isset($this->labelGroups[$groupID]) && $this->labelGroups[$groupID]->isValid($labelID)) {
							$isValid = true;
						}
						else if ($labelID == -1) {
							$isValid = true;
						}
					}
					
					if (!$isValid) {
						unset($this->labelIDs[$groupID]);
					}
				}
			}
		}
		
		// tutorials picture
		if (TUTORIALS_ENABLE_TUTORIALSPICTURE) {
			if (isset($_POST['pictureID'])) $this->pictureID = intval($_POST['pictureID']);
			$this->picture = new TutorialsPicture($this->pictureID);
		}

		// quotes
		MessageQuoteManager::getInstance()->readFormParameters();
	}
und wenn ich nun das da raus nehme ist der Fehler weg.
PHP:
$labelGroupIDs = TutorialsCategoryCache::getInstance()->getLabelGroups($this->category->categoryID);
 
Okay, das sieht syntaktisch korrekt aus. Was ist jetzt die Fehlermeldung? Immer noch dieselbe?

Fehlermeldung ist wohl (siehe oben):

Undefined property: tutorials\form\TutorialsAddForm::$category

Das heißt an der Stelle sicherlich einfach, dass $this->category nicht oder noch nicht existiert/gesetzt ist.

Das müsste man inhaltlich einordnen, also auf Basis eines Verständnisses des Sinns und der Abläufe des Codes. Dazu können wir hier nicht viel sagen, fürchte ich. Da fehlt Kontext/Einarbeitung.
 
Zuletzt bearbeitet:
Ja wenn dieser Teil enthalten ist.
PHP:
$labelGroupIDs = TutorialsCategoryCache::getInstance()->getLabelGroups($this->category->categoryID);
Ist die Fehlermeldung die selbe.
 
Zurück