Novo

Forum kao aplikacija na telefonu

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

  • 3 odgovora
  • 3.201 pregleda

Najnovija ↓

PHP oop insert, update metodi 31.10.2013. u 15:48 · pre 158 meseci #1
Pozdrav ljudi, hteo bih da napravim klasu koju bih koristio kasnije za svoje projekte a koja bi komunicirala sa mysql tabelama. Hteo bih da klasa bude fleksibilna, da mogu primenjivati sa malim izmenama u drugim projektima. Naime, ja sam napravio jednu, ali imam problem sa insert i update metodama. Kod inserta dobijem error
Code:
Duplicate entry '' for key 3
.
Dok kod update mi uradi izmenu svih polja, ali ne bi trebalo to. Prvo u klasi imam niz u kome upisem polja tabele sa kojom ce klasa raditi. Zbog koriscenja svih polja koja se nalazi u tom nizu imam te probleme. Kod inserta mi se preklapa id sa poslednjim id-om, a update radi kako sam vec opisao.

Code:
public function update() {
        global $database;
        $atributes = $this->cistiAtributi();
        
        $atributePairs = array();
        foreach ($atributes as $key => $value) {
            $atributePairs[] = "{$key}='{$value}'";
        }
        $sql = "UPDATE ". self::$nazivTabele ." SET ";
        $sql .= join(", ", $atributePairs);
        $sql .= " WHERE org_id =" . $database->escapeValue($this->org_id);
        $database->query($sql);
        return ($database->affectedRows() == 1) ? true : false;

    } //kraj update

          public function create() {
        global $database;
        $atributes = $this->cistiAtributi();
        $sql = "INSERT INTO " . self::$nazivTabele . " (";
        $sql .= join(", ", array_keys($atributes)) .  ") ";    
        $sql .= "VALUES ('";
        $sql .= join("', '", array_values($atributes));
        $sql .= "') ";
        if ($database->query($sql)) {
            $this->org_id = $database->insertedID();
            return true;
        
        } else {
            return false;
        }
    } //kraj create

to su metodi, moze li mi neko dati sugestiju kako bih trebao to uraditi?
Re: PHP oop insert, update metodi 04.11.2013. u 22:33 · pre 158 meseci #2
Sto se inserta i preklapanja id-a tice, provjeri da li ti je org_id polje autoincrement.

Ovo za update nisam razumio sta hoces da ti klasa radi? Ako hoces da updejtujes samo neku kolonu, onda proslijedi samo nju, a ne sve.
Re: PHP oop insert, update metodi 21.11.2013. u 01:01 · pre 157 meseci #3
Nema potrebe da se mučiš i da ponovo izmišljaš točak, to ti sve elegantno rešeno u CakePHP framework-u.
Re: PHP oop insert, update metodi 22.11.2013. u 14:22 · pre 157 meseci #4
Rijeseno je to u svakom frameworku, samo sto covjek vjerovatno uci pa hoce da napravi nesto svoje. Ako mu je cilj samo da ima nesto sto radi, onda naravno nek uzme neki framework i fura po tome.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme