Sziasztok,
Egy számomra érthetetlen hiba jelent meg az egyik oldalamon a felhasználó létrehozásakor / regisztrációnál. Hogy pontosan mikor, nem tudom, mivel a felhasználók regisztrálhatnak, nem én hozok létre felhasználót, az felhasználóktól pedig nem érkezett hibajelzés, csak az tűnt fel, hogy a regisztráció után lefutó szabályok egy része már nem működik.(Úgy k. a 7.33-as verzióváltásnál lehetett.) Ugyanakkor a felhasználók minden esetben létrejöttek, minden adat mentésre került.
Az első hibaüzenet kötelező vagy alapértelmezett értékkel rendelkező mezők esetében jelent meg, pl. filed_nev mezőnél ez:
PDOException: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'entity_id' cannot be null: INSERT INTO {field_data_field_nev} (entity_type, entity_id, revision_id, bundle, delta, language, field_nev_value, field_nev_format) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7); Array ( [:db_insert_placeholder_0] => user [:db_insert_placeholder_1] => [:db_insert_placeholder_2] => [:db_insert_placeholder_3] => user [:db_insert_placeholder_4] => 0 [:db_insert_placeholder_5] => und [:db_insert_placeholder_6] => Teszt egér [:db_insert_placeholder_7] => ) field_sql_storage_field_storage_write() függvényben
Az entity_id itt nyilván az uid értékét kapná, de nem kapja, a placeholder_1 üres.
Miután megszüntettem ezeket a mezőket, akkor pedig ez jött kb. annyiszor ismétlődve, ahány mező tartozik a felhasználókhoz:
Warning: First parameter must either be an object or the name of an existing class user_save() függvényben (modules/user/user.module 565 sor).
A user modul 565 sora ehhez a függvényhez tartozik a modulban megjelöltem az 565. sort:
foreach ($account as $key => $value) { <em>565. sor</em> if (!property_exists($account->original, $key) || $value !== $account->original->$key) { $edit[$key] = $value; } }
Van bárkinek bármi ötlete, hogy mi lehet a baj, mit lehet a megoldás? A regisztráció rendben működik, de az nagyon nem jó, hogy a regisztráló user hibaüzeneteket kap, ráadásul az SQLSTATE hibaüzenet globális webhely hibaüzenetként jelenik meg, így le sem tiltható.
Előre köszönöm az ötleteket