Beispiel #1
0
 /**
  * Update author with new data
  *
  * @param  $id arrray $attributes
  * @return null
  */
 public function doUpdate($id, array $attributes = [], array $options = [])
 {
     $validator = $this->getValidator($attributes);
     if (!$validator->validate()) {
         $messages = [];
         foreach ($validator->errors() as $fieldName => $errors) {
             $messages[] = current($errors);
         }
         $message = implode("\n", $messages);
         throw new \Exception($message);
     }
     $one = PdoLite::filterBySchema("authors", $attributes);
     return self::update("authors", ['fl' => $one, 'where' => "id=" . $id]);
 }
<?php

// DIC configuration
$container = $app->getContainer();
//use Lib\MVC4Slim\PdoLite;
use PdoLite\PdoLite;
use Lib\MVC4Slim\TwigExtension;
// Database
$container['pdolite'] = function ($c) {
    /*
    $settings = $c->get('settings')['pdolite'];
    $conn = PdoLite::dbConnect($settings['dsn'],$settings['username'],$settings['password']);
    */
    PdoLite::$cfg = $settings = $c->get('settings')['pdolite'];
    $conn = PdoLite::dbConnect($settings['dsn'], $settings['username'], $settings['password']);
    return $conn;
};
$container['pdo'] = function ($c) {
    $settings = $c->get('settings')['pdo'];
    print_r($settings);
    $conn = new PDO($settings['dsn'], $settings['username'], $settings['password']);
    echo "<br />Connect Info: ";
    print_r($conn);
    return $conn;
};
$container['capsule'] = function ($c) {
    $capsule = new Illuminate\Database\Capsule\Manager();
    $capsule->addConnection($c['settings']['db']);
    return $capsule;
};
// View
Beispiel #3
0
 public static function update($tname, $options = array())
 {
     try {
         return PdoLite::exec(self::qbUpdate($tname, $options));
     } catch (PDOException $e) {
         die(self::dbError($tname));
     }
 }
Beispiel #4
0
<?php

include 'src\\pdolite.php';
use PdoLite\PdoLite;
if (file_exists("settings.php")) {
    include "settings.php";
} else {
    include "settings-dist.php";
}
PdoLite::$cfg = $cfg;
defined('PDOLITE_DB_DSN') or define('PDOLITE_DB_DSN', PdoLite::$cfg['dsn']);
defined('PDOLITE_DB_USER') or define('PDOLITE_DB_USER', PdoLite::$cfg['dbuser']);
defined('PDOLITE_DB_PASS') or define('PDOLITE_DB_PASS', PdoLite::$cfg['dbpass']);
$db = new PdoLite();
$db->dbConnect(PdoLite::$cfg['dsn'], PdoLite::$cfg['dbuser'], PdoLite::$cfg['dbpass']);
$iArray = ['idx' => 0, 'name' => 'some name', 'biography' => 'some bio', 'csrf_name' => 'csrf1280394586', 'csrf_value' => 'ccf28ee0ddd73'];
// SUDI: select, update, insert, delete test case
echo "<p />rows2array-bef";
$db->pln($db->select("authors"), "select-bef");
$sqlUpdList = ['biography' => 'Suzanne Marie Collins is an American television writer and novelist, best known as the author of The Underland Chronicles and The Hunger Games trilogy'];
$db->pln($db->update("authors", ['fl' => $sqlUpdList, 'where' => 'id=1']), "update");
$fldList = ['name' => "t'est", 'biography' => "t'est insert"];
$db->pln($db->insert("authors", ['fl' => $fldList]), "insert");
$lastid = $db->getLastId("authors", "id");
$db->pln($db->select("authors", ['where' => "id={$lastid}"]), "RS of last insert: {$lastid}");
$db->pln($db->delete("authors", ['where' => "id={$lastid}"]), "deleted {$lastid}");
$db->pln($db->select("authors"), "select-aft");
echo "<br />rows2array-after";
// various select test case
$db->pln($db->select("authors", ['fl' => 'name', 'type' => 'both', 'where' => 'id=1']), "both-name", 'p');
$db->pln($db->select("authors", ['fl' => 'id, name,xid', 'where' => 'id=1']), "name,xid");