sziasztok!
php-val szeretnék node-t létrehozni.
a php flash-ből kapja az adatok, azt betölti a node, node_revisions, sequences táblákba
a node-t után simán drupal felületen jeleníteném meg
a saját localhostomon kezdtem el megcsinálni (apache2,mysql5,php5)
itt a flashből kapott adatokat mb_convert_encoding() függvénnyel koknvertáltam, mert anélkül az összes ékezetes karakter rossz volt, mikor a drupalon keresztül néztem a phpval létrehozott node-t, viszont így meg a hosszú őű volt rossz
http://www.mhn.hu/sc.jpg
mb_detect_encodinggal kiírattam a kódolást is (konvertálás előtt és után is ugyanaz...?)
a mysql karakterkódolási beállításai a localhoston:
character_set_client latin1
character_set_connection latin1
character_set_database utf8
character_set_filesystem binary
character_set_results latin1
character_set_server utf8
character_set_system utf8
character_sets_dir D:\webdev\MySQL\share\charsets\
collation_connection latin1_swedish_ci
collation_database utf8_general_ci
collation_server utf8_general_ci
feltettem az egész cuccot egy szerverre:(apache1.3,mysql4,php5)
http://www.mhn.hu/drupal/?q=flash
itt meg akkor működött ha semmit nem konvertáltam, hanem simán ami jött a flashből az ment az adatbázisba
karakterkódolási beálltások:
character_set latin1
character_sets latin1 big5 cp1251 cp1257 croat czech danish dec8 dos estonia euc_kr gb2312 gbk german1 greek hebrew hp8 hungarian koi8_ru koi8_ukr latin1_de latin2 latin5 sjis swe7 tis620 ujis usa7 win1250 win1251ukr win1251
na nagyon meg is örültem, h ok a dolog, viszont ez az mhn.hu csk tesztelésre van
miután felraktam a cuccot arra a szerverre amin ténylegesen lesz (apache2,mysql5,php5) ismét ugyanazt tpasztaltam mint a localhostomon.
character_set_client latin1
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results latin1
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
collation_connection latin1_swedish_ci
collation_database latin1_swedish_ci
collation_server latin1_swedish_ci
igazából azt nem értem, h a flash utf-8-ban küld el minden adatot, a drupal is utf-8 karakterkódolást használ akkor miért kell konvertálgatnom a localhost-omon meg az éles szerveren. a mhn.hu teszt gépen meg nem?
ui.: félek tőle "meg leszek kövezve" amiért direktbe bele akarok piszkálni a drupal táblákba (meg is értem)
pár héttel ezelőtt írtam már egy fórumbejegyzést, ott azt javasolták, h a services modul segítségével tud a drupal és pl. a flash kommunikálni egymással. végig is olvastam ami ezzel kapcsolatban volt infó. Ott többnyire arról volt szó a flash h olvasssa ki az adatokat drupal táblákból, viszont nekem pont fordtva kellene... node-t létrehozni flashből...
igazából olyan szinten ahogy nekem kellene ezzel a saját fapados módszeremmel is megy leszámítva a karakterkódolási problémát.
szval a kérdés, h mit kell beállítani a szerveren h ne legyen ez a probléma? vagy egyátalán van erre vmi megoldás?
köszönöm
na megoldódott a kérdés: egy
na megoldódott a kérdés:
egy plusz sor kellett a php file-ba:
mysql_query("SET NAMES utf8");
és nem is kell konvertálni semmit, se az adatbázison nem kellett állítani, ahogy jön a flashből mehet az adatbázisba.
gondoltam leírom, hátha esetleg vki buherálásra adja a fejét...
hibás megközelítés!!!
ne írj direktbe a drupal tábláiba!!! soha!
kell ugyan egy php file, ami a flashtől kapott adatokat 'nodeosítja', de ennek nem az a módja, hogy direktbe beírsz a táblákba hékás! van egy ilyen, hogy bootsrap. ezt kell használnod, ez kábé egy drupal bootolási folyamat, mint egy oprendszer mikor feláll. szóval miután ezt elvégezted, az összes drupalban használatos függvényt eléred.
valami ilyesmit kéne tenned a php fileod elején:
tehát a keresőszavak:
drupal bootstrap
node_save()
-
clear: both;
services
services modullal irni is tudod a drupal tablakat, nem csak olvasni..