Autor Zpráva
hitny14
Profil *
Ahoj dělám registraci uživatelu poporví pomocí PDO a notORM A nějak mi to nefunguje.

$zapis = $db -> uzivatele() -> insert(array('login' => $data['login'], 'pass' => $pass_md5, 'email' => $data['email'], 'jmeno' => $jmeno, 'prijmeni' => $prijmeni,));

Takhle vypadá zápis do tabulky. prosím poraďte mi někdo.
Monkeys
Profil *
hitny14:
Ta ciarka na konci pola nema byt.

M.
juriad
Profil
Monkeys:
Ta čárka ničemu nevadí.
Having a trailing comma after the last defined array entry, while unusual, is a valid syntax.
Hitny14
Profil *
A jak by to teda mělo vypadat?
breeta
Profil
Tak snad ti to vyhodí nějakou chybu nebo ta chyba je nějak mi to nefunguje ?
Hitny14
Profil *
Vše proběhne v pořádky jen se data nezapíšou!
breeta
Profil
Máš aktivní v PHP display errors? Zapsal jsi něco jiného do databáze už v NotORM?
Pošli celý kod jak to zapisuješ a vyexportuj strukturu databáze ...
hitny14
Profil *
připojení:

<?php

    $config = array(
        "host" => "localhost",
        "user" => "root",
        "pass" => "",
        "name" => "administrace",
    );


    require_once 'NotORM.php';
    
    $dns = sprintf("mysql:host=%s;dbname=%s", $config["host"], $config["name"]);
        $pdo = new PDO($dns, $config["user"], $config["pass"]);
            $db = new NotORM($pdo);

registrace:

<?php
                      error_reporting(E_ALL ^ E_NOTICE);
                    $data = array(
                      'login' => $_POST['login'],
                      'pass' => $_POST['pass'],
                      'pass2' => $_POST['pass2'],
                      'email' => $_POST['email'],
                      'jmeno' => $_POST['jmeno'],
                      'prijmeni' => $_POST['prijmeni'], 
                      );

                  if (isset($_POST['send'])) 
                    {
                      if ($data['login'] == "" or $data['pass'] == "" or $data['email'] =="") 
                      {

                        ?>
                          <div class="alert alert-error">
                            <strong>Pozor!</strong> Nejsou vyplněny povinné údaje.
                          </div>
                        <?php

                      }
                      else
                        {

                          $sql_select = "SELECT * FROM uzivatele WHERE login = ".$data['login']." OR email = ".$data['email'];
                            $query = mysql_query($sql_select);
                              $result = mysql_result($query, 0);
                             // $kontrola=mysql_result(mysql_query("SELECT * FROM `uzivatele` WHERE `login`='$login' OR `email`='$email'"), 0);

                          if ($result != 0) 
                            {

                              ?>
                                <div class="alert alert-error">
                                  <strong>Pozor!</strong> Zadané uživetelské jméno nebo email je již použit.
                                </div>
                              <?php

                            }
                            elseif ($data['pass'] != $data['pass2']) 
                            {
                              
                              ?>
                                <div class="alert alert-error">
                                  <strong>Pozor!</strong> Zadané hesla se neschodují.
                                </div>
                              <?php 

                            }
                            else
                              {
                                $pass_md5 = md5($data['pass']);

                                  if ($data['prijmeni'] == "") 
                                    {
                                      $prijmeni = "";
                                    }

                                    elseif ($data['jmeno'] == "") 
                                      {
                                        $jmeno = "";
                                      }

                                  //$sql_insert = "INSERT INTO uzivatele (login, pass, email, prijmeni, jmeno, prava) VALUES ('$login', '$pass_md5', '$email', '$prijmeni', '$jmeno', '1')";

                                    //$vloz = mysql_query($sql_insert) or die(mysql_error());

                                      $zapis = $db -> uzivatele() -> insert(array('login' => $data['login'], 'pass' => $pass_md5, 'email' => $data['email'], 'jmeno' => $jmeno, 'prijmeni' => $prijmeni,));

                                    ?>
                                      <div class="alert alert-success">
                                        <strong>Hotovo!</strong> Registrace proběhla úspěšně. Můžete se <a href="index.php">prihlásit</a>.
                                      </div>
                                    <?php

                              }
                        }
                    }


                ?>

databaze:

CREATE TABLE `uzivatele` (
    `id` int(10) unsigned NOT NULL auto_increment,
    `uziv_jmeno` varchar(255) NOT NULL COLLATE utf8_czech_ci,   
    `heslo` varchar(255) NOT NULL,
    `email` varchar(255) NOT NULL COLLATE utf8_czech_ci,
    `jmeno` varchar(255) NOT NULL COLLATE utf8_czech_ci,
    `prijmeni` varchar(255) NOT NULL COLLATE utf8_czech_ci,
    `mesto` varchar(255) NOT NULL COLLATE utf8_czech_ci,
    `adresa` varchar(255) NOT NULL COLLATE utf8_czech_ci,
    `mobil` int(9) NOT NULL COLLATE utf8_czech_ci,
    `datum_narozeni` varchar(255) NOT NULL COLLATE utf8_czech_ci,
    `prava` int(10) unsigned NOT NULL DEFAULT '1', 
    PRIMARY KEY  (`id`),
    UNIQUE (`uziv_jmeno`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=0 ;

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: