Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

funkcija sa pozivom na bazu, u sledecim funkcijama

  • 3 odgovora
  • 2.955 pregleda

Najnovija ↓

funkcija sa pozivom na bazu, u sledecim funkcijama 01.07.2018. u 23:29 · pre 101 mesec
izmenjeno 1 put, poslednji put magrinjo 01.07.2018. u 23:44
  1. magrinjo01.07.2018. u 23:44zapis iz teksta poruke
#1
function dbConnect {
parametri za konekciju na bazu
}


function updateDB {
podaci gde se updateuju tabele iz baze
}


Ako u obzir uzmemo da su ovo funkcije, zeleo bih da "include-ujem" funkciju za konekciju baze, i koristim je u funkciji "updateDB", bez da i u njoj pisem parametre za konekciju.

Koji je najbezbolniji nacin?
(koristim proceduralni nacin)
Re: funkcija sa pozivom na bazu, u sledecim funkcijama 02.07.2018. u 14:03 · pre 101 mesec #2
Najbezbolniji nacin je da koristis klasu. Parametri za konekciju treba da se u nekom config ili ini fajlu.
Potpis
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
Re: funkcija sa pozivom na bazu, u sledecim funkcijama 02.07.2018. u 23:37 · pre 101 mesec
izmenjeno 1 put, poslednji put S A J A 03.07.2018. u 00:04
  1. S A J A03.07.2018. u 00:04zapis iz teksta poruke
#3
Evo kako sam ja to realizovao, imaš klasu za pristup bazi, samo sam malo uprostio, kod mene je to jo malo zabibereno:

Prvo stavi parametre za bazu negde de ti stoje podešavanja, recimo:

Code:
define('DB_HOST', 'localhost');
define('DB_NAME', 'imebaze');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');



Klasa za bazu može ovako da izgleda:

Code:
class db extends PDO {
    function __construct() {
        $params = array(
            PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
            PDO::ATTR_EMULATE_PREPARES => true);
 
        //database connection
        try {
            parent::__construct('mysql:host=' . DB_HOST . ';dbname=' . DB_NAME, DB_USERNAME, DB_PASSWORD, $params);
 
        } catch (PDOException $e) {
            $this->error($e);
        }
    }
 
    public function error($e) {
        http_response_code(500);
        echo 'DB Error: ' . $e->getMessage();
 
        //write DB error to PHP error log
        error_log('DB Error: ' . $e->getMessage() . "\n" . $e->getTraceAsString());
 
        die();
    }
 
}



Kasnije to u projektu koristiš sa:


Code:
$db = new db();
try {
    $stmt = $db->query('SELECT * FROM tabela');        
} catch (Exception $e) {
    $db->error($e);
}        
$data = $stmt->fetchAll();
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme