Sziasztok
Azt vettem észre hogy PostgreSQL adatbázis esetén gondok vannak a fórum téma létrehozásánál. Most kénkért hiba üzenetet nem tudom mutatni, de az IF függvénnyel van a baja.
(nem PHP függbény hanem pgsql ben tárolt eljárás.)
Nem olyan tipusú datatokat amit szeretne.
A problémát orvosoltam egy másik IF() fügvénnyel
CREATE OR REPLACE FUNCTION if(int4, text, text) RETURNS text AS $BODY$ SELECT CASE WHEN ($1<>0) THEN $2 ELSE $3 END; $BODY$ LANGUAGE 'sql' VOLATILE;
Így működik és létre lehet hozni "fórum csoportokat" és "fórumokat" de nem lehet új támát nyítni mert
hibaüzenet:
warning: pg_query() [function.pg-query]: Query failed: ERROR: invalid input syntax for integer: ""
INSERT INTO node (title, body, format, uid, type, teaser, status, moderate, promote, sticky, comment, created, changed, nid) VALUES('level küldés', 'törzs', '1', '2', 'forum', 'törzs', '1', '', '1', '', '2', '1124185792', '1124185792', '4')
A moderate és a sticky mezők kapnak ürest stirnget szám helyett.
A furcsa az, hogy már a db tábla deklarációja is különbözik a mysql-től, de nem a kérdéses mezőknél.
pg moderate integer NOT NULL default '0', my moderate int(2) NOT NULL default '0', pg teaser text NOT NULL default '', my teaser longtext NOT NULL, pg body text NOT NULL default '', my body longtext NOT NULL, pg revisions text NOT NULL default '', my revisions longtext NOT NULL, pg sticky integer NOT NULL default '0', my sticky int(2) NOT NULL default '0',
A probléma helyszíne:
WinXP PostgreSQL 8.03
Drupal 4.6.(0-3) Nem most vettem észre, csak most jelzem/ kérdezem hogy mi a megoldás, illetve hogy tapasztalt-e valaki hasonlót?
rosszul mondtam
nem csak fórumnál hanem bármilyen node INSERT esetében fenn áll a probléma.
megoldottam. :)
Nem biztos hogy a legszebb megoldás, de müködik.
Kicsit átírtam a node.module fájlt.
Nem bizos hogy szükség van a statikusan tárolni a parse_url($db_url) függvény eredményét mert gyakran csak 1 node insert történik egy oldal lekérésközben, de asszem hogy én olyan modult írok ami többet is fog egyszere insertálni.
Szóval a módosítások Drupal 4.6.3 esetén:
410. sor környékén van egy ilyen elágazás a node_save() függvényben.
itt ágazik el az a rész hogy INSERT vagy UPDATE
és az elágazás elé ezt írtam:
csere erre:
most így müködik rendesen.
Azért gyanítom, hogy csak nálam van a hiba mert ez olyan dolog ami 1 perc alatt kiderül ha nem müködik.
Szeretnék visszajelzést, hogy más tapasztala-e ezt a jelenséget.
PostgreSQL sever telepítéssel együtt is csak 10 perc.
Köszönöm :)
módosítás
most látom hogy rosszult jelent meg a témanyitó hozzászólásomban a pgsql függvény:
a kisebb/nagyobb jelek hiányoztak
bug report
Ezt jó lenne megfogalmazni egy bug report formájában, és szépen beküldeni a drupal.org-on, hogy ha már te megoldottad, mások ne szenvedjenek vele.
ezzel van egy kis gond
Olvasni tudok angolul de írni már kevésbé. :-\
Lehet hogy hamarabb észreveszik a hibát és kijavítják mint ahogy megfejtik az angolomat. :D
Jó azért eltudnám mutogatni.
Miközben írtam ezt az üzenetet erőt vettem magamon (az előzö sor után) és megírtam életem első bug reportját. :)
Tehettem volna elöbb is, mert kb 2 hónapja észrevettem a hibát. Rögtön az elején ahogy elkezdtem a drupallal ismerkedni.
Nem tudom megmerjem-e mutatni :)
http://drupal.org/node/28996
jobb út
Nagyon jó úton haladsz :) Azt kellenne még megtapasztalni, hogy a szükséges változtatásokat hogyan küldöd be. Használj mondjuk Tortoise CVS-t, ahogy leírtuk a kézikönyvben, és szedd le vele a 4.6.x-es verziót, amit használsz. Javítsd ki a modulban a hibákat, és a jobb klikkes menüben válaszd a diffet, az elő fogja állítani azt, amit mindenki megért, és amit a bugreporthoz tudsz csatolni. Akkor sokkal hamarabb érsz el eredményeket a hibajavításoddal.
Nem csak a node tábla insertálásával van a gond.
Egy fórum topicnak a hozzászólását (comment) akartam moderálni, mint Admin.
A users tábla UPDATE-jénél ugyan az a hiba mint a node tábla esetén.
Szám tipusú mezőbe üres sztriget próbál belegyömöszölni.
Gyanítom hogy a teljes redszerben jelen van ez a híba. :(
Elfogadási sor lekérdezés
Nagyon nem stimmel ez a pgsql a 4.6.3 drupalban, pedig nem akarok mysql-t használni.
A fentieket alkalmazva a fórum probléma megoldódott, de van még egy az elfogadási sornál:
Van erre is megoldása valakinek?
Még egy If() függvény
Ez talán megoldja a problémát.
A Drupal-nak azon a részén még nem jártam. (Elfogadásisor)
remek!
Köszi, ezzel már tökéletesen működik minden!