Jump to content
php.lv forumi

Recommended Posts

Posted

Sveiki, nesaprotu ko daru nepareizi, pec pamācības no šīs lapas bet neiet!
 

session_start();
require_once '../../vendor/autoload.php';
require_once '../../private/db_config.php';
$uid = $_SESSION['uid'];
	
$user = ORM::for_table('users')->find_one($uid);
$user->username = $_POST['username'];
$user->location = $_POST['location'];
$user->email = $_POST['email'];
$user->gender = $_POST['gender'];
$user->save();

Pēc formas submitošanas man atgriež:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'id' in 'where clause'' in D:\Server\xampp\htdocs\vendor\j4mie\idiorm\idiorm.php:429 Stack trace: #0 D:\Server\xampp\htdocs\vendor\j4mie\idiorm\idiorm.php(429): PDOStatement->execute() #1 D:\Server\xampp\htdocs\vendor\j4mie\idiorm\idiorm.php(1828): ORM::_execute('SELECT * FROM `...', Array, 'default') #2 D:\Server\xampp\htdocs\vendor\j4mie\idiorm\idiorm.php(607): ORM->_run() #3 D:\Server\xampp\htdocs\public\process\updateProfile.php(13): ORM->find_one('3') #4 {main} thrown in D:\Server\xampp\htdocs\vendor\j4mie\idiorm\idiorm.php on line 429

Es tikai nesaprotu kur viņam ir unknown column id, jo lietotāja id viņš atpazīst find_one(3);

Posted (edited)

Izskatās, ka ja "findOne" funkcijai nepadod string'u, tad kā arguments tiek ņemts skaitlis un tiek izpildīts WHERE condition's "WHERE id = $uid".

Attiecīgi jāpaskatās dokumentācija kā būtu jābūt, lai "findOne" strādātu pēc tavas "u_id" kolonnas, nevis "id". Iespēhans "->findOne('uid = '. $uid)" vai tml.

Edited by waplet
Posted (edited)

Pēc loģikas, ja tas ir ORM, tad skaties tabulas klasē, tur jābūt iespējai nodefinēt id (primary_key) lauka vārdu

Edited by Kasspars
Posted

Kāpēc likt uid, ja tabula jau ir users? Sanāk to id divreiz apzīmēt kā "userim" piederošu, vienreiz ar tabulas nosaukumu, otrreiz ar kolonnas nosaukumu.

Posted

Jā, jo man ir uid (user id)

Un Idiorm pamatā neinteresē, kas tev ir, Idiorm par ID uzskata ID. Kā tu domā, ar kādas maģijas palīdzību tagad libam vajadzētu uzminēt, ka tu kā ID izmanto citādi nosauktu kolonnu? 

 

 

Plus vēl, viedoklis, kā bonusam - id kolonna ir jāsauc id. Ne uid, šmuid, druid, fagid, bet id. Perpetrators should be shot on sight. 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...