/** * This function performs the validation work for complex object models. * * In addition to checking the current object, all related objects will * also be validated. If all pass then <code>true</code> is returned; otherwise * an aggregated array of ValidationFailed objects will be returned. * * @param array $columns Array of column names to validate. * @return mixed <code>true</code> if all validations pass; array of <code>ValidationFailed</code> objects otherwise. */ protected function doValidate($columns = null) { if (!$this->alreadyInValidation) { $this->alreadyInValidation = true; $retval = null; $failureMap = array(); // We call the validate method on the following object(s) if they // were passed to this object by their corresponding set // method. This object relates to these object(s) by a // foreign key reference. if ($this->aPlayer !== null) { if (!$this->aPlayer->validate($columns)) { $failureMap = array_merge($failureMap, $this->aPlayer->getValidationFailures()); } } if ($this->aCourt !== null) { if (!$this->aCourt->validate($columns)) { $failureMap = array_merge($failureMap, $this->aCourt->getValidationFailures()); } } if (($retval = PlayerCourtPeer::doValidate($this, $columns)) !== true) { $failureMap = array_merge($failureMap, $retval); } $this->alreadyInValidation = false; } return !empty($failureMap) ? $failureMap : true; }
public function test_validate() { $player = new Player(); $player->name = ''; $this->assertFalse($player->validate()); $this->assertTrue($player->hasError()); $player->name = 'aa'; $this->assertFalse($player->validate()); $this->assertTrue($player->hasError()); $player->name = 'aaa'; $this->assertTrue($player->validate()); $this->assertFalse($player->hasError()); $player->name = '0123456789123456'; $this->assertTrue($player->validate()); $this->assertFalse($player->hasError()); $player->name = '01234567891234567'; $this->assertFalse($player->validate()); $this->assertTrue($player->hasError()); }
} if (!isset($session) or !$session->IsConnected()) { header('Location: index.php'); exit; } ?> <!-- MAIN SECTION --> <section class="main-section"> <div class="small-12 columns"> <div class="row"> <h4>joueur - <?php $player = new Player(); if (isset($_POST["id"])) { $player->initProperty($_POST["id"], $_POST["firstName"], $_POST["lastName"], $_POST["teamId"]); $player->PageMode = $_POST["pageMode"]; $player->validate($mySql); if (!$player->getHasError()) { if ($player->PageMode == Constants::PAGE_MODE_EDIT) { $player->update($mySql); } else { $player->addNew($mySql); } header('Location: player.php'); exit; } echo $player->getFullName(); } else { if (isset($_GET["id"])) { $player->initDB($_GET["id"], $mySql); echo $player->getFullName(); $player->PageMode = Constants::PAGE_MODE_EDIT;