<?php

if (!isset($_SESSION['cocktailsUser'])) {
    $request->redirect('signin');
}
require_once MODELS_INC . 'UserDAO.class.php';
use Transitive\Utils\Validation;
$user = UserDAO::getByLogin($_SESSION['cocktailsUser']->getLogin());
$formValidation = null;
if ($_POST) {
    $modified = false;
    Validation::trimForm(array('firstName', 'lastName', 'sex', 'email', 'birthDate', 'address', 'postalCode', 'city', 'phoneNumber'), $_POST);
    Validation::validateForm(array('firstName' => function ($value) {
        return !Validation::contains_numeric($value) ? true : 'Un prénom n\'a pas de chiffres ...';
    }, 'lastName' => function ($value) {
        return !Validation::contains_numeric($value) ? true : 'Un nom n\'a pas de chiffres ...';
    }, 'city' => function ($value) {
        return !Validation::contains_numeric($value) ? true : 'Une ville n\'a pas de chiffres ...';
    }, 'phoneNumber' => function ($value) {
        return !empty($value) && Validation::is_valid_phoneNumber($value) || $value == "" || empty($value) ? true : 'Numéro de téléphone non valide';
    }, 'email' => function ($value) {
        return Validation::is_valid_email($value) || $value == "" || empty($value) ? true : 'Mail non valide';
    }), $_POST);
    if (Validation::isFormValid()) {
        if ($_POST['firstName'] != $user->getFirstName()) {
            $user->setFirstName($_POST['firstName']);
            $modified = true;
        }
        if ($_POST['lastName'] != $user->getLastName()) {
            $user->setLastName($_POST['lastName']);
            $modified = true;
Ejemplo n.º 2
0
<?php

define('ROOT_PATH', dirname(__FILE__));
define('DATA_PATH', ROOT_PATH . '/data/');
define('MODELS_INC', ROOT_PATH . '/models/');
require 'transitive/Transitive.inc.php';
use Transitive\Utils\Database as Db;
use Transitive\Utils\Validation;
$formValidation = null;
if (isset($_POST['install'])) {
    Validation::trimForm(array('dbURI', 'dbPort', 'dbUser', 'dbName', 'tablePrefix'), $_POST);
    Validation::validateForm(array('dbPort' => function ($value) {
        return $value == '' || !empty($value) && $value != 0 && Validation::is_port_number($value) ? true : 'Le numéro de port doit être compris entre 1 et 65535';
    }, 'dbUser' => function ($value) {
        return $value == '' || !empty($value) && strlen($value) <= 16 ? true : 'Le nom d\'utilisateur ne doit pas dépasser 16 caractères';
    }, 'dbName' => function ($value) {
        return $value == '' || !empty($value) && strlen($value) <= 64 && !Validation::contains('.\\/\\', $value) ? true : 'Le nom de la base mySQL ne doit pas dépasser 64 caractères ou contenir "\\", "/" et "."';
    }), $_POST);
    if (Validation::isFormValid()) {
        $result = '';
        /* This function is only used for the install process so we define it here */
        function sqlExecute($queryString, $params = NULL)
        {
            try {
                $statement = DB::getInstance()->prepare($queryString);
                if ($params && is_array($params)) {
                    foreach ($params as $key => $param) {
                        $statement->bindValue($key, $param);
                    }
                }
                $statement->execute();