You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(30) |
Jul
(64) |
Aug
(57) |
Sep
(19) |
Oct
(21) |
Nov
(32) |
Dec
(9) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(30) |
Feb
(39) |
Mar
(45) |
Apr
(45) |
May
(33) |
Jun
(43) |
Jul
(15) |
Aug
(58) |
Sep
(87) |
Oct
(71) |
Nov
(64) |
Dec
(51) |
2002 |
Jan
(41) |
Feb
(49) |
Mar
(78) |
Apr
(73) |
May
(96) |
Jun
(103) |
Jul
(95) |
Aug
(87) |
Sep
(72) |
Oct
(75) |
Nov
(82) |
Dec
(98) |
2003 |
Jan
(83) |
Feb
(52) |
Mar
(56) |
Apr
(67) |
May
(23) |
Jun
(130) |
Jul
(70) |
Aug
(48) |
Sep
(43) |
Oct
(84) |
Nov
(66) |
Dec
(25) |
2004 |
Jan
(54) |
Feb
(55) |
Mar
(83) |
Apr
(47) |
May
(22) |
Jun
(25) |
Jul
(37) |
Aug
(14) |
Sep
(33) |
Oct
(38) |
Nov
(23) |
Dec
(15) |
2005 |
Jan
(33) |
Feb
(22) |
Mar
(48) |
Apr
(87) |
May
(52) |
Jun
(44) |
Jul
(57) |
Aug
(57) |
Sep
(59) |
Oct
(49) |
Nov
(69) |
Dec
(47) |
2006 |
Jan
(27) |
Feb
(21) |
Mar
(42) |
Apr
(27) |
May
(22) |
Jun
(35) |
Jul
(20) |
Aug
(21) |
Sep
(40) |
Oct
(34) |
Nov
(18) |
Dec
(12) |
2007 |
Jan
(4) |
Feb
(16) |
Mar
(40) |
Apr
(11) |
May
(20) |
Jun
(25) |
Jul
(2) |
Aug
(19) |
Sep
(7) |
Oct
(13) |
Nov
(5) |
Dec
(6) |
2008 |
Jan
(9) |
Feb
(11) |
Mar
(7) |
Apr
|
May
(13) |
Jun
(1) |
Jul
(3) |
Aug
(5) |
Sep
(12) |
Oct
|
Nov
|
Dec
|
2009 |
Jan
(2) |
Feb
(2) |
Mar
(2) |
Apr
(6) |
May
(1) |
Jun
(2) |
Jul
(4) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(1) |
2010 |
Jan
(2) |
Feb
(2) |
Mar
(3) |
Apr
(2) |
May
(3) |
Jun
(7) |
Jul
|
Aug
(5) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
(5) |
Dec
|
2013 |
Jan
(2) |
Feb
(4) |
Mar
(8) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(3) |
2014 |
Jan
(3) |
Feb
(5) |
Mar
|
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Ariel A. B. U. <ar...@co...> - 2021-02-23 17:01:14
|
Hi! Nice to see we are using again this list. Un saludo, Colnodo - Uso estratégico de Internet para el desarrollo *M.Sc. Ariel A. Barbosa U.* Director de Proyectos de Tecnología Escuela de Seguridad Digital Tel: 57-1 232 4246 ext. 4301 | 57-315 258 5596 Diagonal 40A (Antigua Av. 39) No. 14-75 Bogotá, Colombia ar...@co... <mailto:ar...@co...> | PGP: 0x9C11CB866ECC0C8C | Twitter @arielbarbosa <https://twitter.com/arielbarbosa> @colnodo <https://twitter.com/colnodo> www.colnodo.apc.org <https://www.colnodo.apc.org> - Uso Estratégico de Internet para el Desarrollo Miembro de la Asociación para el Progreso de las Comunicaciones -APC- www.apc.org <https://www.apc.org> El 23/02/21 a las 9:26 a. m., Bako Mihaly escribió: > Hi Honza, > > Thank you very much for the answer. > > You don't need to spend time on MLX right now, I can live with the > trick I found, if needed. > > Would like to get a documentation for site module and multilanguage > support, hopefully some time will be available. > > Do not understand how parameter handling is going on in the SEO way, I > have seen that {go} is giving you the actual URL, the other variables > were empty in my case. > > We will see. > > I am happy we are in contact. > > Have a sunny day! > > Misi > > La 2021-02-23 02:21, Honza Malik a scris: >> Hola Misi, >> >> >> nice to see you here! >> >> >> > Hi Honza, Ariel, I hope you are doing well during these difficult >> times >> >> >> We are OK with our family, I hope you all too. >> >> >> > Tried to migrate AA site from php 5.5 to 7.2. >> >> > Did svn update to the last revision and updated the database. >> >> >> Great - the last AA in SVN support PHP >= 7.2 >> >> > I have encountered the new site module approach, did not >> understand how >> >> > it works, how can you migrate sites using the "old way", and could >> not >> >> > find any documentation about it. >> >> >> The "new" approach to Site Module is there from commit 2009-08-17 >> in SVN - >> >> >> / Site Module now you can use without any control-file, so you do >> not/ >> >> / need any PHP scripting at all. All you need is to select/ >> >> / AA_Router_Seo in "Router" field in Site Setting and specify/ >> >> / the slices, which are used within the Site Module. This means, >> that/ >> >> / AA_Router_Seo is now stabilized and standardized. See also new/ >> >> / possibilities useful here - {xid}, {xid:path}, {xid:1}, {go} >> and tree/ >> >> / posibilities of {item}/ >> >> >> It works well for the new sites and we use it from that time. The >> documentation is not in good shape for it, but if you are interested, >> I will prepare some example. >> >> >> On the other hand, we are trying to be as backward compatible as >> possible, so the old sites should work in new AA as well. We still >> run some sites based on that older approach with the most current AA. >> >> >> The rewrite of the site from old to new approach is not trivial >> and I would go for it only in the case of redesign of the whole site. >> >> >> > For the time being I had to stick to the old ways - start feeling >> like >> >> > in some old, burned out gunman character from a western movie :-) >> - here >> >> > is my experience, if anybody needs it: >> >> > >> >> > location: apc-aa/modules/site/sites >> >> > file: >> >> > >> >> > Found that the ereg() function used here is out of php 7, found >> >> > suggestion of using preg_match() instead. >> >> >> Right - ereg is gone in php7. One of the advantage of the new >> sitemodule is, that you do not need external php script, so all php >> code is managed and updated be AA. >> >> >> > # previous php 5.5 version >> >> > >> >> > if( ereg( >> >> > >> "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-]) >> >> > ([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) >> >> > >> >> > >> list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old >> >> > _x) = $vars; >> >> > >> >> > else >> >> > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = >> >> > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); >> >> > >> >> > >> >> > The problem is that preg_match() is creating two dimensional >> array, and >> >> > the syntax is a bit different. Need to use differently the list >> >> > function, 2 versions below: >> >> > >> >> > (need to be adapted to the state variable structure used) >> >> > >> >> > # ======================================================= >> >> > # replacement for PHP 7+ >> >> > # v. 1 >> >> > >> >> > if( preg_match( >> >> > >> '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] >> >> > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, >> >> > PREG_OFFSET_CAPTURE )) { >> >> > >> >> > >> list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old >> >> > _x) = $vars; >> >> > $old_state = $vars[0][0]; >> >> > $old_w = $vars[1][0]; >> >> > $old_s = $vars[2][0]; >> >> > $old_f = $vars[3][0]; >> >> > $old_l = $vars[4][0]; >> >> > $old_a = $vars[5][0]; >> >> > $old_r = $vars[6][0]; >> >> > $old_p = $vars[7][0]; >> >> > $old_t = $vars[8][0]; >> >> > $old_x = $vars[9][0]; >> >> > } >> >> > else >> >> > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = >> >> > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); >> >> > >> >> > # ======================================================= >> >> > # replacement for PHP 7+ >> >> > # v. 2 >> >> > >> >> > if( preg_match( >> >> > >> '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] >> >> > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, >> >> > PREG_OFFSET_CAPTURE )) >> >> > >> >> > list( list($old_state, ),list($old_w, ),list($old_s, >> ),list($old_f, >> >> > ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, >> >> > ),list($old_t, ),list($old_x, ) ) = $vars; >> >> > >> >> > else >> >> > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = >> >> > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); >> >> > >> >> > # ======================================================= >> >> > This second one looks more sophisticated & PHP like, however I >> feel like >> >> > it is to complicated structure to be efficient, I don't know the >> inner >> >> > workings of PHP, can not decide which one is faster on execution. >> >> > >> >> > Anyway probably there was some sick mind coming up with this >> syntax of >> >> > the list function, to use blank space for parameters to skip >> (embedded >> >> > list structure). Looks like broken code to me. I still prefer C as a >> >> > programming language :-) . >> >> >> There are two examples of this older sitemodule approach in the >> >> /modules/site/sites/ directory. The examples are addapted to PHP 7,2 >> and should be OK. >> >> >> One approach is in site_ecn_as_example.php3: >> >> >> if ( preg_match( >> "/^([a-zA-Z0-9_])([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)/", >> $apc, $vars )) { >> >> >> list($old_state,$old_w,$old_s,$old_f,$old_r,$old_p,$old_t,$old_x) = >> $vars; >> >> } else { >> >> list($old_w,$old_s,$old_f,$old_r,$old_p,$old_t) = ['z', 'z', >> 'v', 'x', '-', '-']; >> >> } >> >> >> Another - site_greenpages.php3 - uses the built-in function >> ModW_str2arr() >> >> >> $apc_varnames = "tpmiuvw"; //TODO replace with "tpmih*" >> >> $apc_reg = >> "^([-pe])([-]|[0-9]+)([hbsfcCt])([-]|[0-9]+)([hbsfcCt][-0-9]+)*"; >> >> $apc_init = '--h-s-'; >> >> $apc_state = ModW_str2arr($apc_varnames, $apc, $apc_init, $apc_reg); >> >> >> >> > ------------------------------------------------------- >> >> > the MLX / add / edit item form problem: >> >> > >> >> > I am using MLX for multiple languages. The "Edit <language>" tab >> works >> >> > on existing items. However if I want to add another item on ther >> >> > language, and select "Add <language>" tab, it is generating a >> blank Add >> >> > item form of another slice, perhaps the first slice of the database. >> >> > >> >> > Also when I select the last button (abort or cancel, mine is in >> >> > romanian) also jumps back to the other slice item list (not always >> >> > though). If I coming out of the form with the "Update" (first) >> button, >> >> > it behaves normally. Today just logged in again, fresh start, and >> went >> >> > in, this time left the form normally with Cancel button. Strange. >> >> > >> >> > I noticed that the link ends in the & character when you hover >> above the >> >> > Add <language> link - like some parameter is missing. Found that if I >> >> > add module ID at the end, the Add form is generated but blank, the >> data >> >> > from the corresponding item on another language is not copied, and >> >> > language field is filled with random values, like Norwegian, >> Japanese, >> >> > Russian, etc. which I never use. >> >> > >> >> > example: >> >> > >> >> > Original link: >> >> > >> https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 >> >> > d4073eb2e9f937d5cf72934d819& >> >> > >> >> > Altered link generating the blank page: >> >> > >> https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 >> >> > d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b >> >> > >> >> > After added new item - need to care about the language selection >> field, >> >> > otherwise strange things are happening - things are back to >> normal, you >> >> > can edit and save normally, MLX does its job and item is properly >> >> > displayed in the site. >> >> >> Well MLX. I must say we are not using MLX extension on any of our >> sites, so it is quite difficult for me to test it. There is already >> another translation approach in current AA which we use. The MLX >> extension is still in AA and we are trying to update is to newer PHP, >> but it is no longer maintained by Michael Moritz and not much tested. >> I can take a look on it if you give me access to your AA and AA files >> in the server... >> >> >> Best, >> >> Honza >> >> >> >> Dne pondělí 22. února 2021 14:04:46 CET, Bako Mihaly napsal(a): >> >> > // apparently I'm off the list, resubscribed with mi...@ng... >> >> > >> >> > Hi guys! >> >> > >> >> > Have not seen much talk on this list, hopefully I am still on it. >> >> > >> >> > Hi Honza, Ariel, I hope you are doing well during these difficult >> times >> >> > - Cc:-d this to you as well just in case. >> >> > >> >> > Tried to migrate AA site from php 5.5 to 7.2. >> >> > >> >> > Did svn update to the last revision and updated the database. >> >> > >> >> > I have encountered the new site module approach, did not >> understand how >> >> > it works, how can you migrate sites using the "old way", and could >> not >> >> > find any documentation about it. >> >> > >> >> > For the time being I had to stick to the old ways - start feeling >> like >> >> > in some old, burned out gunman character from a western movie :-) >> - here >> >> > is my experience, if anybody needs it: >> >> > >> >> > location: apc-aa/modules/site/sites >> >> > file: >> >> > >> >> > Found that the ereg() function used here is out of php 7, found >> >> > suggestion of using preg_match() instead. >> >> > >> >> > # previous php 5.5 version >> >> > >> >> > if( ereg( >> >> > >> "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-]) >> >> > ([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) >> >> > >> >> > >> list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old >> >> > _x) = $vars; >> >> > >> >> > else >> >> > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = >> >> > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); >> >> > >> >> > >> >> > The problem is that preg_match() is creating two dimensional >> array, and >> >> > the syntax is a bit different. Need to use differently the list >> >> > function, 2 versions below: >> >> > >> >> > (need to be adapted to the state variable structure used) >> >> > >> >> > # ======================================================= >> >> > # replacement for PHP 7+ >> >> > # v. 1 >> >> > >> >> > if( preg_match( >> >> > >> '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] >> >> > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, >> >> > PREG_OFFSET_CAPTURE )) { >> >> > >> >> > >> list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old >> >> > _x) = $vars; >> >> > $old_state = $vars[0][0]; >> >> > $old_w = $vars[1][0]; >> >> > $old_s = $vars[2][0]; >> >> > $old_f = $vars[3][0]; >> >> > $old_l = $vars[4][0]; >> >> > $old_a = $vars[5][0]; >> >> > $old_r = $vars[6][0]; >> >> > $old_p = $vars[7][0]; >> >> > $old_t = $vars[8][0]; >> >> > $old_x = $vars[9][0]; >> >> > } >> >> > else >> >> > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = >> >> > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); >> >> > >> >> > # ======================================================= >> >> > # replacement for PHP 7+ >> >> > # v. 2 >> >> > >> >> > if( preg_match( >> >> > >> '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] >> >> > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, >> >> > PREG_OFFSET_CAPTURE )) >> >> > >> >> > list( list($old_state, ),list($old_w, ),list($old_s, >> ),list($old_f, >> >> > ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, >> >> > ),list($old_t, ),list($old_x, ) ) = $vars; >> >> > >> >> > else >> >> > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = >> >> > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); >> >> > >> >> > # ======================================================= >> >> > >> >> > This second one looks more sophisticated & PHP like, however I >> feel like >> >> > it is to complicated structure to be efficient, I don't know the >> inner >> >> > workings of PHP, can not decide which one is faster on execution. >> >> > >> >> > Anyway probably there was some sick mind coming up with this >> syntax of >> >> > the list function, to use blank space for parameters to skip >> (embedded >> >> > list structure). Looks like broken code to me. I still prefer C as a >> >> > programming language :-) . >> >> > >> >> > ------------------------------------------------------- >> >> > the MLX / add / edit item form problem: >> >> > >> >> > I am using MLX for multiple languages. The "Edit <language>" tab >> works >> >> > on existing items. However if I want to add another item on ther >> >> > language, and select "Add <language>" tab, it is generating a >> blank Add >> >> > item form of another slice, perhaps the first slice of the database. >> >> > >> >> > Also when I select the last button (abort or cancel, mine is in >> >> > romanian) also jumps back to the other slice item list (not always >> >> > though). If I coming out of the form with the "Update" (first) >> button, >> >> > it behaves normally. Today just logged in again, fresh start, and >> went >> >> > in, this time left the form normally with Cancel button. Strange. >> >> > >> >> > I noticed that the link ends in the & character when you hover >> above the >> >> > Add <language> link - like some parameter is missing. Found that if I >> >> > add module ID at the end, the Add form is generated but blank, the >> data >> >> > from the corresponding item on another language is not copied, and >> >> > language field is filled with random values, like Norwegian, >> Japanese, >> >> > Russian, etc. which I never use. >> >> > >> >> > example: >> >> > >> >> > Original link: >> >> > >> https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 >> >> > d4073eb2e9f937d5cf72934d819& >> >> > >> >> > Altered link generating the blank page: >> >> > >> https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 >> >> > d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b >> >> > >> >> > After added new item - need to care about the language selection >> field, >> >> > otherwise strange things are happening - things are back to >> normal, you >> >> > can edit and save normally, MLX does its job and item is properly >> >> > displayed in the site. >> >> > >> >> > This is my 2c. >> >> > >> >> > Have a nice day! >> >> > >> >> > Best, >> >> > >> >> > Misi >> >> > Strawberrynet Romania >> >> > >> >> > >> >> > >> >> > _______________________________________________ >> >> > "Did you get answers to your ActionApps-related queries? If yes, >> please >> >> > help the ActionApps community by uploading the answers onto >> appropriate >> >> > space in the ActionApps documentation wiki. See the *How to >> contribute* >> >> > section today http://actionapps.org/en/How_To_Contribute" >> >> > _______________________________________________ >> >> > apc-aa-general mailing list >> >> > apc...@li... >> >> > https://lists.sourceforge.net/lists/listinfo/apc-aa-general >> >> >> > |
From: Bako M. <mi...@ng...> - 2021-02-23 15:11:43
|
Hi Honza, Thank you very much for the answer. You don't need to spend time on MLX right now, I can live with the trick I found, if needed. Would like to get a documentation for site module and multilanguage support, hopefully some time will be available. Do not understand how parameter handling is going on in the SEO way, I have seen that {go} is giving you the actual URL, the other variables were empty in my case. We will see. I am happy we are in contact. Have a sunny day! Misi La 2021-02-23 02:21, Honza Malik a scris: > Hola Misi, > > > nice to see you here! > > > > Hi Honza, Ariel, I hope you are doing well during these difficult times > > > We are OK with our family, I hope you all too. > > > > Tried to migrate AA site from php 5.5 to 7.2. > > > Did svn update to the last revision and updated the database. > > > Great - the last AA in SVN support PHP >= 7.2 > > > I have encountered the new site module approach, did not understand how > > > it works, how can you migrate sites using the "old way", and could not > > > find any documentation about it. > > > The "new" approach to Site Module is there from commit 2009-08-17 in > SVN - > > > / Site Module now you can use without any control-file, so you do not/ > > / need any PHP scripting at all. All you need is to select/ > > / AA_Router_Seo in "Router" field in Site Setting and specify/ > > / the slices, which are used within the Site Module. This means, that/ > > / AA_Router_Seo is now stabilized and standardized. See also new/ > > / possibilities useful here - {xid}, {xid:path}, {xid:1}, {go} and tree/ > > / posibilities of {item}/ > > > It works well for the new sites and we use it from that time. The > documentation is not in good shape for it, but if you are interested, I > will prepare some example. > > > On the other hand, we are trying to be as backward compatible as > possible, so the old sites should work in new AA as well. We still run > some sites based on that older approach with the most current AA. > > > The rewrite of the site from old to new approach is not trivial and > I would go for it only in the case of redesign of the whole site. > > > > For the time being I had to stick to the old ways - start feeling like > > > in some old, burned out gunman character from a western movie :-) - here > > > is my experience, if anybody needs it: > > > > > > location: apc-aa/modules/site/sites > > > file: > > > > > > Found that the ereg() function used here is out of php 7, found > > > suggestion of using preg_match() instead. > > > Right - ereg is gone in php7. One of the advantage of the new sitemodule > is, that you do not need external php script, so all php code is managed > and updated be AA. > > > > # previous php 5.5 version > > > > > > if( ereg( > > > > "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-]) > > > ([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) > > > > > > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > > > _x) = $vars; > > > > > > else > > > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > > > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > > > > > > > The problem is that preg_match() is creating two dimensional array, and > > > the syntax is a bit different. Need to use differently the list > > > function, 2 versions below: > > > > > > (need to be adapted to the state variable structure used) > > > > > > # ======================================================= > > > # replacement for PHP 7+ > > > # v. 1 > > > > > > if( preg_match( > > > > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > > > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > > > PREG_OFFSET_CAPTURE )) { > > > > > > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > > > _x) = $vars; > > > $old_state = $vars[0][0]; > > > $old_w = $vars[1][0]; > > > $old_s = $vars[2][0]; > > > $old_f = $vars[3][0]; > > > $old_l = $vars[4][0]; > > > $old_a = $vars[5][0]; > > > $old_r = $vars[6][0]; > > > $old_p = $vars[7][0]; > > > $old_t = $vars[8][0]; > > > $old_x = $vars[9][0]; > > > } > > > else > > > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > > > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > > > > # ======================================================= > > > # replacement for PHP 7+ > > > # v. 2 > > > > > > if( preg_match( > > > > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > > > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > > > PREG_OFFSET_CAPTURE )) > > > > > > list( list($old_state, ),list($old_w, ),list($old_s, ),list($old_f, > > > ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, > > > ),list($old_t, ),list($old_x, ) ) = $vars; > > > > > > else > > > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > > > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > > > > # ======================================================= > > > This second one looks more sophisticated & PHP like, however I feel like > > > it is to complicated structure to be efficient, I don't know the inner > > > workings of PHP, can not decide which one is faster on execution. > > > > > > Anyway probably there was some sick mind coming up with this syntax of > > > the list function, to use blank space for parameters to skip (embedded > > > list structure). Looks like broken code to me. I still prefer C as a > > > programming language :-) . > > > There are two examples of this older sitemodule approach in the > > /modules/site/sites/ directory. The examples are addapted to PHP 7,2 and > should be OK. > > > One approach is in site_ecn_as_example.php3: > > > if ( preg_match( > "/^([a-zA-Z0-9_])([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)/", > $apc, $vars )) { > > list($old_state,$old_w,$old_s,$old_f,$old_r,$old_p,$old_t,$old_x) = > $vars; > > } else { > > list($old_w,$old_s,$old_f,$old_r,$old_p,$old_t) = ['z', 'z', 'v', > 'x', '-', '-']; > > } > > > Another - site_greenpages.php3 - uses the built-in function ModW_str2arr() > > > $apc_varnames = "tpmiuvw"; //TODO replace with "tpmih*" > > $apc_reg = > "^([-pe])([-]|[0-9]+)([hbsfcCt])([-]|[0-9]+)([hbsfcCt][-0-9]+)*"; > > $apc_init = '--h-s-'; > > $apc_state = ModW_str2arr($apc_varnames, $apc, $apc_init, $apc_reg); > > > > > ------------------------------------------------------- > > > the MLX / add / edit item form problem: > > > > > > I am using MLX for multiple languages. The "Edit <language>" tab works > > > on existing items. However if I want to add another item on ther > > > language, and select "Add <language>" tab, it is generating a blank Add > > > item form of another slice, perhaps the first slice of the database. > > > > > > Also when I select the last button (abort or cancel, mine is in > > > romanian) also jumps back to the other slice item list (not always > > > though). If I coming out of the form with the "Update" (first) button, > > > it behaves normally. Today just logged in again, fresh start, and went > > > in, this time left the form normally with Cancel button. Strange. > > > > > > I noticed that the link ends in the & character when you hover above the > > > Add <language> link - like some parameter is missing. Found that if I > > > add module ID at the end, the Add form is generated but blank, the data > > > from the corresponding item on another language is not copied, and > > > language field is filled with random values, like Norwegian, Japanese, > > > Russian, etc. which I never use. > > > > > > example: > > > > > > Original link: > > > > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > > > d4073eb2e9f937d5cf72934d819& > > > > > > Altered link generating the blank page: > > > > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > > > d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b > > > > > > After added new item - need to care about the language selection field, > > > otherwise strange things are happening - things are back to normal, you > > > can edit and save normally, MLX does its job and item is properly > > > displayed in the site. > > > Well MLX. I must say we are not using MLX extension on any of our sites, > so it is quite difficult for me to test it. There is already another > translation approach in current AA which we use. The MLX extension is > still in AA and we are trying to update is to newer PHP, but it is no > longer maintained by Michael Moritz and not much tested. I can take a > look on it if you give me access to your AA and AA files in the server... > > > Best, > > Honza > > > > Dne pondělí 22. února 2021 14:04:46 CET, Bako Mihaly napsal(a): > > > // apparently I'm off the list, resubscribed with mi...@ng... > > > > > > Hi guys! > > > > > > Have not seen much talk on this list, hopefully I am still on it. > > > > > > Hi Honza, Ariel, I hope you are doing well during these difficult times > > > - Cc:-d this to you as well just in case. > > > > > > Tried to migrate AA site from php 5.5 to 7.2. > > > > > > Did svn update to the last revision and updated the database. > > > > > > I have encountered the new site module approach, did not understand how > > > it works, how can you migrate sites using the "old way", and could not > > > find any documentation about it. > > > > > > For the time being I had to stick to the old ways - start feeling like > > > in some old, burned out gunman character from a western movie :-) - here > > > is my experience, if anybody needs it: > > > > > > location: apc-aa/modules/site/sites > > > file: > > > > > > Found that the ereg() function used here is out of php 7, found > > > suggestion of using preg_match() instead. > > > > > > # previous php 5.5 version > > > > > > if( ereg( > > > > "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-]) > > > ([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) > > > > > > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > > > _x) = $vars; > > > > > > else > > > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > > > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > > > > > > > The problem is that preg_match() is creating two dimensional array, and > > > the syntax is a bit different. Need to use differently the list > > > function, 2 versions below: > > > > > > (need to be adapted to the state variable structure used) > > > > > > # ======================================================= > > > # replacement for PHP 7+ > > > # v. 1 > > > > > > if( preg_match( > > > > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > > > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > > > PREG_OFFSET_CAPTURE )) { > > > > > > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > > > _x) = $vars; > > > $old_state = $vars[0][0]; > > > $old_w = $vars[1][0]; > > > $old_s = $vars[2][0]; > > > $old_f = $vars[3][0]; > > > $old_l = $vars[4][0]; > > > $old_a = $vars[5][0]; > > > $old_r = $vars[6][0]; > > > $old_p = $vars[7][0]; > > > $old_t = $vars[8][0]; > > > $old_x = $vars[9][0]; > > > } > > > else > > > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > > > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > > > > # ======================================================= > > > # replacement for PHP 7+ > > > # v. 2 > > > > > > if( preg_match( > > > > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > > > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > > > PREG_OFFSET_CAPTURE )) > > > > > > list( list($old_state, ),list($old_w, ),list($old_s, ),list($old_f, > > > ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, > > > ),list($old_t, ),list($old_x, ) ) = $vars; > > > > > > else > > > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > > > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > > > > # ======================================================= > > > > > > This second one looks more sophisticated & PHP like, however I feel like > > > it is to complicated structure to be efficient, I don't know the inner > > > workings of PHP, can not decide which one is faster on execution. > > > > > > Anyway probably there was some sick mind coming up with this syntax of > > > the list function, to use blank space for parameters to skip (embedded > > > list structure). Looks like broken code to me. I still prefer C as a > > > programming language :-) . > > > > > > ------------------------------------------------------- > > > the MLX / add / edit item form problem: > > > > > > I am using MLX for multiple languages. The "Edit <language>" tab works > > > on existing items. However if I want to add another item on ther > > > language, and select "Add <language>" tab, it is generating a blank Add > > > item form of another slice, perhaps the first slice of the database. > > > > > > Also when I select the last button (abort or cancel, mine is in > > > romanian) also jumps back to the other slice item list (not always > > > though). If I coming out of the form with the "Update" (first) button, > > > it behaves normally. Today just logged in again, fresh start, and went > > > in, this time left the form normally with Cancel button. Strange. > > > > > > I noticed that the link ends in the & character when you hover above the > > > Add <language> link - like some parameter is missing. Found that if I > > > add module ID at the end, the Add form is generated but blank, the data > > > from the corresponding item on another language is not copied, and > > > language field is filled with random values, like Norwegian, Japanese, > > > Russian, etc. which I never use. > > > > > > example: > > > > > > Original link: > > > > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > > > d4073eb2e9f937d5cf72934d819& > > > > > > Altered link generating the blank page: > > > > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > > > d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b > > > > > > After added new item - need to care about the language selection field, > > > otherwise strange things are happening - things are back to normal, you > > > can edit and save normally, MLX does its job and item is properly > > > displayed in the site. > > > > > > This is my 2c. > > > > > > Have a nice day! > > > > > > Best, > > > > > > Misi > > > Strawberrynet Romania > > > > > > > > > > > > _______________________________________________ > > > "Did you get answers to your ActionApps-related queries? If yes, please > > > help the ActionApps community by uploading the answers onto appropriate > > > space in the ActionApps documentation wiki. See the *How to contribute* > > > section today http://actionapps.org/en/How_To_Contribute" > > > _______________________________________________ > > > apc-aa-general mailing list > > > apc...@li... > > > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > > |
From: Honza M. <hon...@ec...> - 2021-02-23 00:55:21
|
Hola Misi, nice to see you here! > Hi Honza, Ariel, I hope you are doing well during these difficult times We are OK with our family, I hope you all too. > Tried to migrate AA site from php 5.5 to 7.2. > Did svn update to the last revision and updated the database. Great - the last AA in SVN support PHP >= 7.2 > I have encountered the new site module approach, did not understand how > it works, how can you migrate sites using the "old way", and could not > find any documentation about it. The "new" approach to Site Module is there from commit 2009-08-17 in SVN - / Site Module now you can use without any control-file, so you do not/ / need any PHP scripting at all. All you need is to select/ / AA_Router_Seo in "Router" field in Site Setting and specify/ / the slices, which are used within the Site Module. This means, that/ / AA_Router_Seo is now stabilized and standardized. See also new/ / possibilities useful here - {xid}, {xid:path}, {xid:1}, {go} and tree/ / posibilities of {item}/ It works well for the new sites and we use it from that time. The documentation is not in good shape for it, but if you are interested, I will prepare some example. On the other hand, we are trying to be as backward compatible as possible, so the old sites should work in new AA as well. We still run some sites based on that older approach with the most current AA. The rewrite of the site from old to new approach is not trivial and I would go for it only in the case of redesign of the whole site. > For the time being I had to stick to the old ways - start feeling like > in some old, burned out gunman character from a western movie :-) - here > is my experience, if anybody needs it: > > location: apc-aa/modules/site/sites > file: > > Found that the ereg() function used here is out of php 7, found > suggestion of using preg_match() instead. Right - ereg is gone in php7. One of the advantage of the new sitemodule is, that you do not need external php script, so all php code is managed and updated be AA. > # previous php 5.5 version > > if( ereg( > "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-]) > ([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > _x) = $vars; > > else > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > The problem is that preg_match() is creating two dimensional array, and > the syntax is a bit different. Need to use differently the list > function, 2 versions below: > > (need to be adapted to the state variable structure used) > > # ======================================================= > # replacement for PHP 7+ > # v. 1 > > if( preg_match( > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > PREG_OFFSET_CAPTURE )) { > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > _x) = $vars; > $old_state = $vars[0][0]; > $old_w = $vars[1][0]; > $old_s = $vars[2][0]; > $old_f = $vars[3][0]; > $old_l = $vars[4][0]; > $old_a = $vars[5][0]; > $old_r = $vars[6][0]; > $old_p = $vars[7][0]; > $old_t = $vars[8][0]; > $old_x = $vars[9][0]; > } > else > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > # ======================================================= > # replacement for PHP 7+ > # v. 2 > > if( preg_match( > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > PREG_OFFSET_CAPTURE )) > > list( list($old_state, ),list($old_w, ),list($old_s, ),list($old_f, > ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, > ),list($old_t, ),list($old_x, ) ) = $vars; > > else > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > # ======================================================= > This second one looks more sophisticated & PHP like, however I feel like > it is to complicated structure to be efficient, I don't know the inner > workings of PHP, can not decide which one is faster on execution. > > Anyway probably there was some sick mind coming up with this syntax of > the list function, to use blank space for parameters to skip (embedded > list structure). Looks like broken code to me. I still prefer C as a > programming language :-) . There are two examples of this older sitemodule approach in the /modules/site/sites/ directory. The examples are addapted to PHP 7,2 and should be OK. One approach is in site_ecn_as_example.php3: if ( preg_match( "/^([a-zA-Z0-9_])([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)/", $apc, $vars )) { list($old_state,$old_w,$old_s,$old_f,$old_r,$old_p,$old_t,$old_x) = $vars; } else { list($old_w,$old_s,$old_f,$old_r,$old_p,$old_t) = ['z', 'z', 'v', 'x', '-', '-']; } Another - site_greenpages.php3 - uses the built-in function ModW_str2arr() $apc_varnames = "tpmiuvw"; //TODO replace with "tpmih*" $apc_reg = "^([-pe])([-]|[0-9]+)([hbsfcCt])([-]|[0-9]+)([hbsfcCt][-0-9]+)*"; $apc_init = '--h-s-'; $apc_state = ModW_str2arr($apc_varnames, $apc, $apc_init, $apc_reg); > ------------------------------------------------------- > the MLX / add / edit item form problem: > > I am using MLX for multiple languages. The "Edit <language>" tab works > on existing items. However if I want to add another item on ther > language, and select "Add <language>" tab, it is generating a blank Add > item form of another slice, perhaps the first slice of the database. > > Also when I select the last button (abort or cancel, mine is in > romanian) also jumps back to the other slice item list (not always > though). If I coming out of the form with the "Update" (first) button, > it behaves normally. Today just logged in again, fresh start, and went > in, this time left the form normally with Cancel button. Strange. > > I noticed that the link ends in the & character when you hover above the > Add <language> link - like some parameter is missing. Found that if I > add module ID at the end, the Add form is generated but blank, the data > from the corresponding item on another language is not copied, and > language field is filled with random values, like Norwegian, Japanese, > Russian, etc. which I never use. > > example: > > Original link: > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > d4073eb2e9f937d5cf72934d819& > > Altered link generating the blank page: > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b > > After added new item - need to care about the language selection field, > otherwise strange things are happening - things are back to normal, you > can edit and save normally, MLX does its job and item is properly > displayed in the site. Well MLX. I must say we are not using MLX extension on any of our sites, so it is quite difficult for me to test it. There is already another translation approach in current AA which we use. The MLX extension is still in AA and we are trying to update is to newer PHP, but it is no longer maintained by Michael Moritz and not much tested. I can take a look on it if you give me access to your AA and AA files in the server... Best, Honza Dne pondělí 22. února 2021 14:04:46 CET, Bako Mihaly napsal(a): > // apparently I'm off the list, resubscribed with mi...@ng... > > Hi guys! > > Have not seen much talk on this list, hopefully I am still on it. > > Hi Honza, Ariel, I hope you are doing well during these difficult times > - Cc:-d this to you as well just in case. > > Tried to migrate AA site from php 5.5 to 7.2. > > Did svn update to the last revision and updated the database. > > I have encountered the new site module approach, did not understand how > it works, how can you migrate sites using the "old way", and could not > find any documentation about it. > > For the time being I had to stick to the old ways - start feeling like > in some old, burned out gunman character from a western movie :-) - here > is my experience, if anybody needs it: > > location: apc-aa/modules/site/sites > file: > > Found that the ereg() function used here is out of php 7, found > suggestion of using preg_match() instead. > > # previous php 5.5 version > > if( ereg( > "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-]) > ([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > _x) = $vars; > > else > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > > The problem is that preg_match() is creating two dimensional array, and > the syntax is a bit different. Need to use differently the list > function, 2 versions below: > > (need to be adapted to the state variable structure used) > > # ======================================================= > # replacement for PHP 7+ > # v. 1 > > if( preg_match( > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > PREG_OFFSET_CAPTURE )) { > > list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old > _x) = $vars; > $old_state = $vars[0][0]; > $old_w = $vars[1][0]; > $old_s = $vars[2][0]; > $old_f = $vars[3][0]; > $old_l = $vars[4][0]; > $old_a = $vars[5][0]; > $old_r = $vars[6][0]; > $old_p = $vars[7][0]; > $old_t = $vars[8][0]; > $old_x = $vars[9][0]; > } > else > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > # ======================================================= > # replacement for PHP 7+ > # v. 2 > > if( preg_match( > '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-] > )([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, > PREG_OFFSET_CAPTURE )) > > list( list($old_state, ),list($old_w, ),list($old_s, ),list($old_f, > ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, > ),list($old_t, ),list($old_x, ) ) = $vars; > > else > list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = > array( 'i', '-', '-', 'r', 0, '-', '-', '-'); > > # ======================================================= > > This second one looks more sophisticated & PHP like, however I feel like > it is to complicated structure to be efficient, I don't know the inner > workings of PHP, can not decide which one is faster on execution. > > Anyway probably there was some sick mind coming up with this syntax of > the list function, to use blank space for parameters to skip (embedded > list structure). Looks like broken code to me. I still prefer C as a > programming language :-) . > > ------------------------------------------------------- > the MLX / add / edit item form problem: > > I am using MLX for multiple languages. The "Edit <language>" tab works > on existing items. However if I want to add another item on ther > language, and select "Add <language>" tab, it is generating a blank Add > item form of another slice, perhaps the first slice of the database. > > Also when I select the last button (abort or cancel, mine is in > romanian) also jumps back to the other slice item list (not always > though). If I coming out of the form with the "Update" (first) button, > it behaves normally. Today just logged in again, fresh start, and went > in, this time left the form normally with Cancel button. Strange. > > I noticed that the link ends in the & character when you hover above the > Add <language> link - like some parameter is missing. Found that if I > add module ID at the end, the Add form is generated but blank, the data > from the corresponding item on another language is not copied, and > language field is filled with random values, like Norwegian, Japanese, > Russian, etc. which I never use. > > example: > > Original link: > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > d4073eb2e9f937d5cf72934d819& > > Altered link generating the blank page: > https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4 > d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b > > After added new item - need to care about the language selection field, > otherwise strange things are happening - things are back to normal, you > can edit and save normally, MLX does its job and item is properly > displayed in the site. > > This is my 2c. > > Have a nice day! > > Best, > > Misi > Strawberrynet Romania > > > > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Bako M. <mi...@ng...> - 2021-02-22 13:34:37
|
// apparently I'm off the list, resubscribed with mi...@ng... Hi guys! Have not seen much talk on this list, hopefully I am still on it. Hi Honza, Ariel, I hope you are doing well during these difficult times - Cc:-d this to you as well just in case. Tried to migrate AA site from php 5.5 to 7.2. Did svn update to the last revision and updated the database. I have encountered the new site module approach, did not understand how it works, how can you migrate sites using the "old way", and could not find any documentation about it. For the time being I had to stick to the old ways - start feeling like in some old, burned out gunman character from a western movie :-) - here is my experience, if anybody needs it: location: apc-aa/modules/site/sites file: Found that the ereg() function used here is out of php 7, found suggestion of using preg_match() instead. # previous php 5.5 version if( ereg( "^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z_]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)", $apc, $vars )) list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old_x) = $vars; else list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = array( 'i', '-', '-', 'r', 0, '-', '-', '-'); The problem is that preg_match() is creating two dimensional array, and the syntax is a bit different. Need to use differently the list function, 2 versions below: (need to be adapted to the state variable structure used) # ======================================================= # replacement for PHP 7+ # v. 1 if( preg_match( '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, PREG_OFFSET_CAPTURE )) { list($old_state,$old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t,$old_x) = $vars; $old_state = $vars[0][0]; $old_w = $vars[1][0]; $old_s = $vars[2][0]; $old_f = $vars[3][0]; $old_l = $vars[4][0]; $old_a = $vars[5][0]; $old_r = $vars[6][0]; $old_p = $vars[7][0]; $old_t = $vars[8][0]; $old_x = $vars[9][0]; } else list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = array( 'i', '-', '-', 'r', 0, '-', '-', '-'); # ======================================================= # replacement for PHP 7+ # v. 2 if( preg_match( '"^([a-zA-Z0-9_])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z0-9_-])([a-zA-Z_-]+)([-]|[0-9]+)([a-zA-Z_-])([0-9]*)"', $apc, $vars, PREG_OFFSET_CAPTURE )) list( list($old_state, ),list($old_w, ),list($old_s, ),list($old_f, ),list($old_l, ),list($old_a, ),list($old_r, ),list($old_p, ),list($old_t, ),list($old_x, ) ) = $vars; else list($old_w,$old_s,$old_f,$old_l,$old_a,$old_r,$old_p,$old_t) = array( 'i', '-', '-', 'r', 0, '-', '-', '-'); # ======================================================= This second one looks more sophisticated & PHP like, however I feel like it is to complicated structure to be efficient, I don't know the inner workings of PHP, can not decide which one is faster on execution. Anyway probably there was some sick mind coming up with this syntax of the list function, to use blank space for parameters to skip (embedded list structure). Looks like broken code to me. I still prefer C as a programming language :-) . ------------------------------------------------------- the MLX / add / edit item form problem: I am using MLX for multiple languages. The "Edit <language>" tab works on existing items. However if I want to add another item on ther language, and select "Add <language>" tab, it is generating a blank Add item form of another slice, perhaps the first slice of the database. Also when I select the last button (abort or cancel, mine is in romanian) also jumps back to the other slice item list (not always though). If I coming out of the form with the "Update" (first) button, it behaves normally. Today just logged in again, fresh start, and went in, this time left the form normally with Cancel button. Strange. I noticed that the link ends in the & character when you hover above the Add <language> link - like some parameter is missing. Found that if I add module ID at the end, the Add form is generated but blank, the data from the corresponding item on another language is not copied, and language field is filled with random values, like Norwegian, Japanese, Russian, etc. which I never use. example: Original link: https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4d4073eb2e9f937d5cf72934d819& Altered link generating the blank page: https://site.ro/aa/admin/itemedit.php3?encap=false&add=1&mlxl=HU&mlxid=4e5b4d4073eb2e9f937d5cf72934d819&module_id=fd49721e08b3ad1ffca8211b1dbdee1b After added new item - need to care about the language selection field, otherwise strange things are happening - things are back to normal, you can edit and save normally, MLX does its job and item is properly displayed in the site. This is my 2c. Have a nice day! Best, Misi Strawberrynet Romania |
From: Honza M. <hon...@ec...> - 2015-08-20 18:01:20
|
Thanks Ariel, we already solved the issue with Misi. The problem wasn't in AA itself, but in corrupted shtml files on the server. Regards, Honza Dne Út 18. srpna 2015 13:47:47, Ariel Barbosa napsal(a): > Hi Misi, what version of AA are you using? Can you send us the url of > one of the sites you are refering to? > > Un saludo, > Colnodo - Uso estratégico de Internet para el desarrollo > *Ariel Barbosa* > > Director de Proyectos de Tecnología > > Tel: 57-1 232 4246 ext. 4301 | 57-315 258 5596 > > Diagonal 40A (Antigua Av. 39) No. 14-75 Bogotá, Colombia > > GPG ID: 0xE5C5E92D | ar...@co... <mailto:ar...@co...> > > Twitter @colnodo <https://twitter.com/colnodo> > > www.colnodo.apc.org <http://www.colnodo.apc.org> - Uso Estratégico de > Internet para el Desarrollo > > Miembro de la Asociación para el Progreso de las Comunicaciones -APC- > www.apc.org <http://www.apc.org> > > El 16/08/15 a las 9:16, Anriette Esterhuysen escribió: > > Dear Misi > > > > Very nice to hear from you. > > > > I am copying this to Julian and to apc.tech in case they don't see this. > > > > Warm regards > > > > Anriette > > > > On 15/08/2015 15:32, Bako Mihaly wrote: > >> Hi, > >> > >> I just lost my hard drive and downloaded latest version of AA on new one. > >> > >> My simple sites stopped working - full text view called with short item > >> ID (...?x=3654) returning "No item found" > >> > >> However sites built on site module are OK. > >> > >> Any thoughts? > >> > >> Best, > >> > >> Misi > >> > >> ------------------------------------------------------------------------- > >> ----- _______________________________________________ > >> "Did you get answers to your ActionApps-related queries? If yes, please > >> help the ActionApps community by uploading the answers onto appropriate > >> space in the ActionApps documentation wiki. See the *How to contribute* > >> section today http://actionapps.org/en/How_To_Contribute" > >> _______________________________________________ > >> apc-aa-general mailing list > >> apc...@li... > >> https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Honza M. <hon...@ec...> - 2015-08-17 02:13:38
|
Hi Misi, this is strange - we use the current AA rev 3424 from SVN on our production server and all the old sites as well as the new sitemodule sites works. Which version of AA and which version of PHP you are using? Can you send me the URL, where is the problem? There could be some problems with PHP 5.6.x, but I already testing the updated code on the testing server and I will send the necessary changes for PHP 5.6.x to AA SVN repository soon. If you want, I can check the AA on your server if you give me the access to AA admin interface/SSH... Honza On Saturday 15 of August 2015 16:32:49 Bako Mihaly wrote: > Hi, > > I just lost my hard drive and downloaded latest version of AA on new one. > > My simple sites stopped working - full text view called with short item > ID (...?x=3654) returning "No item found" > > However sites built on site module are OK. > > Any thoughts? > > Best, > > Misi > > ------------------------------------------------------------------- --------- > -- _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Anriette E. <anr...@ap...> - 2015-08-16 14:32:50
|
Dear Misi Very nice to hear from you. I am copying this to Julian and to apc.tech in case they don't see this. Warm regards Anriette On 15/08/2015 15:32, Bako Mihaly wrote: > Hi, > > I just lost my hard drive and downloaded latest version of AA on new one. > > My simple sites stopped working - full text view called with short item > ID (...?x=3654) returning "No item found" > > However sites built on site module are OK. > > Any thoughts? > > Best, > > Misi > > ------------------------------------------------------------------------------ > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > -- ----------------------------------------- Anriette Esterhuysen Executive Director Association for Progressive Communications anr...@ap... www.apc.org IM: ae_apc |
From: Bako M. <mi...@sb...> - 2015-08-15 14:06:38
|
Hi, I just lost my hard drive and downloaded latest version of AA on new one. My simple sites stopped working - full text view called with short item ID (...?x=3654) returning "No item found" However sites built on site module are OK. Any thoughts? Best, Misi |
From: Pilar V. <ale...@gm...> - 2014-05-09 15:19:12
|
Cordial saludo. Confimo el deseo de pertenecer a la comunidad de actionapp -- Pilar Vargas Sierra 3102043499 |
From: Honza M. <hon...@ec...> - 2014-04-29 00:21:38
|
Hi Misi, we didn't remove any functionality from AA, so it should work. On the other hand, we do not use this functionality at this moment, so I do not have it tested right now. If you can send me the url and describe, which data should be filled, I can check it. What I can suggest right now is to check the permissions for anonymous edit on Slice Admin page in AA. Honza On Monday 28 of April 2014 17:34:08 Bako Mihaly wrote: > Checked the source of the page, I have the values in this array: > > var fillform_fields = new Array ( > new Array ('f','v73686f72745f69642e2e2e2e2e2e2e2e','5338','tdctr_','h',0), > new Array ('f','v7374617475735f636f64652e2e2e2e2e','1','tdctr_','h',0), new > Array > ('f','v706f73745f646174652e2e2e2e2e2e2e','1061618221','tdctr_','h',0), new > Array > ('f','v7075626c6973685f646174652e2e2e2e','1061614800','tdctr_','h',0), new > Array > ('f','v6578706972795f646174652e2e2e2e2e','2115957599','tdctr_','h',0), new > Array ('f','v686967686c696768742e2e2e2e2e2e2e','','tdctr_','h',0), new > Array > ('f','v706f737465645f62792e2e2e2e2e2e2e','9999999999','tdctr_','h',0), new > Array > ('f','v6564697465645f62792e2e2e2e2e2e2e','9999999999','tdctr_','h',0), new > Array > ('f','v6c6173745f656469742e2e2e2e2e2e2e','1069106389','tdctr_','h',0), new > Array ('f','v646973706c61795f636f756e742e2e2e','2275','tdctr_','h',0), new > Array ('f','v666c6167732e2e2e2e2e2e2e2e2e2e2e','','tdctr_','h',0), new > Array ('f','v646973635f636f756e742e2e2e2e2e2e','0','tdctr_','h',0), new > Array ('f','v646973635f6170702e2e2e2e2e2e2e2e','0','tdctr_','h',0), new > Array ('f','v65787465726e616c6c795f6665642e2e','','tdctr_','h',0), new > Array > ('f','v6d6f766564326163746976652e2e2e2e','1061628529','tdctr_','h',0), > > .... > > However they are not printed out - fields listed on the visible form for > the users are empty. > > best, > > Misi > > On 2014-04-27 17:27, Bako Mihaly wrote: > > Hi! > > > > Just upgraded to latest SVN version finally - and observed that my > > anonymous form editing is not working. > > > > Did not try to submit data yet - just observed that actual data is not > > filled in form when want to edit. > > > > It is password based editing. generated new form, but that is having the > > same error (empty form received for edit). > > > > Any suggestions? > > > > Thank you Honza for the previous help to prepare this upgrade. Now i > > have MySQL and PHP upgraded (MySQL 5.5) > > > > Thank you, > > > > Misi > > > > --------------- > > bako mihaly, strawberrynet > > > > > > -------------------------------------------------------------------------- > > ---- Start Your Social Network Today - Download eXo Platform > > Build your Enterprise Intranet with eXo Platform Software > > Java Based Open Source Intranet - Social, Extensible, Cloud Ready > > Get Started Now And Turn Your Intranet Into A Collaboration Platform > > http://p.sf.net/sfu/ExoPlatform > > _______________________________________________ > > "Did you get answers to your ActionApps-related queries? If yes, please > > help the ActionApps community by uploading the answers onto appropriate > > space in the ActionApps documentation wiki. See the *How to contribute* > > section today http://actionapps.org/en/How_To_Contribute" > > _______________________________________________ > > apc-aa-general mailing list > > apc...@li... > > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > ---------------------------------------------------------------------------- > -- "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. Get > unparalleled scalability from the best Selenium testing platform available. > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Bako M. <mi...@sb...> - 2014-04-28 14:34:17
|
Checked the source of the page, I have the values in this array: var fillform_fields = new Array ( new Array ('f','v73686f72745f69642e2e2e2e2e2e2e2e','5338','tdctr_','h',0), new Array ('f','v7374617475735f636f64652e2e2e2e2e','1','tdctr_','h',0), new Array ('f','v706f73745f646174652e2e2e2e2e2e2e','1061618221','tdctr_','h',0), new Array ('f','v7075626c6973685f646174652e2e2e2e','1061614800','tdctr_','h',0), new Array ('f','v6578706972795f646174652e2e2e2e2e','2115957599','tdctr_','h',0), new Array ('f','v686967686c696768742e2e2e2e2e2e2e','','tdctr_','h',0), new Array ('f','v706f737465645f62792e2e2e2e2e2e2e','9999999999','tdctr_','h',0), new Array ('f','v6564697465645f62792e2e2e2e2e2e2e','9999999999','tdctr_','h',0), new Array ('f','v6c6173745f656469742e2e2e2e2e2e2e','1069106389','tdctr_','h',0), new Array ('f','v646973706c61795f636f756e742e2e2e','2275','tdctr_','h',0), new Array ('f','v666c6167732e2e2e2e2e2e2e2e2e2e2e','','tdctr_','h',0), new Array ('f','v646973635f636f756e742e2e2e2e2e2e','0','tdctr_','h',0), new Array ('f','v646973635f6170702e2e2e2e2e2e2e2e','0','tdctr_','h',0), new Array ('f','v65787465726e616c6c795f6665642e2e','','tdctr_','h',0), new Array ('f','v6d6f766564326163746976652e2e2e2e','1061628529','tdctr_','h',0), .... However they are not printed out - fields listed on the visible form for the users are empty. best, Misi On 2014-04-27 17:27, Bako Mihaly wrote: > Hi! > > Just upgraded to latest SVN version finally - and observed that my > anonymous form editing is not working. > > Did not try to submit data yet - just observed that actual data is not > filled in form when want to edit. > > It is password based editing. generated new form, but that is having the > same error (empty form received for edit). > > Any suggestions? > > Thank you Honza for the previous help to prepare this upgrade. Now i > have MySQL and PHP upgraded (MySQL 5.5) > > Thank you, > > Misi > > --------------- > bako mihaly, strawberrynet > > > ------------------------------------------------------------------------------ > Start Your Social Network Today - Download eXo Platform > Build your Enterprise Intranet with eXo Platform Software > Java Based Open Source Intranet - Social, Extensible, Cloud Ready > Get Started Now And Turn Your Intranet Into A Collaboration Platform > http://p.sf.net/sfu/ExoPlatform > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > |
From: Bako M. <mi...@sb...> - 2014-04-27 15:03:35
|
Hi! Just upgraded to latest SVN version finally - and observed that my anonymous form editing is not working. Did not try to submit data yet - just observed that actual data is not filled in form when want to edit. It is password based editing. generated new form, but that is having the same error (empty form received for edit). Any suggestions? Thank you Honza for the previous help to prepare this upgrade. Now i have MySQL and PHP upgraded (MySQL 5.5) Thank you, Misi --------------- bako mihaly, strawberrynet |
From: Gert S. <gst...@ri...> - 2014-02-20 22:54:01
|
Hi all, First of all, thanks to Honza for acknowledging and fixing the issues I reported to him earlier, in such a quick manner. I think they are important enough for people to upgrade their existing installations as soon as possible to prevent SQLi attack on their sites. Apart from the patch that Honza committed to SVN on 31/1/2014, which addresses the SQLi problem, I'd recommend some additional changes to production sites to prevent or mitigate other security issues found with ActionApps: * Make sure to configure a DB error page in /apc-aa/include/config.php3 /to prevent XSS attacks on your site. The easiest way might be to configure it to show your main page when a DB Error occurs (instead of outputting the SQL string for debugging, which may be vulnerable to XSS attacks), like this: //** Page shown on database error// // * If you do not specify this page, then some default error messages are// // * displayed. It is good for debuging, but it is better to not show this// // * messages to user on production server for security reasons */// // //define("DB_ERROR_PAGE", "/");// // / * Remove the following files from your production sites, to prevent information disclosure about the version of ActionApps & Xinha editor your are running: /apc-aa/CHANGES// //apc-aa/misc/htmlarea/release-notes.txt// //apc-aa/misc/htmlarea/release-notes.html// / // * If at all possible completely remove or replace the Xinha Html editor present in /apc-aa/misc/htmlarea/, as it is an old, unmaintained version which has known vulnerabilities that may compromise the security of your site <https://secunia.com/advisories/product/29927/?task=advisories>if exploited. On 02/20/2014 12:50 PM, Bako Mihaly wrote: > Hi Honza, > > thank you very much, in this case I will try to upgrade. I hope I will > not need other patching. > > best, > > Misi > > On 2014-02-20 19:18, Honza Malik wrote: >> Hi Misi, >> >>> did: >>> >>> svn switch --relocate >>> https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk >>> https://svn.code.sf.net/p/apc-aa/svn/trunk . >> Good. SVN repository of Sourceforge has moved some time ago, so the provided >> command is necessary for older SVN installs. >> >>> got the update, and after database update failed with: >>> >>> *Warning*: mysqli_connect() [function.mysqli-connect >>> <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): >>> Unknown MySQL server host 'p:localhost' (1) in >>> */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on >>> line *72* >>> >>> *Database error:* connect (p:localhost, ekledo_adbusr, $Password, >>> ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) >>> *Error Number:*: 0 >>> >>> I am currently running PHP Version 5.2.17* >> We switched from deprecated ext/mysql to modern ext/mysqli extension. The new >> extension supports persistent connection (see ...host 'p:localhost'.... above) >> from PHP 5.3. So yes - it is PHP version related. You can fix this by using >> Non persistent connection to the database - see AA_USE_NON_PERSISTENT_CONNECT >> in your config.php3. >> >> This will solve the DB connection problem, but there are probably more spots, >> where we use PHP 5.3 constructs (like the one in site.php3* line *115*) >> The tested version of PHP with current AA is PHP 5.3 - 5.5, so I would >> recommend to upgrade PHP. >> >> The register_globals is no longer issue for current AA. It could be the >> problem for other apps, of course. >> >>> Last time I had to downgrade PHP because register globals = off did not >>> work. Now if I upgrade php all other sites with reg.globals = on will >>> stop - meaning that I have to upgrade all sites at once and pray new >>> version will work because I can not go back afterwards. >> You have to upgrade PHP in near future in all cases, so now is probably the >> right time to do that. If you do not have time to convert all of your sites to >> PHP 5.5, I can patch the perm_sql.php3 file for you, so you can just replace >> it in your old AA install. However, this it just temporary solution. >> >> Honza >> >> >> >> >> Dne Čt 20. února 2014 Bako Mihaly napsal(a): >>> Hi Honza! >>> >>> After >>> >>> svn update >>> >>> got: >>> >>> svn: Repository moved permanently to >>> 'https://svn.code.sf.net/p/apc-aa/svn/trunk'; please relocate >>> >>> did: >>> >>> svn switch --relocate >>> https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk >>> https://svn.code.sf.net/p/apc-aa/svn/trunk . >>> >>> got the update, and after database update failed with: >>> >>> *Warning*: mysqli_connect() [function.mysqli-connect >>> <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): >>> Unknown MySQL server host 'p:localhost' (1) in >>> */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on >>> line *72* >>> >>> *Database error:* connect (p:localhost, ekledo_adbusr, $Password, >>> ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) >>> *Error Number:*: 0 >>> >>> I am currently running PHP Version 5.2.17* >>> >>> I got when connecting to site: >>> >>> Parse error*: syntax error, unexpected ':' in >>> */home/ekledo/public_html/apc-aa_2.50/modules/site/site.php3* on line *115* >>> >>> Is this because PHP is to old? >>> >>> Last time I had to downgrade PHP because register globals = off did not >>> work. Now if I upgrade php all other sites with reg.globals = on will >>> stop - meaning that I have to upgrade all sites at once and pray new >>> version will work because I can not go back afterwards. >>> >>> What do you suggest? >>> >>> best, >>> >>> Misi >>> >>> On 2014-02-19 19:15, Honza Malik wrote: >>>> Hi all, >>>> >>>> Gert Steenssens found SQL INJECTION problem in our SQL permission >>>> system, >>>> >>>> which were there for a long time from its beginning phase. >>>> >>>> All systems, which uses SQL based permission system should be updated >>>> (see >>>> >>>> the line define("PERM_LIB", "sql") in your config.php3 script). The >>>> systems which uses LDAP permission system are not affected. >>>> >>>> The database structure is stable for quite a long time, so any update >>>> from >>>> >>>> Subversion should be quite easy - just type: >>>> svn update >>>> >>>> The current AA in SVN works well with PHP 5.3, 5.4 and 5.5 and MySQL >>>> >= 5.0 >>>> >>>> (or MariaDB). >>>> >>>> Thanks Gert for the report, >>>> >>>> Honza >>>> >>>> ------------------------------------------------------------------------- >>>> ----- Managing the Performance of Cloud-Based Applications >>>> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >>>> Read the Whitepaper. >>>> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clk >>>> trk _______________________________________________ >>>> "Did you get answers to your ActionApps-related queries? If yes, please >>>> help the ActionApps community by uploading the answers onto appropriate >>>> space in the ActionApps documentation wiki. See the *How to contribute* >>>> section today http://actionapps.org/en/How_To_Contribute" >>>> _______________________________________________ >>>> apc-aa-general mailing list >>>> apc...@li... >>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >>> --------------------------------------------------------------------------- >>> --- Managing the Performance of Cloud-Based Applications >>> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >>> Read the Whitepaper. >>> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktr >>> k _______________________________________________ >>> "Did you get answers to your ActionApps-related queries? If yes, please >>> help the ActionApps community by uploading the answers onto appropriate >>> space in the ActionApps documentation wiki. See the *How to contribute* >>> section today http://actionapps.org/en/How_To_Contribute" >>> _______________________________________________ >>> apc-aa-general mailing list >>> apc...@li... >>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >> ------------------------------------------------------------------------------ >> Managing the Performance of Cloud-Based Applications >> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >> Read the Whitepaper. >> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk >> _______________________________________________ >> "Did you get answers to your ActionApps-related queries? If yes, please >> help the ActionApps community by uploading the answers onto appropriate >> space in the ActionApps documentation wiki. See the *How to contribute* >> section today http://actionapps.org/en/How_To_Contribute" >> _______________________________________________ >> apc-aa-general mailing list >> apc...@li... >> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general -- Gert Steenssens / EsperanzaProxima.net gst...@ri... -- Cryptography is the ultimate form of non-violent direct action. Julian Assange - 'Cypherpunks: Freedom and the Future of the Internet' Please considering using OpenPGP encryption when sending me email: -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.11 (GNU/Linux) mQENBFCtOrkBCADro4JceDLqvGImabkyK9DDfNoq/HOZ6Uj1lx55Jzn4c5e5M1pD FoLM2shFZxrOtWKHMC7yfF3zmcvROs3D2kmzJt1+JLcatce1ISIg9OGwyYctFrTs 44CyQbj/Cinp5mza4s0u6aoyf4GCSQAmwMYFD7BZl6nqXmlAbL/HsJTFHlnjMlpX cYmNt7DZahdntZdon0Aw3lcDSqwClkxd3nSbSaxHenlskGhElssJwCa+Atz3jNX7 i2z66FuIGNsxO72rYQgsP8wpmvbKLngqtyHwGmKD/ku2xjjpGVbhGVj5xmmRqohU Qs1IPW1aRr+thL+nUKQGP409Vob78eKBSDVhABEBAAG0JUdlcnQgU3RlZW5zc2Vu cyA8Z3N0ZWVuc3NAcmlzZXVwLm5ldD6JARwEEAECABAFAlCtOu0JEPRqXrSeFozu AACuWgf7BwjKzdC8OJAC2KLH4q++fSE0LW+EGqRY2LNK4i1b4Qx/ZzrfIgxekvcc XjghSD/EhKn4SKaIcjzRpEgZIW2w/BlpkBGWpGn3D9KRbsWhCDrhgsBdnBWmH3Lm geYLjgE8sJEna6whrXuuLx8wgyFSdbzpL+yafw9/pBdBU9y+bRdT5HUfmd1TSRl+ B89q0vBAKG4KP+jFjh3Fcu4jpTeleuRl9kM1sBciBUbkvIPHQd1a9n/BW3bwEc/x m6UF7mVmvUaSkHO7tCBacDmtWsBilq9fO6+KCw3OfOfAJr3ta0miihWLoPZXZTRs T26VEAvIdnK94/zxHe9JUFr4+9O+qw== =Kk5i -----END PGP PUBLIC KEY BLOCK----- |
From: Bako M. <mi...@sb...> - 2014-02-20 17:50:22
|
Hi Honza, thank you very much, in this case I will try to upgrade. I hope I will not need other patching. best, Misi On 2014-02-20 19:18, Honza Malik wrote: > Hi Misi, > >> did: >> >> svn switch --relocate >> https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk >> https://svn.code.sf.net/p/apc-aa/svn/trunk . > Good. SVN repository of Sourceforge has moved some time ago, so the provided > command is necessary for older SVN installs. > >> got the update, and after database update failed with: >> >> *Warning*: mysqli_connect() [function.mysqli-connect >> <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): >> Unknown MySQL server host 'p:localhost' (1) in >> */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on >> line *72* >> >> *Database error:* connect (p:localhost, ekledo_adbusr, $Password, >> ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) >> *Error Number:*: 0 >> >> I am currently running PHP Version 5.2.17* > We switched from deprecated ext/mysql to modern ext/mysqli extension. The new > extension supports persistent connection (see ...host 'p:localhost'.... above) > from PHP 5.3. So yes - it is PHP version related. You can fix this by using > Non persistent connection to the database - see AA_USE_NON_PERSISTENT_CONNECT > in your config.php3. > > This will solve the DB connection problem, but there are probably more spots, > where we use PHP 5.3 constructs (like the one in site.php3* line *115*) > The tested version of PHP with current AA is PHP 5.3 - 5.5, so I would > recommend to upgrade PHP. > > The register_globals is no longer issue for current AA. It could be the > problem for other apps, of course. > >> Last time I had to downgrade PHP because register globals = off did not >> work. Now if I upgrade php all other sites with reg.globals = on will >> stop - meaning that I have to upgrade all sites at once and pray new >> version will work because I can not go back afterwards. > You have to upgrade PHP in near future in all cases, so now is probably the > right time to do that. If you do not have time to convert all of your sites to > PHP 5.5, I can patch the perm_sql.php3 file for you, so you can just replace > it in your old AA install. However, this it just temporary solution. > > Honza > > > > > Dne Čt 20. února 2014 Bako Mihaly napsal(a): >> Hi Honza! >> >> After >> >> svn update >> >> got: >> >> svn: Repository moved permanently to >> 'https://svn.code.sf.net/p/apc-aa/svn/trunk'; please relocate >> >> did: >> >> svn switch --relocate >> https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk >> https://svn.code.sf.net/p/apc-aa/svn/trunk . >> >> got the update, and after database update failed with: >> >> *Warning*: mysqli_connect() [function.mysqli-connect >> <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): >> Unknown MySQL server host 'p:localhost' (1) in >> */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on >> line *72* >> >> *Database error:* connect (p:localhost, ekledo_adbusr, $Password, >> ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) >> *Error Number:*: 0 >> >> I am currently running PHP Version 5.2.17* >> >> I got when connecting to site: >> >> Parse error*: syntax error, unexpected ':' in >> */home/ekledo/public_html/apc-aa_2.50/modules/site/site.php3* on line *115* >> >> Is this because PHP is to old? >> >> Last time I had to downgrade PHP because register globals = off did not >> work. Now if I upgrade php all other sites with reg.globals = on will >> stop - meaning that I have to upgrade all sites at once and pray new >> version will work because I can not go back afterwards. >> >> What do you suggest? >> >> best, >> >> Misi >> >> On 2014-02-19 19:15, Honza Malik wrote: >>> Hi all, >>> >>> Gert Steenssens found SQL INJECTION problem in our SQL permission >>> system, >>> >>> which were there for a long time from its beginning phase. >>> >>> All systems, which uses SQL based permission system should be updated >>> (see >>> >>> the line define("PERM_LIB", "sql") in your config.php3 script). The >>> systems which uses LDAP permission system are not affected. >>> >>> The database structure is stable for quite a long time, so any update >>> from >>> >>> Subversion should be quite easy - just type: >>> svn update >>> >>> The current AA in SVN works well with PHP 5.3, 5.4 and 5.5 and MySQL >>> >= 5.0 >>> >>> (or MariaDB). >>> >>> Thanks Gert for the report, >>> >>> Honza >>> >>> ------------------------------------------------------------------------- >>> ----- Managing the Performance of Cloud-Based Applications >>> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >>> Read the Whitepaper. >>> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clk >>> trk _______________________________________________ >>> "Did you get answers to your ActionApps-related queries? If yes, please >>> help the ActionApps community by uploading the answers onto appropriate >>> space in the ActionApps documentation wiki. See the *How to contribute* >>> section today http://actionapps.org/en/How_To_Contribute" >>> _______________________________________________ >>> apc-aa-general mailing list >>> apc...@li... >>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >> --------------------------------------------------------------------------- >> --- Managing the Performance of Cloud-Based Applications >> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >> Read the Whitepaper. >> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktr >> k _______________________________________________ >> "Did you get answers to your ActionApps-related queries? If yes, please >> help the ActionApps community by uploading the answers onto appropriate >> space in the ActionApps documentation wiki. See the *How to contribute* >> section today http://actionapps.org/en/How_To_Contribute" >> _______________________________________________ >> apc-aa-general mailing list >> apc...@li... >> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Honza M. <hon...@ec...> - 2014-02-20 17:18:53
|
Hi Misi, > did: > > svn switch --relocate > https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk > https://svn.code.sf.net/p/apc-aa/svn/trunk . Good. SVN repository of Sourceforge has moved some time ago, so the provided command is necessary for older SVN installs. > got the update, and after database update failed with: > > *Warning*: mysqli_connect() [function.mysqli-connect > <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): > Unknown MySQL server host 'p:localhost' (1) in > */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on > line *72* > > *Database error:* connect (p:localhost, ekledo_adbusr, $Password, > ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) > *Error Number:*: 0 > > I am currently running PHP Version 5.2.17* We switched from deprecated ext/mysql to modern ext/mysqli extension. The new extension supports persistent connection (see ...host 'p:localhost'.... above) from PHP 5.3. So yes - it is PHP version related. You can fix this by using Non persistent connection to the database - see AA_USE_NON_PERSISTENT_CONNECT in your config.php3. This will solve the DB connection problem, but there are probably more spots, where we use PHP 5.3 constructs (like the one in site.php3* line *115*) The tested version of PHP with current AA is PHP 5.3 - 5.5, so I would recommend to upgrade PHP. The register_globals is no longer issue for current AA. It could be the problem for other apps, of course. > Last time I had to downgrade PHP because register globals = off did not > work. Now if I upgrade php all other sites with reg.globals = on will > stop - meaning that I have to upgrade all sites at once and pray new > version will work because I can not go back afterwards. You have to upgrade PHP in near future in all cases, so now is probably the right time to do that. If you do not have time to convert all of your sites to PHP 5.5, I can patch the perm_sql.php3 file for you, so you can just replace it in your old AA install. However, this it just temporary solution. Honza Dne Čt 20. února 2014 Bako Mihaly napsal(a): > Hi Honza! > > After > > svn update > > got: > > svn: Repository moved permanently to > 'https://svn.code.sf.net/p/apc-aa/svn/trunk'; please relocate > > did: > > svn switch --relocate > https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk > https://svn.code.sf.net/p/apc-aa/svn/trunk . > > got the update, and after database update failed with: > > *Warning*: mysqli_connect() [function.mysqli-connect > <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): > Unknown MySQL server host 'p:localhost' (1) in > */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on > line *72* > > *Database error:* connect (p:localhost, ekledo_adbusr, $Password, > ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) > *Error Number:*: 0 > > I am currently running PHP Version 5.2.17* > > I got when connecting to site: > > Parse error*: syntax error, unexpected ':' in > */home/ekledo/public_html/apc-aa_2.50/modules/site/site.php3* on line *115* > > Is this because PHP is to old? > > Last time I had to downgrade PHP because register globals = off did not > work. Now if I upgrade php all other sites with reg.globals = on will > stop - meaning that I have to upgrade all sites at once and pray new > version will work because I can not go back afterwards. > > What do you suggest? > > best, > > Misi > > On 2014-02-19 19:15, Honza Malik wrote: > > Hi all, > > > > Gert Steenssens found SQL INJECTION problem in our SQL permission > > system, > > > > which were there for a long time from its beginning phase. > > > > All systems, which uses SQL based permission system should be updated > > (see > > > > the line define("PERM_LIB", "sql") in your config.php3 script). The > > systems which uses LDAP permission system are not affected. > > > > The database structure is stable for quite a long time, so any update > > from > > > > Subversion should be quite easy - just type: > > svn update > > > > The current AA in SVN works well with PHP 5.3, 5.4 and 5.5 and MySQL > > >= 5.0 > > > > (or MariaDB). > > > > Thanks Gert for the report, > > > > Honza > > > > ------------------------------------------------------------------------- > > ----- Managing the Performance of Cloud-Based Applications > > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > > Read the Whitepaper. > > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clk > > trk _______________________________________________ > > "Did you get answers to your ActionApps-related queries? If yes, please > > help the ActionApps community by uploading the answers onto appropriate > > space in the ActionApps documentation wiki. See the *How to contribute* > > section today http://actionapps.org/en/How_To_Contribute" > > _______________________________________________ > > apc-aa-general mailing list > > apc...@li... > > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > --------------------------------------------------------------------------- > --- Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktr > k _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Bako M. <mi...@sb...> - 2014-02-20 16:35:20
|
Hi Honza! After svn update got: svn: Repository moved permanently to 'https://svn.code.sf.net/p/apc-aa/svn/trunk'; please relocate did: svn switch --relocate https://apc-aa.svn.sourceforge.net/svnroot/apc-aa/trunk https://svn.code.sf.net/p/apc-aa/svn/trunk . got the update, and after database update failed with: *Warning*: mysqli_connect() [function.mysqli-connect <http://ekonoled.ro/aa/service/function.mysqli-connect>]: (HY000/2005): Unknown MySQL server host 'p:localhost' (1) in */home/ekledo/public_html/apc-aa_2.50/include/phplib/db_mysql.inc* on line *72* *Database error:* connect (p:localhost, ekledo_adbusr, $Password, ekledo_aadb) failed - 2005 - Unknown MySQL server host 'p:localhost' (1) *Error Number:*: 0 I am currently running PHP Version 5.2.17* I got when connecting to site: Parse error*: syntax error, unexpected ':' in */home/ekledo/public_html/apc-aa_2.50/modules/site/site.php3* on line *115* Is this because PHP is to old? Last time I had to downgrade PHP because register globals = off did not work. Now if I upgrade php all other sites with reg.globals = on will stop - meaning that I have to upgrade all sites at once and pray new version will work because I can not go back afterwards. What do you suggest? best, Misi On 2014-02-19 19:15, Honza Malik wrote: > Hi all, > > Gert Steenssens found SQL INJECTION problem in our SQL permission system, > which were there for a long time from its beginning phase. > > All systems, which uses SQL based permission system should be updated (see > the line define("PERM_LIB", "sql") in your config.php3 script). The systems > which uses LDAP permission system are not affected. > > The database structure is stable for quite a long time, so any update from > Subversion should be quite easy - just type: > > svn update > > The current AA in SVN works well with PHP 5.3, 5.4 and 5.5 and MySQL >= 5.0 > (or MariaDB). > > Thanks Gert for the report, > > Honza > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > |
From: Honza M. <hon...@ec...> - 2014-02-19 17:15:16
|
Hi all, Gert Steenssens found SQL INJECTION problem in our SQL permission system, which were there for a long time from its beginning phase. All systems, which uses SQL based permission system should be updated (see the line define("PERM_LIB", "sql") in your config.php3 script). The systems which uses LDAP permission system are not affected. The database structure is stable for quite a long time, so any update from Subversion should be quite easy - just type: svn update The current AA in SVN works well with PHP 5.3, 5.4 and 5.5 and MySQL >= 5.0 (or MariaDB). Thanks Gert for the report, Honza |
From: Julián C. G. <ju...@co...> - 2014-01-29 14:48:15
|
Good morning, Regarding your question our AAs was scanned in the past. /The security scan was performed using Cenzic Hailstorm v6.6 Enterprise Edition. The assessment type was OWAPS Top 10. The method of traversal through the web pages was a spider traversal of all objects within and related to a single community (Security)/. All results were shared with developers (mainly Honza) that support us solving the problems found. Best, Julián El 29/01/14 01:01, Gert Steenssens escribió: > Hi, > > > Has actionapps ever been screened for security risks such as XSS and SQL > injection? > > thanks > > > ------------------------------------------------------------------------------ > WatchGuard Dimension instantly turns raw network data into actionable > security intelligence. It gives you real-time visual feedback on key > security issues and trends. Skip the complicated setup - simply import > a virtual appliance and go from zero to informed in seconds. > http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > -- Julian Casasbuenas G. Director Colnodo Diagonal 40A (Antigua Av. 39) No. 14-75, Bogotá, Colombia Tel: 57-1-2324246, Cel. 57-315-3339099 Fax: 57-1-3380264 Twitter @jcasasbuenas @colnodo www.colnodo.apc.org - Uso Estratégico de Internet para el Desarrollo Miembro de la Asociación para el Progreso de las Comunicaciones -APC- www.apc.org |
From: Honza M. <hon...@ec...> - 2014-01-29 12:07:06
|
Hi Gert, we are taking the security quite seriously, so we are trying to prevent such risks. On the other hand we do not have any automatical screener, so if you have some screening tool or you want to help with the security screening, you are welcome, of course. Honza Dne St 29. ledna 2014 Gert Steenssens napsal(a): > Hi, > > > Has actionapps ever been screened for security risks such as XSS and SQL > injection? > > thanks > > > --------------------------------------------------------------------------- > --- WatchGuard Dimension instantly turns raw network data into actionable > security intelligence. It gives you real-time visual feedback on key > security issues and trends. Skip the complicated setup - simply import a > virtual appliance and go from zero to informed in seconds. > http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktr > k _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Gert S. <gst...@ri...> - 2014-01-29 06:01:42
|
Hi, Has actionapps ever been screened for security risks such as XSS and SQL injection? thanks |
From: Bako M. <mi...@sb...> - 2013-12-18 18:26:12
|
Thank you Honza and Dan for the quick answer! I will get back with feed-back after upgrade. I was asking about user interface - if it is not a problem/risk to use the session variables, I am fine with it. Best, Misi On 2013-12-18 15:41, Honza Malik wrote: > Hi Misi, > > ad 1) AA with register_globals Off > > current svn is stable, we are using it on several prodiction servers. We > run it on PHP 5.5 as well 5.3, and there is no problem with register_globals. > > So, the upgrade the AA, as well as PHP and MySQL/MariaDB to latest versions > is recommended. > > ad 2) use cookies instead of session variables in URL > > We do not use cookies for sessions in AA admin interface. The PHPlib, which > we use for it have some settings for it (include/extsessi.php3), but we do not > use it, so I can't say, if it would work. > > In admin interface I think it is no problem, to use it in URL. > > Another thing is, if you are using login to public pages weith {xuser}, ... > There we use cookies for the logged user, so maybe it is what you want. > > Honza > > > Dne St 18. prosince 2013 Bako Mihaly napsal(a): >> Hi Honza, >> >> I have two problems: >> >> 1. how to use AA with register_globals Off and >> >> 2. how to use cookies instead of session variables in URL >> >> I have upgraded to AA version 2.50 around march 10, 2013 >> >> If I switch register_globals Off, the site is not displayed, I get: >> >> "Error: no 'site_id' or 'site_id' is invalid" >> >> I have PHP 5.2.17 and MySQL 5.0 >> >> I have to upgrade urgently to MySQL 5.5 and probably PHP will be >> upgraded too, meaning that I can not use register_globals On any more. >> >> Is current svn stable? Should I upgrade? >> >> Thank you, >> >> misi >> >> --------------------------------------------------------------------------- >> --- Rapidly troubleshoot problems before they affect your business. Most IT >> organizations don't have a clear picture of how application performance >> affects their revenue. With AppDynamics, you get 100% visibility into your >> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics >> Pro! >> http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktr >> k _______________________________________________ >> "Did you get answers to your ActionApps-related queries? If yes, please >> help the ActionApps community by uploading the answers onto appropriate >> space in the ActionApps documentation wiki. See the *How to contribute* >> section today http://actionapps.org/en/How_To_Contribute" >> _______________________________________________ >> apc-aa-general mailing list >> apc...@li... >> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > ------------------------------------------------------------------------------ > Rapidly troubleshoot problems before they affect your business. Most IT > organizations don't have a clear picture of how application performance > affects their revenue. With AppDynamics, you get 100% visibility into your > Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! > http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > |
From: Honza M. <hon...@ec...> - 2013-12-18 13:58:40
|
Hi Misi, ad 1) AA with register_globals Off current svn is stable, we are using it on several prodiction servers. We run it on PHP 5.5 as well 5.3, and there is no problem with register_globals. So, the upgrade the AA, as well as PHP and MySQL/MariaDB to latest versions is recommended. ad 2) use cookies instead of session variables in URL We do not use cookies for sessions in AA admin interface. The PHPlib, which we use for it have some settings for it (include/extsessi.php3), but we do not use it, so I can't say, if it would work. In admin interface I think it is no problem, to use it in URL. Another thing is, if you are using login to public pages weith {xuser}, ... There we use cookies for the logged user, so maybe it is what you want. Honza Dne St 18. prosince 2013 Bako Mihaly napsal(a): > Hi Honza, > > I have two problems: > > 1. how to use AA with register_globals Off and > > 2. how to use cookies instead of session variables in URL > > I have upgraded to AA version 2.50 around march 10, 2013 > > If I switch register_globals Off, the site is not displayed, I get: > > "Error: no 'site_id' or 'site_id' is invalid" > > I have PHP 5.2.17 and MySQL 5.0 > > I have to upgrade urgently to MySQL 5.5 and probably PHP will be > upgraded too, meaning that I can not use register_globals On any more. > > Is current svn stable? Should I upgrade? > > Thank you, > > misi > > --------------------------------------------------------------------------- > --- Rapidly troubleshoot problems before they affect your business. Most IT > organizations don't have a clear picture of how application performance > affects their revenue. With AppDynamics, you get 100% visibility into your > Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics > Pro! > http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktr > k _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Bako M. <mi...@sb...> - 2013-12-18 12:22:07
|
Hi Honza, I have two problems: 1. how to use AA with register_globals Off and 2. how to use cookies instead of session variables in URL I have upgraded to AA version 2.50 around march 10, 2013 If I switch register_globals Off, the site is not displayed, I get: "Error: no 'site_id' or 'site_id' is invalid" I have PHP 5.2.17 and MySQL 5.0 I have to upgrade urgently to MySQL 5.5 and probably PHP will be upgraded too, meaning that I can not use register_globals On any more. Is current svn stable? Should I upgrade? Thank you, misi |
From: Honza M. <hon...@ec...> - 2013-03-06 12:16:08
|
Oh - yes, you are right - following is correct. ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NULL Honza Dne St 6. března 2013 Bako Mihaly napsal(a): > Dear Honza, > > can you answer this please? Might be important. > > I got an error in this line at the end: > > ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NOT > > Is that: > > ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NULL > > or something else? > > > Misi > > On 2013-03-01 15:25, Bako Mihaly wrote: > > Thank you very much Honza! > > > > I got an error in this line at the end: > > > > ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NOT > > > > Is that: > > > > ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NULL > > > > or something else? > > > > Best, > > > > Misi > > > > On 2013-03-01 10:13, Honza Malik wrote: > >> Hola Misi, > >> > >>> I am after upgrade of MySQL to 5.0.96. > >> > >> Great. > >> > >> We do not use PEAR - you do not need it. The script (your and mine) is > >> part of AA and is used just to run some SQL commands. You can extract > >> the SQL commands from it and just run them in MySQL. The extracted SQL > >> commands are below. > >> > >> After runing this commands, the old version of AA should be working well > >> on new MySQL >5. > >> > >> Then you can upgrade AA to the latest version and run > >> https://example.org/apc-aa/service/sql_update.php script. > >> > >>> Is it possible to upgrade directly from 2.8.1 to 2.50 ? > >> > >> I never tested it, but the sql_update.php script should do everything > >> necessary, so I'm quite sure it is possible. We are trying to be > >> backward compatible as much as possible. > >> > >> As allways, the backup of AA and DB is essential. > >> > >> Honza > >> > >> ------------------------------------------------------------------------ > >> -------------------------------- SQL commnds to fix table fields after > >> upgrade from MySQL 4 to 5 (if some command is not working, don't worry > >> - you have older AA and some tables could not be present in the > >> database. Just skip it) > >> ----------------------------------------------------------------------- > >> --------------------------------- > >> > >> ALTER TABLE `active_sessions` CHANGE `sid` `sid` varbinary(32) NOT NULL > >> default '' UPDATE `active_sessions` SET sid=TRIM(TRAILING '' FROM sid) > >> ALTER TABLE `change` CHANGE `id` `id` varbinary(32) NOT NULL default '' > >> UPDATE `change` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `change` CHANGE `resource_id` `resource_id` varbinary(32) > >> NOT NULL default '' UPDATE `change` SET resource_id=TRIM(TRAILING '' > >> FROM resource_id) ALTER TABLE `change_record` CHANGE `change_id` > >> `change_id` varbinary(32) NOT NULL default '' UPDATE `change_record` > >> SET change_id=TRIM(TRAILING '' FROM change_id) ALTER TABLE > >> `change_record` CHANGE `selector` `selector` varbinary(255) default > >> NULL UPDATE `change_record` SET selector=TRIM(TRAILING '' FROM > >> selector) ALTER TABLE `central_conf` CHANGE `dns_conf` `dns_conf` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> dns_conf=TRIM(TRAILING '' FROM dns_conf) ALTER TABLE `central_conf` > >> CHANGE `dns_web` `dns_web` varbinary(15) NOT NULL default '' UPDATE > >> `central_conf` SET dns_web=TRIM(TRAILING '' FROM dns_web) ALTER TABLE > >> `central_conf` CHANGE `dns_mx` `dns_mx` varbinary(15) NOT NULL default > >> '' UPDATE `central_conf` SET dns_mx=TRIM(TRAILING '' FROM dns_mx) > >> ALTER TABLE `central_conf` CHANGE `dns_db` `dns_db` varbinary(15) NOT > >> NULL default '' UPDATE `central_conf` SET dns_db=TRIM(TRAILING '' FROM > >> dns_db) > >> ALTER TABLE `central_conf` CHANGE `dns_prim` `dns_prim` varbinary(255) > >> NOT NULL default '' UPDATE `central_conf` SET dns_prim=TRIM(TRAILING '' > >> FROM dns_prim) ALTER TABLE `central_conf` CHANGE `dns_sec` `dns_sec` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> dns_sec=TRIM(TRAILING '' FROM dns_sec) ALTER TABLE `central_conf` > >> CHANGE `web_conf` `web_conf` varbinary(255) NOT NULL default '' UPDATE > >> `central_conf` SET web_conf=TRIM(TRAILING '' FROM web_conf) ALTER TABLE > >> `central_conf` CHANGE `web_path` `web_path` varbinary(255) NOT NULL > >> default '' UPDATE `central_conf` SET web_path=TRIM(TRAILING '' FROM > >> web_path) ALTER TABLE `central_conf` CHANGE `db_server` `db_server` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> db_server=TRIM(TRAILING '' FROM db_server) ALTER TABLE `central_conf` > >> CHANGE `db_name` `db_name` varbinary(255) NOT NULL default '' UPDATE > >> `central_conf` SET db_name=TRIM(TRAILING '' FROM db_name) ALTER TABLE > >> `central_conf` CHANGE `db_user` `db_user` varbinary(255) NOT NULL > >> default '' UPDATE `central_conf` SET db_user=TRIM(TRAILING '' FROM > >> db_user) ALTER TABLE `central_conf` CHANGE `db_pwd` `db_pwd` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> db_pwd=TRIM(TRAILING '' FROM db_pwd) > >> ALTER TABLE `central_conf` CHANGE `AA_SITE_PATH` `AA_SITE_PATH` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> AA_SITE_PATH=TRIM(TRAILING '' FROM AA_SITE_PATH) ALTER TABLE > >> `central_conf` CHANGE `AA_BASE_DIR` `AA_BASE_DIR` varbinary(255) NOT > >> NULL default '' UPDATE `central_conf` SET AA_BASE_DIR=TRIM(TRAILING '' > >> FROM AA_BASE_DIR) ALTER TABLE `central_conf` CHANGE `AA_HTTP_DOMAIN` > >> `AA_HTTP_DOMAIN` varbinary(255) NOT NULL default '' UPDATE > >> `central_conf` SET AA_HTTP_DOMAIN=TRIM(TRAILING '' FROM AA_HTTP_DOMAIN) > >> ALTER TABLE `central_conf` CHANGE `AA_ID` `AA_ID` varbinary(32) NOT > >> NULL default '' UPDATE `central_conf` SET AA_ID=TRIM(TRAILING '' FROM > >> AA_ID) > >> ALTER TABLE `central_conf` CHANGE `ORG_NAME` `ORG_NAME` varbinary(255) > >> NOT NULL default '' UPDATE `central_conf` SET ORG_NAME=TRIM(TRAILING '' > >> FROM ORG_NAME) ALTER TABLE `central_conf` CHANGE > >> `ERROR_REPORTING_EMAIL` `ERROR_REPORTING_EMAIL` varbinary(255) NOT NULL > >> default '' UPDATE `central_conf` SET > >> ERROR_REPORTING_EMAIL=TRIM(TRAILING '' FROM ERROR_REPORTING_EMAIL) > >> ALTER TABLE `central_conf` CHANGE `ALERTS_EMAIL` `ALERTS_EMAIL` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> ALERTS_EMAIL=TRIM(TRAILING '' FROM ALERTS_EMAIL) ALTER TABLE > >> `central_conf` CHANGE `IMG_UPLOAD_URL` `IMG_UPLOAD_URL` varbinary(255) > >> NOT NULL default '' UPDATE `central_conf` SET > >> IMG_UPLOAD_URL=TRIM(TRAILING '' FROM IMG_UPLOAD_URL) ALTER TABLE > >> `central_conf` CHANGE `IMG_UPLOAD_PATH` `IMG_UPLOAD_PATH` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> IMG_UPLOAD_PATH=TRIM(TRAILING '' FROM IMG_UPLOAD_PATH) ALTER TABLE > >> `central_conf` CHANGE `FILEMAN_BASE_DIR` `FILEMAN_BASE_DIR` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> FILEMAN_BASE_DIR=TRIM(TRAILING '' FROM FILEMAN_BASE_DIR) ALTER TABLE > >> `central_conf` CHANGE `FILEMAN_BASE_URL` `FILEMAN_BASE_URL` > >> varbinary(255) NOT NULL default '' UPDATE `central_conf` SET > >> FILEMAN_BASE_URL=TRIM(TRAILING '' FROM FILEMAN_BASE_URL) ALTER TABLE > >> `central_conf` CHANGE `AA_ADMIN_USER` `AA_ADMIN_USER` varbinary(30) NOT > >> NULL default '' UPDATE `central_conf` SET AA_ADMIN_USER=TRIM(TRAILING > >> '' FROM AA_ADMIN_USER) ALTER TABLE `central_conf` CHANGE `AA_ADMIN_PWD` > >> `AA_ADMIN_PWD` varbinary(30) NOT NULL default '' UPDATE `central_conf` > >> SET AA_ADMIN_PWD=TRIM(TRAILING '' FROM AA_ADMIN_PWD) ALTER TABLE > >> `content` CHANGE `item_id` `item_id` varbinary(16) NOT NULL default '' > >> UPDATE `content` SET item_id=TRIM(TRAILING '' FROM item_id) > >> ALTER TABLE `content` CHANGE `field_id` `field_id` varbinary(16) NOT > >> NULL default '' UPDATE `content` SET field_id=TRIM(TRAILING '' FROM > >> field_id) > >> ALTER TABLE `discussion` CHANGE `id` `id` varbinary(16) NOT NULL default > >> '' UPDATE `discussion` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `discussion` CHANGE `parent` `parent` varbinary(16) NOT NULL > >> default '' UPDATE `discussion` SET parent=TRIM(TRAILING '' FROM parent) > >> ALTER TABLE `discussion` CHANGE `item_id` `item_id` varbinary(16) NOT > >> NULL default '' UPDATE `discussion` SET item_id=TRIM(TRAILING '' FROM > >> item_id) > >> ALTER TABLE `ef_categories` CHANGE `category_id` `category_id` > >> varbinary(16) NOT NULL default '' UPDATE `ef_categories` SET > >> category_id=TRIM(TRAILING '' FROM category_id) ALTER TABLE > >> `ef_categories` CHANGE `target_category_id` `target_category_id` > >> varbinary(16) NOT NULL default '' UPDATE `ef_categories` SET > >> target_category_id=TRIM(TRAILING '' FROM target_category_id) ALTER > >> TABLE `ef_permissions` CHANGE `slice_id` `slice_id` varbinary(16) NOT > >> NULL default '' UPDATE `ef_permissions` SET slice_id=TRIM(TRAILING '' > >> FROM slice_id) ALTER TABLE `email` CHANGE `owner_module_id` > >> `owner_module_id` varbinary(16) NOT NULL default '' UPDATE `email` SET > >> owner_module_id=TRIM(TRAILING '' FROM owner_module_id) ALTER TABLE > >> `external_feeds` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL > >> default '' UPDATE `external_feeds` SET slice_id=TRIM(TRAILING '' FROM > >> slice_id) ALTER TABLE `external_feeds` CHANGE `remote_slice_id` > >> `remote_slice_id` varbinary(16) NOT NULL default '' UPDATE > >> `external_feeds` SET remote_slice_id=TRIM(TRAILING '' FROM > >> remote_slice_id) ALTER TABLE `event` CHANGE `id` `id` varbinary(32) NOT > >> NULL default '' UPDATE `event` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `feedmap` CHANGE `from_slice_id` `from_slice_id` > >> varbinary(16) NOT NULL default '' UPDATE `feedmap` SET > >> from_slice_id=TRIM(TRAILING '' FROM from_slice_id) ALTER TABLE > >> `feedmap` CHANGE `from_field_id` `from_field_id` varbinary(16) NOT NULL > >> default '' UPDATE `feedmap` SET from_field_id=TRIM(TRAILING '' FROM > >> from_field_id) ALTER TABLE `feedmap` CHANGE `to_slice_id` `to_slice_id` > >> varbinary(16) NOT NULL default '' UPDATE `feedmap` SET > >> to_slice_id=TRIM(TRAILING '' FROM to_slice_id) ALTER TABLE `feedmap` > >> CHANGE `to_field_id` `to_field_id` varbinary(16) NOT NULL default '' > >> UPDATE `feedmap` SET to_field_id=TRIM(TRAILING '' FROM to_field_id) > >> ALTER TABLE `feedperms` CHANGE `from_id` `from_id` varbinary(16) NOT > >> NULL default '' UPDATE `feedperms` SET from_id=TRIM(TRAILING '' FROM > >> from_id) > >> ALTER TABLE `feedperms` CHANGE `to_id` `to_id` varbinary(16) NOT NULL > >> default '' UPDATE `feedperms` SET to_id=TRIM(TRAILING '' FROM to_id) > >> ALTER TABLE `feeds` CHANGE `from_id` `from_id` varbinary(16) NOT NULL > >> default '' UPDATE `feeds` SET from_id=TRIM(TRAILING '' FROM from_id) > >> ALTER TABLE `feeds` CHANGE `to_id` `to_id` varbinary(16) NOT NULL > >> default '' UPDATE `feeds` SET to_id=TRIM(TRAILING '' FROM to_id) > >> ALTER TABLE `feeds` CHANGE `category_id` `category_id` varbinary(16) NOT > >> NULL default '' UPDATE `feeds` SET category_id=TRIM(TRAILING '' FROM > >> category_id) ALTER TABLE `feeds` CHANGE `to_category_id` > >> `to_category_id` varbinary(16) NOT NULL default '' UPDATE `feeds` SET > >> to_category_id=TRIM(TRAILING '' FROM to_category_id) ALTER TABLE > >> `field` CHANGE `id` `id` varbinary(16) NOT NULL default '' UPDATE > >> `field` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `field` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL > >> default '' UPDATE `field` SET slice_id=TRIM(TRAILING '' FROM slice_id) > >> ALTER TABLE `field` CHANGE `content_id` `content_id` varbinary(16) > >> default NULL UPDATE `field` SET content_id=TRIM(TRAILING '' FROM > >> content_id) ALTER TABLE `jump` CHANGE `slice_id` `slice_id` > >> varbinary(16) NOT NULL default '' UPDATE `jump` SET > >> slice_id=TRIM(TRAILING '' FROM slice_id) > >> ALTER TABLE `jump` CHANGE `dest_slice_id` `dest_slice_id` varbinary(16) > >> NOT NULL default '' UPDATE `jump` SET dest_slice_id=TRIM(TRAILING '' > >> FROM dest_slice_id) ALTER TABLE `object_float` CHANGE `object_id` > >> `object_id` varbinary(16) NOT NULL default '' UPDATE `object_float` SET > >> object_id=TRIM(TRAILING '' FROM object_id) ALTER TABLE `object_float` > >> CHANGE `property` `property` varbinary(32) NOT NULL default '' UPDATE > >> `object_float` SET property=TRIM(TRAILING '' FROM property) ALTER TABLE > >> `object_integer` CHANGE `object_id` `object_id` varbinary(16) NOT NULL > >> default '' UPDATE `object_integer` SET object_id=TRIM(TRAILING '' FROM > >> object_id) ALTER TABLE `object_integer` CHANGE `property` `property` > >> varbinary(32) NOT NULL default '' UPDATE `object_integer` SET > >> property=TRIM(TRAILING '' FROM property) ALTER TABLE `object_text` > >> CHANGE `object_id` `object_id` varbinary(16) NOT NULL default '' UPDATE > >> `object_text` SET object_id=TRIM(TRAILING '' FROM object_id) ALTER > >> TABLE `object_text` CHANGE `property` `property` varbinary(32) NOT NULL > >> default '' UPDATE `object_text` SET property=TRIM(TRAILING '' FROM > >> property) ALTER TABLE `pagecache` CHANGE `id` `id` varbinary(32) NOT > >> NULL default '' UPDATE `pagecache` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `pagecache_str2find` CHANGE `pagecache_id` `pagecache_id` > >> varbinary(32) NOT NULL default '' UPDATE `pagecache_str2find` SET > >> pagecache_id=TRIM(TRAILING '' FROM pagecache_id) ALTER TABLE `polls` > >> CHANGE `id` `id` varbinary(32) NOT NULL default '' UPDATE `polls` SET > >> id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `polls` CHANGE `module_id` `module_id` varbinary(16) NOT > >> NULL default '' UPDATE `polls` SET module_id=TRIM(TRAILING '' FROM > >> module_id) > >> ALTER TABLE `polls` CHANGE `design_id` `design_id` varbinary(32) NOT > >> NULL default '' UPDATE `polls` SET design_id=TRIM(TRAILING '' FROM > >> design_id) > >> ALTER TABLE `polls` CHANGE `aftervote_design_id` `aftervote_design_id` > >> varbinary(32) NOT NULL default '' UPDATE `polls` SET > >> aftervote_design_id=TRIM(TRAILING '' FROM aftervote_design_id) ALTER > >> TABLE `polls_answer` CHANGE `id` `id` varbinary(32) NOT NULL default '' > >> UPDATE `polls_answer` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `polls_answer` CHANGE `poll_id` `poll_id` varbinary(32) NOT > >> NULL default '' UPDATE `polls_answer` SET poll_id=TRIM(TRAILING '' FROM > >> poll_id) ALTER TABLE `polls_design` CHANGE `id` `id` varbinary(32) NOT > >> NULL default '' UPDATE `polls_design` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `polls_ip_lock` CHANGE `poll_id` `poll_id` varbinary(32) NOT > >> NULL default '' UPDATE `polls_ip_lock` SET poll_id=TRIM(TRAILING '' > >> FROM poll_id) ALTER TABLE `polls_log` CHANGE `answer_id` `answer_id` > >> varbinary(32) NOT NULL default '' UPDATE `polls_log` SET > >> answer_id=TRIM(TRAILING '' FROM answer_id) ALTER TABLE `polls_design` > >> CHANGE `module_id` `module_id` varbinary(16) NOT NULL default '' UPDATE > >> `polls_design` SET module_id=TRIM(TRAILING '' FROM module_id) ALTER > >> TABLE `polls_ip_lock` CHANGE `voters_ip` `voters_ip` varbinary(16) NOT > >> NULL UPDATE `polls_ip_lock` SET voters_ip=TRIM(TRAILING '' FROM > >> voters_ip) ALTER TABLE `polls_log` CHANGE `voters_ip` `voters_ip` > >> varbinary(16) NOT NULL default '' UPDATE `polls_log` SET > >> voters_ip=TRIM(TRAILING '' FROM voters_ip) ALTER TABLE `post2shtml` > >> CHANGE `id` `id` varbinary(32) NOT NULL default '' UPDATE `post2shtml` > >> SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `profile` CHANGE `slice_id` `slice_id` varbinary(16) NOT > >> NULL default '' UPDATE `profile` SET slice_id=TRIM(TRAILING '' FROM > >> slice_id) > >> ALTER TABLE `relation` CHANGE `source_id` `source_id` varbinary(16) NOT > >> NULL default '' UPDATE `relation` SET source_id=TRIM(TRAILING '' FROM > >> source_id) ALTER TABLE `relation` CHANGE `destination_id` > >> `destination_id` varbinary(32) NOT NULL default '' UPDATE `relation` > >> SET destination_id=TRIM(TRAILING '' FROM destination_id) ALTER TABLE > >> `rssfeeds` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default > >> '' UPDATE `rssfeeds` SET slice_id=TRIM(TRAILING '' FROM slice_id) > >> ALTER TABLE `site` CHANGE `id` `id` varbinary(16) NOT NULL default '' > >> UPDATE `site` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `site_spot` CHANGE `site_id` `site_id` varbinary(16) NOT > >> NULL default '' UPDATE `site_spot` SET site_id=TRIM(TRAILING '' FROM > >> site_id) > >> ALTER TABLE `slice` CHANGE `id` `id` varbinary(16) NOT NULL default '' > >> UPDATE `slice` SET id=TRIM(TRAILING '' FROM id) > >> ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NOT > >> UPDATE `slice` SET type=TRIM(TRAILING '' FROM type) > >> ALTER TABLE `slice` CHANGE `mlxctrl` `mlxctrl` varbinary(32) NOT NULL > >> default '' UPDATE `slice` SET mlxctrl=TRIM(TRAILING '' FROM mlxctrl) > >> ALTER TABLE `view` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL > >> default '' UPDATE `view` SET slice_id=TRIM(TRAILING '' FROM slice_id) > >> ALTER TABLE `view` CHANGE `order1` `order1` varbinary(16) default NULL > >> UPDATE `view` SET order1=TRIM(TRAILING '' FROM order1) > >> ALTER TABLE `view` CHANGE `order2` `order2` varbinary(16) default NULL > >> UPDATE `view` SET order2=TRIM(TRAILING '' FROM order2) > >> ALTER TABLE `view` CHANGE `group_by1` `group_by1` varbinary(16) default > >> NULL UPDATE `view` SET group_by1=TRIM(TRAILING '' FROM group_by1) > >> ALTER TABLE `view` CHANGE `group_by2` `group_by2` varbinary(16) default > >> NULL UPDATE `view` SET group_by2=TRIM(TRAILING '' FROM group_by2) > >> ALTER TABLE `view` CHANGE `cond1field` `cond1field` varbinary(16) > >> default NULL UPDATE `view` SET cond1field=TRIM(TRAILING '' FROM > >> cond1field) > >> ALTER TABLE `view` CHANGE `cond1op` `cond1op` varbinary(10) default NULL > >> UPDATE `view` SET cond1op=TRIM(TRAILING '' FROM cond1op) > >> ALTER TABLE `view` CHANGE `cond2field` `cond2field` varbinary(16) > >> default NULL UPDATE `view` SET cond2field=TRIM(TRAILING '' FROM > >> cond2field) > >> ALTER TABLE `view` CHANGE `cond2op` `cond2op` varbinary(10) default NULL > >> UPDATE `view` SET cond2op=TRIM(TRAILING '' FROM cond2op) > >> ALTER TABLE `view` CHANGE `cond3field` `cond3field` varbinary(16) > >> default NULL UPDATE `view` SET cond3field=TRIM(TRAILING '' FROM > >> cond3field) > >> ALTER TABLE `view` CHANGE `cond3op` `cond3op` varbinary(10) default NULL > >> UPDATE `view` SET cond3op=TRIM(TRAILING '' FROM cond3op) > >> ALTER TABLE `view` CHANGE `field1` `field1` varbinary(16) default NULL > >> UPDATE `view` SET field1=TRIM(TRAILING '' FROM field1) > >> ALTER TABLE `view` CHANGE `field2` `field2` varbinary(16) default NULL > >> UPDATE `view` SET field2=TRIM(TRAILING '' FROM field2) > >> ALTER TABLE `view` CHANGE `field3` `field3` varbinary(16) default NULL > >> UPDATE `view` SET field3=TRIM(TRAILING '' FROM field3) > >> > >> Dne Čt 28. února 2013 Bako Mihaly napsal(a): > >>> Thank you very much Honza! > >>> > >>> I am after upgrade of MySQL to 5.0.96. > >>> > >>> My current working version of AA is 2.8.1. Is this script applicable > >>> within 2.8.1 ? > >>> > >>> Apparently is working under 2.50, however I don't have PEAR - therefore > >>> could not run test.php from 2.50 version package yet. I have to include > >>> the script somewhere in test.php, right? > >>> > >>> I am on a server with cpanel+WHM, I have to figure out how to install > >>> PEAR. > >>> > >>> I understood that I have to include this script within test.php file. > >>> > >>> Do I have to run it before sql_update.php? > >>> > >>> Is it possible to upgrade directly from 2.8.1 to 2.50 ? > >>> > >>> Is it possible to go around PEAR somehow, or PEAR must be installed? > >>> > >>> Sorry for all these questions .... > >>> > >>> Thank you, > >>> > >>> Misi > >>> > >>> On 2013-02-27 16:52, Honza Malik wrote: > >>>> Hola Misi, > >>>> > >>>> I would suggest to go step after step, not to do two steps in > >>>> one time. So, the first thing is to upgrade MySQL and then AA > >>>> (or > >>>> > >>>> oposite, but I think the first order could be easier). > >>>> > >>>> For the upgrade of MySQL. Yes, there was big changes in handling > >>>> of encoding between MySQL 4.x and 5.x, so the script you > >>>> > >>>> mentioned is needed for removing trailing zeros. The current version > >>>> of this fix is a bit updated, so you can use the latest version of > >>>> this script which is in current AA - I'm attaching it at the end of > >>>> the mail. > >>>> > >>>> There is no need to convert whole database to utf-8. Our older slices > >>>> are in windows-1250 encoding and it works all the time we use AA. So, > >>>> there must be the way, how to configure the connection between AA and > >>>> MySQL properly. > >>>> > >>>> There is configuration option in AA config.php3 file, which we use this way (for windows-1250 encoding): > >>>> ------------------------------------------------------------------ > >>>> /** MySQL 4.1 is able to use different character sets for the > >>>> communication. > >>>> > >>>> * Standard for MySQL client communication in PHP5 is UTF > >>>> (probably), but if * you are using another character sets (maybe > >>>> for historical reason), then you * need to specify it by "SET > >>>> CHARACTER SET" and "SET COLLATION_CONNECTION" SQL * commands. > >>>> Just set the right values to following variables. * We use (for > >>>> czech character set "Windows 1250"): > >>>> * define("DB_CHARACTER_SET", "cp1250"); > >>>> * define("DB_COLLATION_CONNECTION", "cp1250_czech_cs"); > >>>> * Default is: commented out > >>>> */ > >>>> > >>>> define("DB_CHARACTER_SET", "cp1250"); > >>>> define("DB_COLLATION_CONNECTION", "cp1250_czech_cs"); > >>>> ------------------------------------------------------------------ > >>>> > >>>> This options should match the database encoding - so latin2 in > >>>> your case. > >>>> > >>>> After this step you should be able to run old AA on newer MySQL > >>>> without any problems. > >>>> > >>>> Then you can upgrade AA - the description of upgrade process is > >>>> on wiki: http://actionapps.org/en/Upgrade_Guide. Current AA are > >>>> > >>>> tested (at least) with PHP 5.2 - 5.3 and MySQL 5.x - 5.5 or MariaDB > >>>> 5.5 > >>>> > >>>> One more note: You mentioned, you do not understand the new > >>>> config.php3 file. It was my fault - the config.php3 script > >>>> should be > >>>> > >>>> the same as for previous version of AA - there are not so many > >>>> changes. The problem is, that I submited wrong file to SVN. Now it is > >>>> fixed, so if you look on the current config.php3 file in SVN, you > >>>> will find old familiar version. > >>>> > >>>> Honza > >>>> > >>>> ------------------------------------------------------------------ > >>>> Fix for trailing zeros > >>>> ------------------------------------------------------------------ > >>>> /** Fix user login problem, constants editiong problem, ... > >>>> > >>>> * Replaces binary fields by varbinary and removes trailing zeros > >>>> * Needed for MySQL > 5.0.17 > >>>> */ > >>>> > >>>> class AA_Optimize_Db_Binary_Traing_Zeros extends AA_Optimize { > >>>> > >>>> /** Name function > >>>> * @return a message > >>>> */ > >>>> function name() { > >>>> > >>>> return _m("Fix user login problem, constants editiong > >>>> problem, ..."); > >>>> > >>>> } > >>>> > >>>> /** Description function > >>>> * @return a message > >>>> */ > >>>> function description() { > >>>> > >>>> return _m("Replaces binary fields by varbinary and removes > >>>> trailing zeros. Needed for MySQL > 5.0.17"); > >>>> > >>>> } > >>>> > >>>> /** implemented actions within this class */ > >>>> function actions() { return array('repair'); } > >>>> > >>>> /** Test function > >>>> * @return true > >>>> */ > >>>> function test() { > >>>> > >>>> return true; > >>>> > >>>> } > >>>> > >>>> /** Repair function > >>>> * repairs tables > >>>> * @return true > >>>> */ > >>>> function repair() { > >>>> > >>>> $this->_fixTable('active_sessions','sid',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('change','id',"varbinary(32) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('change','resource_id',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('change_record','change_id',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('change_record','selector',"varbinary(255) > >>>> default NULL"); > >>>> $this->_fixTable('central_conf','dns_conf',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','dns_web',"varbinary(15) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','dns_mx',"varbinary(15) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('central_conf','dns_db',"varbinary(15) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('central_conf','dns_prim',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','dns_sec',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','web_conf',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','web_path',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','db_server',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','db_name',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','db_user',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','db_pwd',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','AA_SITE_PATH',"varbinary(2 > >>>> 55) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','AA_BASE_DIR',"varbinary(25 > >>>> 5) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','AA_HTTP_DOMAIN',"varbinary > >>>> (255 ) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','AA_ID',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('central_conf','ORG_NAME',"varbinary(255) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','ERROR_REPORTING_EMAIL',"va > >>>> rbin ary(255) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','ALERTS_EMAIL',"varbinary(2 > >>>> 55) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','IMG_UPLOAD_URL',"varbinary > >>>> (255 ) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','IMG_UPLOAD_PATH',"varbinar > >>>> y(25 5) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','FILEMAN_BASE_DIR',"varbina > >>>> ry(2 55) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','FILEMAN_BASE_URL',"varbina > >>>> ry(2 55) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','AA_ADMIN_USER',"varbinary( > >>>> 30) NOT NULL default ''"); > >>>> $this->_fixTable('central_conf','AA_ADMIN_PWD',"varbinary(3 > >>>> 0) NOT NULL default ''"); > >>>> $this->_fixTable('content','item_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('content','field_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('discussion','id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('discussion','parent',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('discussion','item_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('ef_categories','category_id',"varbinary(1 > >>>> 6) NOT NULL default ''"); > >>>> $this->_fixTable('ef_categories','target_category_id',"varb > >>>> inar y(16) NOT NULL default ''"); > >>>> $this->_fixTable('ef_permissions','slice_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('email','owner_module_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('external_feeds','slice_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('external_feeds','remote_slice_id',"varbin > >>>> ary( 16) NOT NULL default ''"); > >>>> $this->_fixTable('event','id',"varbinary(32) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('feedmap','from_slice_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('feedmap','from_field_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('feedmap','to_slice_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('feedmap','to_field_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('feedperms','from_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('feedperms','to_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('feeds','from_id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('feeds','to_id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('feeds','category_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('feeds','to_category_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('field','id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('field','slice_id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('field','content_id',"varbinary(16) > >>>> default NULL"); > >>>> $this->_fixTable('jump','slice_id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('jump','dest_slice_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('object_float','object_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('object_float','property',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('object_integer','object_id',"varbinary(16 > >>>> ) NOT NULL default ''"); > >>>> $this->_fixTable('object_integer','property',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('object_text','object_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('object_text','property',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('pagecache','id',"varbinary(32) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('pagecache_str2find','pagecache_id',"varbi > >>>> nary (32) NOT NULL default ''"); > >>>> $this->_fixTable('polls','id',"varbinary(32) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('polls','module_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('polls','design_id',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('polls','aftervote_design_id',"varbinary(3 > >>>> 2) NOT NULL default ''"); > >>>> $this->_fixTable('polls_answer','id',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('polls_answer','poll_id',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('polls_design','id',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('polls_ip_lock','poll_id',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('polls_log','answer_id',"varbinary(32) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('polls_design','module_id',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('polls_ip_lock','voters_ip',"varbinary(16) > >>>> NOT NULL"); > >>>> $this->_fixTable('polls_log','voters_ip',"varbinary(16) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('post2shtml','id',"varbinary(32) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('profile','slice_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('relation','source_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('relation','destination_id',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('rssfeeds','slice_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('site','id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('site_spot','site_id',"varbinary(16) NOT > >>>> NULL default ''"); > >>>> $this->_fixTable('slice','id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('slice','type',"varbinary(16) default > >>>> NOT"); $this->_fixTable('slice','mlxctrl',"varbinary(32) > >>>> NOT NULL default ''"); > >>>> $this->_fixTable('view','slice_id',"varbinary(16) NOT NULL > >>>> default ''"); > >>>> $this->_fixTable('view','order1',"varbinary(16) default > >>>> NULL"); $this->_fixTable('view','order2',"varbinary(16) > >>>> default NULL"); > >>>> $this->_fixTable('view','group_by1',"varbinary(16) default > >>>> NULL"); $this->_fixTable('view','group_by2',"varbinary(16) > >>>> default NULL"); > >>>> $this->_fixTable('view','cond1field',"varbinary(16) default > >>>> NULL"); $this->_fixTable('view','cond1op',"varbinary(10) > >>>> default NULL"); > >>>> $this->_fixTable('view','cond2field',"varbinary(16) default > >>>> NULL"); $this->_fixTable('view','cond2op',"varbinary(10) > >>>> default NULL"); > >>>> $this->_fixTable('view','cond3field',"varbinary(16) default > >>>> NULL"); $this->_fixTable('view','cond3op',"varbinary(10) > >>>> default NULL"); > >>>> $this->_fixTable('view','field1',"varbinary(16) default > >>>> NULL"); $this->_fixTable('view','field2',"varbinary(16) > >>>> default NULL"); > >>>> $this->_fixTable('view','field3',"varbinary(16) default > >>>> NULL"); > >>>> > >>>> return true; > >>>> > >>>> } > >>>> > >>>> /** Helper _fixTable function */ > >>>> function _fixTable($table, $field, $definition) { > >>>> > >>>> $db = getDb(); > >>>> $SQL = "ALTER TABLE `$table` CHANGE `$field` `$field` > >>>> $definition"; $this->message($SQL); > >>>> $db->query($SQL); > >>>> $SQL = "UPDATE `$table` SET $field=TRIM(TRAILING '\0' FROM > >>>> $field)"; $this->message($SQL); > >>>> $db->query($SQL); > >>>> freeDb($db); > >>>> > >>>> } > >>>> > >>>> } > >>>> > >>>> Dne St 27. února 2013 Bako Mihaly napsal(a): > >>>>> I moved an older copy of a smaller database to another server MySQL > >>>>> v.4.21, and upgraded to 2.10 - a version used by Dan as well. > >>>>> > >>>>> Is there a safe way to convert the data from latin1 to UTF-8? How can > >>>>> I bring that back safely to MySQL 5.0.96? Or it is better to upgrade > >>>>> to current version od AA 2.50 and bring back to 5.0.96 afterwards? > >>>>> > >>>>> Best, > >>>>> > >>>>> Misi > >>>>> > >>>>> On 2013-02-26 14:11, Bako Mihaly wrote: > >>>>>> Hi Honza! > >>>>>> > >>>>>> We have a serious problem upgrading from 2.8.1 to 2.10 - we tried > >>>>>> the script you provided below - constants did not work, however we > >>>>>> can log in after we run it. But we don't see the drop down menu > >>>>>> with the slices - therefore we can not edit anything. The site is > >>>>>> still working. > >>>>>> > >>>>>> Is it possible to go all the way to 2.50? Or to any intermediate > >>>>>> version which has proper sql_update script? I did not understand > >>>>>> config.php in 2.50 at first look, did not try until now. > >>>>>> > >>>>>> We had to upgrade MySQL - and from that moment things went unstable > >>>>>> for editing. > >>>>>> > >>>>>> We might have a code page problem as well, apparently this new > >>>>>> version of MySQL is latin1, with swedish_ci, however we shall have > >>>>>> latin2 for our characters. I had to use latin1 in config.php3 > >>>>>> > >>>>>> Now we have: MySQL 5.0.96 (Client API version), PHP Version 5.2.17, > >>>>>> server CENTOS 5.9 i686 standard. > >>>>>> > >>>>>> Also some hint how to copy safely the database to have a proper test > >>>>>> version would help. I was afraid to do all that on the production > >>>>>> database - and maybe there was some problem with database > >>>>>> replication as well. > >>>>>> > >>>>>> > >>>>>> Any help is welcome, > >>>>>> > >>>>>> thank you. > >>>>>> > >>>>>> Best, > >>>>>> > >>>>>> Misi > >>>>>> > >>>>>> On 2006-08-19 00:01, Honza Malik wrote: > >>>>>>> Hi, > >>>>>>> > >>>>>>> there is problem with MySQL > 5.0.17, which adds to all > >>>>>>> binary data > >>>>>>> > >>>>>>> trailing zeros, which results in the quite strange behaviour: > >>>>>>> INSERT INTO table SET some_binary_field='text'; > >>>>>>> SELECT FROM table WHERE some_binary_field='text'; > >>>>>>> > >>>>>>> 0 Rows returned. > >>>>>>> > >>>>>>> The solution is to change all binary fields to varbinary > >>>>>>> and then > >>>>>>> > >>>>>>> remove all trailing zeros from the field - like: > >>>>>>> ALTER TABLE `users` CHANGE `uid` `uid` varbinary(40) NOT > >>>>>>> NULL default ''; UPDATE `users` SET uid=TRIM(TRAILING '\0' > >>>>>>> FROM uid); > >>>>>>> > >>>>>>> There is 'optimize' class, which should be placed in the > >>>>>>> /test.php3 > >>>>>>> > >>>>>>> file and which repairs all the tables. > >>>>>>> > >>>>>>> Honza > >>>>>>> > >>>>>>> /** Fix user login problem, constants editiong problem, ... > >>>>>>> > >>>>>>> * Replaces binary fields by varbinary and removes trailing > >>>>>>> zeros * Needed for MySQL > 5.0.17 > >>>>>>> */ > >>>>>>> > >>>>>>> class Optimize_db_binary_traing_zeros extends Optimize { > >>>>>>> > >>>>>>> function name() { > >>>>>>> > >>>>>>> return _m("Fix user login problem, constants editiong > >>>>>>> problem, ..."); > >>>>>>> > >>>>>>> } > >>>>>>> > >>>>>>> function description() { > >>>>>>> > >>>>>>> return _m("Replaces binary fields by varbinary and > >>>>>>> removes trailing zeros. Needed for MySQL > 5.0.17"); > >>>>>>> > >>>>>>> } > >>>>>>> > >>>>>>> function test() { > >>>>>>> > >>>>>>> return true; > >>>>>>> > >>>>>>> } > >>>>>>> > >>>>>>> function repair() { > >>>>>>> > >>>>>>> $this->_fixTable('constant','id','varbinary(16) NOT > >>>>>>> NULL default \'\''); > >>>>>>> $this->_fixTable('constant','group_id','varbinary(16) > >>>>>>> NOT NULL default \'\''); > >>>>>>> $this->_fixTable('constant','class','varbinary(16) > >>>>>>> default NULL'); > >>>>>>> $this->_fixTable('alerts_collection','module_id',"varb > >>>>>>> inary (1 6) NOT NULL default ''"); > >>>>>>> $this->_fixTable('alerts_collection','slice_id',"varbi > >>>>>>> nary( 16 ) default NULL"); > >>>>>>> $this->_fixTable('alerts_collection_filter','collectio > >>>>>>> nid', "v arbinary(6) NOT NULL default ''"); > >>>>>>> $this->_fixTable('alerts_collection_howoften','collect > >>>>>>> ionid ', "varbinary(6) NOT NULL default ''"); > >>>>>>> $this->_fixTable('constant_slice','slice_id',"varbinar > >>>>>>> y(16) default NULL"); > >>>>>>> $this->_fixTable('constant_slice','group_id',"varbinar > >>>>>>> y(16) NOT NULL default ''"); > >>>>>>> $this->_fixTable('email_notify','slice_id',"varbinary( > >>>>>>> 16) NOT NULL default ''"); > >>>>>>> $this->_fixTable('item','id',"varbinary(16) NOT NULL > >>>>>>> default ''"); > >>>>>>> $this->_fixTable('item','slice_id',"varbinary(16) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('links','id',"varbinary(16) NOT NULL > >>>>>>> default ''"); > >>>>>>> $this->_fixTable('membership','memberid','varbinary(32 > >>>>>>> ) NOT NULL'); > >>>>>>> $this->_fixTable('module','id',"varbinary(16) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('module','owner',"varbinary(16) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('module','app_id',"varbinary(16) > >>>>>>> default NULL"); > >>>>>>> $this->_fixTable('offline','id',"varbinary(16) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('offline','digest',"varbinary(32) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('perms','objectid',"varbinary(32) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('perms','userid',"varbinary(32) NOT > >>>>>>> NULL default '0'"); > >>>>>>> $this->_fixTable('perms','perm',"varbinary(32) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('polls_log','votersIP',"varbinary(16) > >>>>>>> NOT NULL default ''"); > >>>>>>> $this->_fixTable('slice_owner','id',"varbinary(16) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('subscriptions','slice_owner',"varbin > >>>>>>> ary(1 6) default NULL"); > >>>>>>> $this->_fixTable('users','type',"varbinary(10) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('users','password',"varbinary(30) NOT > >>>>>>> NULL default ''"); > >>>>>>> $this->_fixTable('users','uid',"varbinary(40) NOT > >>>>>>> NULL default ''"); return true; > >>>>>>> > >>>>>>> } > >>>>>>> > >>>>>>> function _fixTable($table, $field, $definition) { > >>>>>>> > >>>>>>> $db = getDb(); > >>>>>>> $SQL = "ALTER TABLE `$table` CHANGE `$field` `$field` > >>>>>>> $definition"; $this->messages($SQL); > >>>>>>> $db->query($SQL); > >>>>>>> $SQL = "UPDATE `$table` SET $field=TRIM(TRAILING '\0' > >>>>>>> FROM $field)"; $this->messages($SQL); > >>>>>>> $db->query($SQL); > >>>>>>> freeDb($db); > >>>>>>> > >>>>>>> } > >>>>>>> > >>>>>>> } > >>>>>>> > >>>>>>> Marek Tichy píše v Pá 18. 08. 2006 v 15:54 +0200: > >>>>>>>> Had the same problem with Mysql 5.0. > >>>>>>>> Any solutions ? > >>>>>>>> Marek > >>>>>>>> > >>>>>>>>> Hi, > >>>>>>>>> > >>>>>>>>> El 24/07/2006 a les 14:58 -0500, Adam Sanchez va escriure: > >>>>>>>>>> After executing sql_update.php3 for the first time, and creating > >>>>>>>>>> the account of the administrator, the listing of slices cannot > >>>>>>>>>> be seen. I have 4 PHP and MySQL 4. I conducted the operation in > >>>>>>>>>> two different servers and it happens to me the same. What can > >>>>>>>>>> be? > >>>>>>>>> > >>>>>>>>> I also found problems: the setup.php3 script fails saying that > >>>>>>>>> it "Can't assign super access permission". > >>>>>>>>> > >>>>>>>>> This seems a problem with database types / conversion. Here is > >>>>>>>>> what the GetObjectsPerms call gets at setup.php3 line 266: > >>>>>>>>> > >>>>>>>>> Array ( > >>>>>>>>> > >>>>>>>>> [1 ] => Array > >>>>>>>>> > >>>>>>>>> ( > >>>>>>>>> > >>>>>>>>> [id] => 1 * > >>>>>>>>> [type] => User * > >>>>>>>>> [name] => Pep Turro > >>>>>>>>> [mail] => pe...@tu... > >>>>>>>>> [perm] => 4 * > >>>>>>>>> > >>>>>>>>> ) > >>>>>>>>> > >>>>>>>>> Note the spaces around... I have added stars (*) to mark end of > >>>>>>>>> lines where additional spaces are present. > >>>>>>>>> > >>>>>>>>> Server info: MySQL 5.0.22, PHP 4.4.2 on Apache 1.3.34. > >>>>>>> > >>>>>>> ------------------------------------------------------------------- > >>>>>>> --- -- - Using Tomcat but need to do more? Need to support web > >>>>>>> services, security? Get stuff done quickly with pre-integrated > >>>>>>> technology to make your job easier Download IBM WebSphere > >>>>>>> Application Server v.1.0.1 based on Apache Geronimo > >>>>>>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1 > >>>>>>> 216 4 2 _______________________________________________ > >>>>>>> "Did you get answers to your ActionApps-related queries? If yes, > >>>>>>> please help the ActionApps community by uploading the answers onto > >>>>>>> appropriate space in the ActionApps documentation wiki. See the > >>>>>>> *How to contribute* section today > >>>>>>> http://actionapps.org/en/How_To_Contribute" > >>>>>>> _______________________________________________ > >>>>>>> apc-aa-general mailing list > >>>>>>> apc...@li... > >>>>>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > >>>>>> > >>>>>> -------------------------------------------------------------------- > >>>>>> --- -- ----- Everyone hates slow websites. So do we. > >>>>>> Make your web apps faster with AppDynamics > >>>>>> Download AppDynamics Lite for free today: > >>>>>> http://p.sf.net/sfu/appdyn_d2d_feb > >>>>>> _______________________________________________ > >>>>>> "Did you get answers to your ActionApps-related queries? If yes, > >>>>>> please help the ActionApps community by uploading the answers onto > >>>>>> appropriate space in the ActionApps documentation wiki. See the > >>>>>> *How to contribute* section today > >>>>>> http://actionapps.org/en/How_To_Contribute" > >>>>>> _______________________________________________ > >>>>>> apc-aa-general mailing list > >>>>>> apc...@li... > >>>>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > >>>>> > >>>>> --------------------------------------------------------------------- > >>>>> --- --- --- Everyone hates slow websites. So do we. > >>>>> Make your web apps faster with AppDynamics > >>>>> Download AppDynamics Lite for free today: > >>>>> http://p.sf.net/sfu/appdyn_d2d_feb > >>>>> _______________________________________________ > >>>>> "Did you get answers to your ActionApps-related queries? If yes, > >>>>> please help the ActionApps community by uploading the answers onto > >>>>> appropriate space in the ActionApps documentation wiki. See the *How > >>>>> to contribute* section today > >>>>> http://actionapps.org/en/How_To_Contribute" > >>>>> _______________________________________________ > >>>>> apc-aa-general mailing list > >>>>> apc...@li... > >>>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > >>>> > >>>> ---------------------------------------------------------------------- > >>>> --- ----- Everyone hates slow websites. So do we. > >>>> Make your web apps faster with AppDynamics > >>>> Download AppDynamics Lite for free today: > >>>> http://p.sf.net/sfu/appdyn_d2d_feb > >>>> _______________________________________________ > >>>> "Did you get answers to your ActionApps-related queries? If yes, > >>>> please help the ActionApps community by uploading the answers onto > >>>> appropriate space in the ActionApps documentation wiki. See the *How > >>>> to contribute* section today > >>>> http://actionapps.org/en/How_To_Contribute" > >>>> _______________________________________________ > >>>> apc-aa-general mailing list > >>>> apc...@li... > >>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > >>> > >>> ----------------------------------------------------------------------- > >>> ---- --- Everyone hates slow websites. So do we. > >>> Make your web apps faster with AppDynamics > >>> Download AppDynamics Lite for free today: > >>> http://p.sf.net/sfu/appdyn_d2d_feb > >>> _______________________________________________ > >>> "Did you get answers to your ActionApps-related queries? If yes, please > >>> help the ActionApps community by uploading the answers onto appropriate > >>> space in the ActionApps documentation wiki. See the *How to contribute* > >>> section today http://actionapps.org/en/How_To_Contribute" > >>> _______________________________________________ > >>> apc-aa-general mailing list > >>> apc...@li... > >>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > >> > >> ------------------------------------------------------------------------ > >> ------ Everyone hates slow websites. So do we. > >> Make your web apps faster with AppDynamics > >> Download AppDynamics Lite for free today: > >> http://p.sf.net/sfu/appdyn_d2d_feb > >> _______________________________________________ > >> "Did you get answers to your ActionApps-related queries? If yes, please > >> help the ActionApps community by uploading the answers onto appropriate > >> space in the ActionApps documentation wiki. See the *How to contribute* > >> section today http://actionapps.org/en/How_To_Contribute" > >> _______________________________________________ > >> apc-aa-general mailing list > >> apc...@li... > >> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > > > ------------------------------------------------------------------------- > > ----- Everyone hates slow websites. So do we. > > Make your web apps faster with AppDynamics > > Download AppDynamics Lite for free today: > > http://p.sf.net/sfu/appdyn_d2d_feb > > _______________________________________________ > > "Did you get answers to your ActionApps-related queries? If yes, please > > help the ActionApps community by uploading the answers onto appropriate > > space in the ActionApps documentation wiki. See the *How to contribute* > > section today http://actionapps.org/en/How_To_Contribute" > > _______________________________________________ > > apc-aa-general mailing list > > apc...@li... > > https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > --------------------------------------------------------------------------- > --- Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |
From: Bako M. <mi...@sb...> - 2013-03-06 11:44:15
|
Dear Honza, can you answer this please? Might be important. I got an error in this line at the end: ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NOT Is that: ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NULL or something else? Misi On 2013-03-01 15:25, Bako Mihaly wrote: > Thank you very much Honza! > > I got an error in this line at the end: > > ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NOT > > Is that: > > ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NULL > > or something else? > > Best, > > Misi > > On 2013-03-01 10:13, Honza Malik wrote: >> Hola Misi, >> >>> I am after upgrade of MySQL to 5.0.96. >> Great. >> >> We do not use PEAR - you do not need it. The script (your and mine) is part of AA and is used just to run some SQL commands. You >> can extract the SQL commands from it and just run them in MySQL. The extracted SQL commands are below. >> >> After runing this commands, the old version of AA should be working well on new MySQL >5. >> >> Then you can upgrade AA to the latest version and run https://example.org/apc-aa/service/sql_update.php script. >> >>> Is it possible to upgrade directly from 2.8.1 to 2.50 ? >> I never tested it, but the sql_update.php script should do everything necessary, so I'm quite sure it is possible. We are trying to be >> backward compatible as much as possible. >> >> As allways, the backup of AA and DB is essential. >> >> Honza >> >> -------------------------------------------------------------------------------------------------------- >> SQL commnds to fix table fields after upgrade from MySQL 4 to 5 >> (if some command is not working, don't worry - you have older AA and some tables could not be present in the database. Just skip it) >> -------------------------------------------------------------------------------------------------------- >> >> ALTER TABLE `active_sessions` CHANGE `sid` `sid` varbinary(32) NOT NULL default '' >> UPDATE `active_sessions` SET sid=TRIM(TRAILING '' FROM sid) >> ALTER TABLE `change` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `change` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `change` CHANGE `resource_id` `resource_id` varbinary(32) NOT NULL default '' >> UPDATE `change` SET resource_id=TRIM(TRAILING '' FROM resource_id) >> ALTER TABLE `change_record` CHANGE `change_id` `change_id` varbinary(32) NOT NULL default '' >> UPDATE `change_record` SET change_id=TRIM(TRAILING '' FROM change_id) >> ALTER TABLE `change_record` CHANGE `selector` `selector` varbinary(255) default NULL >> UPDATE `change_record` SET selector=TRIM(TRAILING '' FROM selector) >> ALTER TABLE `central_conf` CHANGE `dns_conf` `dns_conf` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET dns_conf=TRIM(TRAILING '' FROM dns_conf) >> ALTER TABLE `central_conf` CHANGE `dns_web` `dns_web` varbinary(15) NOT NULL default '' >> UPDATE `central_conf` SET dns_web=TRIM(TRAILING '' FROM dns_web) >> ALTER TABLE `central_conf` CHANGE `dns_mx` `dns_mx` varbinary(15) NOT NULL default '' >> UPDATE `central_conf` SET dns_mx=TRIM(TRAILING '' FROM dns_mx) >> ALTER TABLE `central_conf` CHANGE `dns_db` `dns_db` varbinary(15) NOT NULL default '' >> UPDATE `central_conf` SET dns_db=TRIM(TRAILING '' FROM dns_db) >> ALTER TABLE `central_conf` CHANGE `dns_prim` `dns_prim` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET dns_prim=TRIM(TRAILING '' FROM dns_prim) >> ALTER TABLE `central_conf` CHANGE `dns_sec` `dns_sec` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET dns_sec=TRIM(TRAILING '' FROM dns_sec) >> ALTER TABLE `central_conf` CHANGE `web_conf` `web_conf` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET web_conf=TRIM(TRAILING '' FROM web_conf) >> ALTER TABLE `central_conf` CHANGE `web_path` `web_path` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET web_path=TRIM(TRAILING '' FROM web_path) >> ALTER TABLE `central_conf` CHANGE `db_server` `db_server` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET db_server=TRIM(TRAILING '' FROM db_server) >> ALTER TABLE `central_conf` CHANGE `db_name` `db_name` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET db_name=TRIM(TRAILING '' FROM db_name) >> ALTER TABLE `central_conf` CHANGE `db_user` `db_user` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET db_user=TRIM(TRAILING '' FROM db_user) >> ALTER TABLE `central_conf` CHANGE `db_pwd` `db_pwd` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET db_pwd=TRIM(TRAILING '' FROM db_pwd) >> ALTER TABLE `central_conf` CHANGE `AA_SITE_PATH` `AA_SITE_PATH` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET AA_SITE_PATH=TRIM(TRAILING '' FROM AA_SITE_PATH) >> ALTER TABLE `central_conf` CHANGE `AA_BASE_DIR` `AA_BASE_DIR` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET AA_BASE_DIR=TRIM(TRAILING '' FROM AA_BASE_DIR) >> ALTER TABLE `central_conf` CHANGE `AA_HTTP_DOMAIN` `AA_HTTP_DOMAIN` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET AA_HTTP_DOMAIN=TRIM(TRAILING '' FROM AA_HTTP_DOMAIN) >> ALTER TABLE `central_conf` CHANGE `AA_ID` `AA_ID` varbinary(32) NOT NULL default '' >> UPDATE `central_conf` SET AA_ID=TRIM(TRAILING '' FROM AA_ID) >> ALTER TABLE `central_conf` CHANGE `ORG_NAME` `ORG_NAME` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET ORG_NAME=TRIM(TRAILING '' FROM ORG_NAME) >> ALTER TABLE `central_conf` CHANGE `ERROR_REPORTING_EMAIL` `ERROR_REPORTING_EMAIL` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET ERROR_REPORTING_EMAIL=TRIM(TRAILING '' FROM ERROR_REPORTING_EMAIL) >> ALTER TABLE `central_conf` CHANGE `ALERTS_EMAIL` `ALERTS_EMAIL` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET ALERTS_EMAIL=TRIM(TRAILING '' FROM ALERTS_EMAIL) >> ALTER TABLE `central_conf` CHANGE `IMG_UPLOAD_URL` `IMG_UPLOAD_URL` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET IMG_UPLOAD_URL=TRIM(TRAILING '' FROM IMG_UPLOAD_URL) >> ALTER TABLE `central_conf` CHANGE `IMG_UPLOAD_PATH` `IMG_UPLOAD_PATH` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET IMG_UPLOAD_PATH=TRIM(TRAILING '' FROM IMG_UPLOAD_PATH) >> ALTER TABLE `central_conf` CHANGE `FILEMAN_BASE_DIR` `FILEMAN_BASE_DIR` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET FILEMAN_BASE_DIR=TRIM(TRAILING '' FROM FILEMAN_BASE_DIR) >> ALTER TABLE `central_conf` CHANGE `FILEMAN_BASE_URL` `FILEMAN_BASE_URL` varbinary(255) NOT NULL default '' >> UPDATE `central_conf` SET FILEMAN_BASE_URL=TRIM(TRAILING '' FROM FILEMAN_BASE_URL) >> ALTER TABLE `central_conf` CHANGE `AA_ADMIN_USER` `AA_ADMIN_USER` varbinary(30) NOT NULL default '' >> UPDATE `central_conf` SET AA_ADMIN_USER=TRIM(TRAILING '' FROM AA_ADMIN_USER) >> ALTER TABLE `central_conf` CHANGE `AA_ADMIN_PWD` `AA_ADMIN_PWD` varbinary(30) NOT NULL default '' >> UPDATE `central_conf` SET AA_ADMIN_PWD=TRIM(TRAILING '' FROM AA_ADMIN_PWD) >> ALTER TABLE `content` CHANGE `item_id` `item_id` varbinary(16) NOT NULL default '' >> UPDATE `content` SET item_id=TRIM(TRAILING '' FROM item_id) >> ALTER TABLE `content` CHANGE `field_id` `field_id` varbinary(16) NOT NULL default '' >> UPDATE `content` SET field_id=TRIM(TRAILING '' FROM field_id) >> ALTER TABLE `discussion` CHANGE `id` `id` varbinary(16) NOT NULL default '' >> UPDATE `discussion` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `discussion` CHANGE `parent` `parent` varbinary(16) NOT NULL default '' >> UPDATE `discussion` SET parent=TRIM(TRAILING '' FROM parent) >> ALTER TABLE `discussion` CHANGE `item_id` `item_id` varbinary(16) NOT NULL default '' >> UPDATE `discussion` SET item_id=TRIM(TRAILING '' FROM item_id) >> ALTER TABLE `ef_categories` CHANGE `category_id` `category_id` varbinary(16) NOT NULL default '' >> UPDATE `ef_categories` SET category_id=TRIM(TRAILING '' FROM category_id) >> ALTER TABLE `ef_categories` CHANGE `target_category_id` `target_category_id` varbinary(16) NOT NULL default '' >> UPDATE `ef_categories` SET target_category_id=TRIM(TRAILING '' FROM target_category_id) >> ALTER TABLE `ef_permissions` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `ef_permissions` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `email` CHANGE `owner_module_id` `owner_module_id` varbinary(16) NOT NULL default '' >> UPDATE `email` SET owner_module_id=TRIM(TRAILING '' FROM owner_module_id) >> ALTER TABLE `external_feeds` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `external_feeds` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `external_feeds` CHANGE `remote_slice_id` `remote_slice_id` varbinary(16) NOT NULL default '' >> UPDATE `external_feeds` SET remote_slice_id=TRIM(TRAILING '' FROM remote_slice_id) >> ALTER TABLE `event` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `event` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `feedmap` CHANGE `from_slice_id` `from_slice_id` varbinary(16) NOT NULL default '' >> UPDATE `feedmap` SET from_slice_id=TRIM(TRAILING '' FROM from_slice_id) >> ALTER TABLE `feedmap` CHANGE `from_field_id` `from_field_id` varbinary(16) NOT NULL default '' >> UPDATE `feedmap` SET from_field_id=TRIM(TRAILING '' FROM from_field_id) >> ALTER TABLE `feedmap` CHANGE `to_slice_id` `to_slice_id` varbinary(16) NOT NULL default '' >> UPDATE `feedmap` SET to_slice_id=TRIM(TRAILING '' FROM to_slice_id) >> ALTER TABLE `feedmap` CHANGE `to_field_id` `to_field_id` varbinary(16) NOT NULL default '' >> UPDATE `feedmap` SET to_field_id=TRIM(TRAILING '' FROM to_field_id) >> ALTER TABLE `feedperms` CHANGE `from_id` `from_id` varbinary(16) NOT NULL default '' >> UPDATE `feedperms` SET from_id=TRIM(TRAILING '' FROM from_id) >> ALTER TABLE `feedperms` CHANGE `to_id` `to_id` varbinary(16) NOT NULL default '' >> UPDATE `feedperms` SET to_id=TRIM(TRAILING '' FROM to_id) >> ALTER TABLE `feeds` CHANGE `from_id` `from_id` varbinary(16) NOT NULL default '' >> UPDATE `feeds` SET from_id=TRIM(TRAILING '' FROM from_id) >> ALTER TABLE `feeds` CHANGE `to_id` `to_id` varbinary(16) NOT NULL default '' >> UPDATE `feeds` SET to_id=TRIM(TRAILING '' FROM to_id) >> ALTER TABLE `feeds` CHANGE `category_id` `category_id` varbinary(16) NOT NULL default '' >> UPDATE `feeds` SET category_id=TRIM(TRAILING '' FROM category_id) >> ALTER TABLE `feeds` CHANGE `to_category_id` `to_category_id` varbinary(16) NOT NULL default '' >> UPDATE `feeds` SET to_category_id=TRIM(TRAILING '' FROM to_category_id) >> ALTER TABLE `field` CHANGE `id` `id` varbinary(16) NOT NULL default '' >> UPDATE `field` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `field` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `field` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `field` CHANGE `content_id` `content_id` varbinary(16) default NULL >> UPDATE `field` SET content_id=TRIM(TRAILING '' FROM content_id) >> ALTER TABLE `jump` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `jump` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `jump` CHANGE `dest_slice_id` `dest_slice_id` varbinary(16) NOT NULL default '' >> UPDATE `jump` SET dest_slice_id=TRIM(TRAILING '' FROM dest_slice_id) >> ALTER TABLE `object_float` CHANGE `object_id` `object_id` varbinary(16) NOT NULL default '' >> UPDATE `object_float` SET object_id=TRIM(TRAILING '' FROM object_id) >> ALTER TABLE `object_float` CHANGE `property` `property` varbinary(32) NOT NULL default '' >> UPDATE `object_float` SET property=TRIM(TRAILING '' FROM property) >> ALTER TABLE `object_integer` CHANGE `object_id` `object_id` varbinary(16) NOT NULL default '' >> UPDATE `object_integer` SET object_id=TRIM(TRAILING '' FROM object_id) >> ALTER TABLE `object_integer` CHANGE `property` `property` varbinary(32) NOT NULL default '' >> UPDATE `object_integer` SET property=TRIM(TRAILING '' FROM property) >> ALTER TABLE `object_text` CHANGE `object_id` `object_id` varbinary(16) NOT NULL default '' >> UPDATE `object_text` SET object_id=TRIM(TRAILING '' FROM object_id) >> ALTER TABLE `object_text` CHANGE `property` `property` varbinary(32) NOT NULL default '' >> UPDATE `object_text` SET property=TRIM(TRAILING '' FROM property) >> ALTER TABLE `pagecache` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `pagecache` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `pagecache_str2find` CHANGE `pagecache_id` `pagecache_id` varbinary(32) NOT NULL default '' >> UPDATE `pagecache_str2find` SET pagecache_id=TRIM(TRAILING '' FROM pagecache_id) >> ALTER TABLE `polls` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `polls` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `polls` CHANGE `module_id` `module_id` varbinary(16) NOT NULL default '' >> UPDATE `polls` SET module_id=TRIM(TRAILING '' FROM module_id) >> ALTER TABLE `polls` CHANGE `design_id` `design_id` varbinary(32) NOT NULL default '' >> UPDATE `polls` SET design_id=TRIM(TRAILING '' FROM design_id) >> ALTER TABLE `polls` CHANGE `aftervote_design_id` `aftervote_design_id` varbinary(32) NOT NULL default '' >> UPDATE `polls` SET aftervote_design_id=TRIM(TRAILING '' FROM aftervote_design_id) >> ALTER TABLE `polls_answer` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `polls_answer` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `polls_answer` CHANGE `poll_id` `poll_id` varbinary(32) NOT NULL default '' >> UPDATE `polls_answer` SET poll_id=TRIM(TRAILING '' FROM poll_id) >> ALTER TABLE `polls_design` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `polls_design` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `polls_ip_lock` CHANGE `poll_id` `poll_id` varbinary(32) NOT NULL default '' >> UPDATE `polls_ip_lock` SET poll_id=TRIM(TRAILING '' FROM poll_id) >> ALTER TABLE `polls_log` CHANGE `answer_id` `answer_id` varbinary(32) NOT NULL default '' >> UPDATE `polls_log` SET answer_id=TRIM(TRAILING '' FROM answer_id) >> ALTER TABLE `polls_design` CHANGE `module_id` `module_id` varbinary(16) NOT NULL default '' >> UPDATE `polls_design` SET module_id=TRIM(TRAILING '' FROM module_id) >> ALTER TABLE `polls_ip_lock` CHANGE `voters_ip` `voters_ip` varbinary(16) NOT NULL >> UPDATE `polls_ip_lock` SET voters_ip=TRIM(TRAILING '' FROM voters_ip) >> ALTER TABLE `polls_log` CHANGE `voters_ip` `voters_ip` varbinary(16) NOT NULL default '' >> UPDATE `polls_log` SET voters_ip=TRIM(TRAILING '' FROM voters_ip) >> ALTER TABLE `post2shtml` CHANGE `id` `id` varbinary(32) NOT NULL default '' >> UPDATE `post2shtml` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `profile` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `profile` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `relation` CHANGE `source_id` `source_id` varbinary(16) NOT NULL default '' >> UPDATE `relation` SET source_id=TRIM(TRAILING '' FROM source_id) >> ALTER TABLE `relation` CHANGE `destination_id` `destination_id` varbinary(32) NOT NULL default '' >> UPDATE `relation` SET destination_id=TRIM(TRAILING '' FROM destination_id) >> ALTER TABLE `rssfeeds` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `rssfeeds` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `site` CHANGE `id` `id` varbinary(16) NOT NULL default '' >> UPDATE `site` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `site_spot` CHANGE `site_id` `site_id` varbinary(16) NOT NULL default '' >> UPDATE `site_spot` SET site_id=TRIM(TRAILING '' FROM site_id) >> ALTER TABLE `slice` CHANGE `id` `id` varbinary(16) NOT NULL default '' >> UPDATE `slice` SET id=TRIM(TRAILING '' FROM id) >> ALTER TABLE `slice` CHANGE `type` `type` varbinary(16) default NOT >> UPDATE `slice` SET type=TRIM(TRAILING '' FROM type) >> ALTER TABLE `slice` CHANGE `mlxctrl` `mlxctrl` varbinary(32) NOT NULL default '' >> UPDATE `slice` SET mlxctrl=TRIM(TRAILING '' FROM mlxctrl) >> ALTER TABLE `view` CHANGE `slice_id` `slice_id` varbinary(16) NOT NULL default '' >> UPDATE `view` SET slice_id=TRIM(TRAILING '' FROM slice_id) >> ALTER TABLE `view` CHANGE `order1` `order1` varbinary(16) default NULL >> UPDATE `view` SET order1=TRIM(TRAILING '' FROM order1) >> ALTER TABLE `view` CHANGE `order2` `order2` varbinary(16) default NULL >> UPDATE `view` SET order2=TRIM(TRAILING '' FROM order2) >> ALTER TABLE `view` CHANGE `group_by1` `group_by1` varbinary(16) default NULL >> UPDATE `view` SET group_by1=TRIM(TRAILING '' FROM group_by1) >> ALTER TABLE `view` CHANGE `group_by2` `group_by2` varbinary(16) default NULL >> UPDATE `view` SET group_by2=TRIM(TRAILING '' FROM group_by2) >> ALTER TABLE `view` CHANGE `cond1field` `cond1field` varbinary(16) default NULL >> UPDATE `view` SET cond1field=TRIM(TRAILING '' FROM cond1field) >> ALTER TABLE `view` CHANGE `cond1op` `cond1op` varbinary(10) default NULL >> UPDATE `view` SET cond1op=TRIM(TRAILING '' FROM cond1op) >> ALTER TABLE `view` CHANGE `cond2field` `cond2field` varbinary(16) default NULL >> UPDATE `view` SET cond2field=TRIM(TRAILING '' FROM cond2field) >> ALTER TABLE `view` CHANGE `cond2op` `cond2op` varbinary(10) default NULL >> UPDATE `view` SET cond2op=TRIM(TRAILING '' FROM cond2op) >> ALTER TABLE `view` CHANGE `cond3field` `cond3field` varbinary(16) default NULL >> UPDATE `view` SET cond3field=TRIM(TRAILING '' FROM cond3field) >> ALTER TABLE `view` CHANGE `cond3op` `cond3op` varbinary(10) default NULL >> UPDATE `view` SET cond3op=TRIM(TRAILING '' FROM cond3op) >> ALTER TABLE `view` CHANGE `field1` `field1` varbinary(16) default NULL >> UPDATE `view` SET field1=TRIM(TRAILING '' FROM field1) >> ALTER TABLE `view` CHANGE `field2` `field2` varbinary(16) default NULL >> UPDATE `view` SET field2=TRIM(TRAILING '' FROM field2) >> ALTER TABLE `view` CHANGE `field3` `field3` varbinary(16) default NULL >> UPDATE `view` SET field3=TRIM(TRAILING '' FROM field3) >> >> >> >> Dne Čt 28. února 2013 Bako Mihaly napsal(a): >>> Thank you very much Honza! >>> >>> I am after upgrade of MySQL to 5.0.96. >>> >>> My current working version of AA is 2.8.1. Is this script applicable >>> within 2.8.1 ? >>> >>> Apparently is working under 2.50, however I don't have PEAR - therefore >>> could not run test.php from 2.50 version package yet. I have to include >>> the script somewhere in test.php, right? >>> >>> I am on a server with cpanel+WHM, I have to figure out how to install PEAR. >>> >>> I understood that I have to include this script within test.php file. >>> >>> Do I have to run it before sql_update.php? >>> >>> Is it possible to upgrade directly from 2.8.1 to 2.50 ? >>> >>> Is it possible to go around PEAR somehow, or PEAR must be installed? >>> >>> Sorry for all these questions .... >>> >>> Thank you, >>> >>> Misi >>> >>> On 2013-02-27 16:52, Honza Malik wrote: >>>> Hola Misi, >>>> >>>> I would suggest to go step after step, not to do two steps in one >>>> time. So, the first thing is to upgrade MySQL and then AA (or >>>> >>>> oposite, but I think the first order could be easier). >>>> >>>> For the upgrade of MySQL. Yes, there was big changes in handling of >>>> encoding between MySQL 4.x and 5.x, so the script you >>>> >>>> mentioned is needed for removing trailing zeros. The current version of >>>> this fix is a bit updated, so you can use the latest version of this >>>> script which is in current AA - I'm attaching it at the end of the mail. >>>> >>>> There is no need to convert whole database to utf-8. Our older slices are >>>> in windows-1250 encoding and it works all the time we use AA. So, there >>>> must be the way, how to configure the connection between AA and MySQL >>>> properly. >>>> >>>> There is configuration option in AA config.php3 file, which we use this way (for windows-1250 encoding): >>>> ------------------------------------------------------------------ >>>> /** MySQL 4.1 is able to use different character sets for the >>>> communication. >>>> >>>> * Standard for MySQL client communication in PHP5 is UTF (probably), >>>> but if * you are using another character sets (maybe for historical >>>> reason), then you * need to specify it by "SET CHARACTER SET" and >>>> "SET COLLATION_CONNECTION" SQL * commands. Just set the right values >>>> to following variables. * We use (for czech character set "Windows >>>> 1250"): >>>> * define("DB_CHARACTER_SET", "cp1250"); >>>> * define("DB_COLLATION_CONNECTION", "cp1250_czech_cs"); >>>> * Default is: commented out >>>> */ >>>> >>>> define("DB_CHARACTER_SET", "cp1250"); >>>> define("DB_COLLATION_CONNECTION", "cp1250_czech_cs"); >>>> ------------------------------------------------------------------ >>>> >>>> This options should match the database encoding - so latin2 in your >>>> case. >>>> >>>> After this step you should be able to run old AA on newer MySQL >>>> without any problems. >>>> >>>> Then you can upgrade AA - the description of upgrade process is on >>>> wiki: http://actionapps.org/en/Upgrade_Guide. Current AA are >>>> >>>> tested (at least) with PHP 5.2 - 5.3 and MySQL 5.x - 5.5 or MariaDB 5.5 >>>> >>>> One more note: You mentioned, you do not understand the new >>>> config.php3 file. It was my fault - the config.php3 script should be >>>> >>>> the same as for previous version of AA - there are not so many changes. >>>> The problem is, that I submited wrong file to SVN. Now it is fixed, so >>>> if you look on the current config.php3 file in SVN, you will find old >>>> familiar version. >>>> >>>> Honza >>>> >>>> ------------------------------------------------------------------ >>>> Fix for trailing zeros >>>> ------------------------------------------------------------------ >>>> /** Fix user login problem, constants editiong problem, ... >>>> >>>> * Replaces binary fields by varbinary and removes trailing zeros >>>> * Needed for MySQL > 5.0.17 >>>> */ >>>> >>>> class AA_Optimize_Db_Binary_Traing_Zeros extends AA_Optimize { >>>> >>>> /** Name function >>>> * @return a message >>>> */ >>>> function name() { >>>> >>>> return _m("Fix user login problem, constants editiong problem, >>>> ..."); >>>> >>>> } >>>> >>>> /** Description function >>>> * @return a message >>>> */ >>>> function description() { >>>> >>>> return _m("Replaces binary fields by varbinary and removes >>>> trailing zeros. Needed for MySQL > 5.0.17"); >>>> >>>> } >>>> >>>> /** implemented actions within this class */ >>>> function actions() { return array('repair'); } >>>> >>>> /** Test function >>>> * @return true >>>> */ >>>> function test() { >>>> >>>> return true; >>>> >>>> } >>>> >>>> /** Repair function >>>> * repairs tables >>>> * @return true >>>> */ >>>> function repair() { >>>> >>>> $this->_fixTable('active_sessions','sid',"varbinary(32) NOT NULL >>>> default ''"); $this->_fixTable('change','id',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('change','resource_id',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('change_record','change_id',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('change_record','selector',"varbinary(255) >>>> default NULL"); >>>> $this->_fixTable('central_conf','dns_conf',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','dns_web',"varbinary(15) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','dns_mx',"varbinary(15) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','dns_db',"varbinary(15) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','dns_prim',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','dns_sec',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','web_conf',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','web_path',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','db_server',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','db_name',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','db_user',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','db_pwd',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','AA_SITE_PATH',"varbinary(255) >>>> NOT NULL default ''"); >>>> $this->_fixTable('central_conf','AA_BASE_DIR',"varbinary(255) >>>> NOT NULL default ''"); >>>> $this->_fixTable('central_conf','AA_HTTP_DOMAIN',"varbinary(255 >>>> ) NOT NULL default ''"); >>>> $this->_fixTable('central_conf','AA_ID',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('central_conf','ORG_NAME',"varbinary(255) NOT >>>> NULL default ''"); >>>> $this->_fixTable('central_conf','ERROR_REPORTING_EMAIL',"varbin >>>> ary(255) NOT NULL default ''"); >>>> $this->_fixTable('central_conf','ALERTS_EMAIL',"varbinary(255) >>>> NOT NULL default ''"); >>>> $this->_fixTable('central_conf','IMG_UPLOAD_URL',"varbinary(255 >>>> ) NOT NULL default ''"); >>>> $this->_fixTable('central_conf','IMG_UPLOAD_PATH',"varbinary(25 >>>> 5) NOT NULL default ''"); >>>> $this->_fixTable('central_conf','FILEMAN_BASE_DIR',"varbinary(2 >>>> 55) NOT NULL default ''"); >>>> $this->_fixTable('central_conf','FILEMAN_BASE_URL',"varbinary(2 >>>> 55) NOT NULL default ''"); >>>> $this->_fixTable('central_conf','AA_ADMIN_USER',"varbinary(30) >>>> NOT NULL default ''"); >>>> $this->_fixTable('central_conf','AA_ADMIN_PWD',"varbinary(30) >>>> NOT NULL default ''"); >>>> $this->_fixTable('content','item_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('content','field_id',"varbinary(16) NOT NULL >>>> default ''"); $this->_fixTable('discussion','id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('discussion','parent',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('discussion','item_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('ef_categories','category_id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('ef_categories','target_category_id',"varbinar >>>> y(16) NOT NULL default ''"); >>>> $this->_fixTable('ef_permissions','slice_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('email','owner_module_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('external_feeds','slice_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('external_feeds','remote_slice_id',"varbinary( >>>> 16) NOT NULL default ''"); >>>> $this->_fixTable('event','id',"varbinary(32) NOT NULL default >>>> ''"); $this->_fixTable('feedmap','from_slice_id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('feedmap','from_field_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('feedmap','to_slice_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('feedmap','to_field_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('feedperms','from_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('feedperms','to_id',"varbinary(16) NOT NULL >>>> default ''"); $this->_fixTable('feeds','from_id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('feeds','to_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('feeds','category_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('feeds','to_category_id',"varbinary(16) NOT >>>> NULL default ''"); $this->_fixTable('field','id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('field','slice_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('field','content_id',"varbinary(16) default >>>> NULL"); $this->_fixTable('jump','slice_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('jump','dest_slice_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('object_float','object_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('object_float','property',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('object_integer','object_id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('object_integer','property',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('object_text','object_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('object_text','property',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('pagecache','id',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('pagecache_str2find','pagecache_id',"varbinary >>>> (32) NOT NULL default ''"); >>>> $this->_fixTable('polls','id',"varbinary(32) NOT NULL default >>>> ''"); $this->_fixTable('polls','module_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('polls','design_id',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('polls','aftervote_design_id',"varbinary(32) >>>> NOT NULL default ''"); >>>> $this->_fixTable('polls_answer','id',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('polls_answer','poll_id',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('polls_design','id',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('polls_ip_lock','poll_id',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('polls_log','answer_id',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('polls_design','module_id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('polls_ip_lock','voters_ip',"varbinary(16) NOT >>>> NULL"); $this->_fixTable('polls_log','voters_ip',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('post2shtml','id',"varbinary(32) NOT NULL >>>> default ''"); >>>> $this->_fixTable('profile','slice_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('relation','source_id',"varbinary(16) NOT NULL >>>> default ''"); >>>> $this->_fixTable('relation','destination_id',"varbinary(32) NOT >>>> NULL default ''"); >>>> $this->_fixTable('rssfeeds','slice_id',"varbinary(16) NOT NULL >>>> default ''"); $this->_fixTable('site','id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('site_spot','site_id',"varbinary(16) NOT NULL >>>> default ''"); $this->_fixTable('slice','id',"varbinary(16) NOT >>>> NULL default ''"); >>>> $this->_fixTable('slice','type',"varbinary(16) default NOT"); >>>> $this->_fixTable('slice','mlxctrl',"varbinary(32) NOT NULL >>>> default ''"); $this->_fixTable('view','slice_id',"varbinary(16) >>>> NOT NULL default ''"); >>>> $this->_fixTable('view','order1',"varbinary(16) default NULL"); >>>> $this->_fixTable('view','order2',"varbinary(16) default NULL"); >>>> $this->_fixTable('view','group_by1',"varbinary(16) default >>>> NULL"); $this->_fixTable('view','group_by2',"varbinary(16) >>>> default NULL"); >>>> $this->_fixTable('view','cond1field',"varbinary(16) default >>>> NULL"); $this->_fixTable('view','cond1op',"varbinary(10) >>>> default NULL"); >>>> $this->_fixTable('view','cond2field',"varbinary(16) default >>>> NULL"); $this->_fixTable('view','cond2op',"varbinary(10) >>>> default NULL"); >>>> $this->_fixTable('view','cond3field',"varbinary(16) default >>>> NULL"); $this->_fixTable('view','cond3op',"varbinary(10) >>>> default NULL"); $this->_fixTable('view','field1',"varbinary(16) >>>> default NULL"); $this->_fixTable('view','field2',"varbinary(16) >>>> default NULL"); $this->_fixTable('view','field3',"varbinary(16) >>>> default NULL"); >>>> >>>> return true; >>>> >>>> } >>>> >>>> /** Helper _fixTable function */ >>>> function _fixTable($table, $field, $definition) { >>>> >>>> $db = getDb(); >>>> $SQL = "ALTER TABLE `$table` CHANGE `$field` `$field` >>>> $definition"; $this->message($SQL); >>>> $db->query($SQL); >>>> $SQL = "UPDATE `$table` SET $field=TRIM(TRAILING '\0' FROM >>>> $field)"; $this->message($SQL); >>>> $db->query($SQL); >>>> freeDb($db); >>>> >>>> } >>>> >>>> } >>>> >>>> Dne St 27. února 2013 Bako Mihaly napsal(a): >>>>> I moved an older copy of a smaller database to another server MySQL >>>>> v.4.21, and upgraded to 2.10 - a version used by Dan as well. >>>>> >>>>> Is there a safe way to convert the data from latin1 to UTF-8? How can I >>>>> bring that back safely to MySQL 5.0.96? Or it is better to upgrade to >>>>> current version od AA 2.50 and bring back to 5.0.96 afterwards? >>>>> >>>>> Best, >>>>> >>>>> Misi >>>>> >>>>> On 2013-02-26 14:11, Bako Mihaly wrote: >>>>>> Hi Honza! >>>>>> >>>>>> We have a serious problem upgrading from 2.8.1 to 2.10 - we tried the >>>>>> script you provided below - constants did not work, however we can log >>>>>> in after we run it. But we don't see the drop down menu with the slices >>>>>> - therefore we can not edit anything. The site is still working. >>>>>> >>>>>> Is it possible to go all the way to 2.50? Or to any intermediate >>>>>> version which has proper sql_update script? I did not understand >>>>>> config.php in 2.50 at first look, did not try until now. >>>>>> >>>>>> We had to upgrade MySQL - and from that moment things went unstable for >>>>>> editing. >>>>>> >>>>>> We might have a code page problem as well, apparently this new version >>>>>> of MySQL is latin1, with swedish_ci, however we shall have latin2 for >>>>>> our characters. I had to use latin1 in config.php3 >>>>>> >>>>>> Now we have: MySQL 5.0.96 (Client API version), PHP Version 5.2.17, >>>>>> server CENTOS 5.9 i686 standard. >>>>>> >>>>>> Also some hint how to copy safely the database to have a proper test >>>>>> version would help. I was afraid to do all that on the production >>>>>> database - and maybe there was some problem with database replication >>>>>> as well. >>>>>> >>>>>> >>>>>> Any help is welcome, >>>>>> >>>>>> thank you. >>>>>> >>>>>> Best, >>>>>> >>>>>> Misi >>>>>> >>>>>> On 2006-08-19 00:01, Honza Malik wrote: >>>>>>> Hi, >>>>>>> >>>>>>> there is problem with MySQL > 5.0.17, which adds to all binary >>>>>>> data >>>>>>> >>>>>>> trailing zeros, which results in the quite strange behaviour: >>>>>>> INSERT INTO table SET some_binary_field='text'; >>>>>>> SELECT FROM table WHERE some_binary_field='text'; >>>>>>> >>>>>>> 0 Rows returned. >>>>>>> >>>>>>> The solution is to change all binary fields to varbinary and >>>>>>> then >>>>>>> >>>>>>> remove all trailing zeros from the field - like: >>>>>>> ALTER TABLE `users` CHANGE `uid` `uid` varbinary(40) NOT NULL >>>>>>> default ''; UPDATE `users` SET uid=TRIM(TRAILING '\0' FROM uid); >>>>>>> >>>>>>> There is 'optimize' class, which should be placed in the >>>>>>> /test.php3 >>>>>>> >>>>>>> file and which repairs all the tables. >>>>>>> >>>>>>> Honza >>>>>>> >>>>>>> /** Fix user login problem, constants editiong problem, ... >>>>>>> >>>>>>> * Replaces binary fields by varbinary and removes trailing zeros >>>>>>> * Needed for MySQL > 5.0.17 >>>>>>> */ >>>>>>> >>>>>>> class Optimize_db_binary_traing_zeros extends Optimize { >>>>>>> >>>>>>> function name() { >>>>>>> >>>>>>> return _m("Fix user login problem, constants editiong >>>>>>> problem, ..."); >>>>>>> >>>>>>> } >>>>>>> >>>>>>> function description() { >>>>>>> >>>>>>> return _m("Replaces binary fields by varbinary and removes >>>>>>> trailing zeros. Needed for MySQL > 5.0.17"); >>>>>>> >>>>>>> } >>>>>>> >>>>>>> function test() { >>>>>>> >>>>>>> return true; >>>>>>> >>>>>>> } >>>>>>> >>>>>>> function repair() { >>>>>>> >>>>>>> $this->_fixTable('constant','id','varbinary(16) NOT NULL >>>>>>> default \'\''); >>>>>>> $this->_fixTable('constant','group_id','varbinary(16) NOT >>>>>>> NULL default \'\''); >>>>>>> $this->_fixTable('constant','class','varbinary(16) default >>>>>>> NULL'); >>>>>>> $this->_fixTable('alerts_collection','module_id',"varbinary >>>>>>> (1 6) NOT NULL default ''"); >>>>>>> $this->_fixTable('alerts_collection','slice_id',"varbinary( >>>>>>> 16 ) default NULL"); >>>>>>> $this->_fixTable('alerts_collection_filter','collectionid', >>>>>>> "v arbinary(6) NOT NULL default ''"); >>>>>>> $this->_fixTable('alerts_collection_howoften','collectionid >>>>>>> ', "varbinary(6) NOT NULL default ''"); >>>>>>> $this->_fixTable('constant_slice','slice_id',"varbinary(16) >>>>>>> default NULL"); >>>>>>> $this->_fixTable('constant_slice','group_id',"varbinary(16) >>>>>>> NOT NULL default ''"); >>>>>>> $this->_fixTable('email_notify','slice_id',"varbinary(16) >>>>>>> NOT NULL default ''"); >>>>>>> $this->_fixTable('item','id',"varbinary(16) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('item','slice_id',"varbinary(16) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('links','id',"varbinary(16) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('membership','memberid','varbinary(32) >>>>>>> NOT NULL'); $this->_fixTable('module','id',"varbinary(16) >>>>>>> NOT NULL default ''"); >>>>>>> $this->_fixTable('module','owner',"varbinary(16) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('module','app_id',"varbinary(16) default >>>>>>> NULL"); $this->_fixTable('offline','id',"varbinary(16) NOT >>>>>>> NULL default ''"); >>>>>>> $this->_fixTable('offline','digest',"varbinary(32) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('perms','objectid',"varbinary(32) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('perms','userid',"varbinary(32) NOT NULL >>>>>>> default '0'"); >>>>>>> $this->_fixTable('perms','perm',"varbinary(32) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('polls_log','votersIP',"varbinary(16) NOT >>>>>>> NULL default ''"); >>>>>>> $this->_fixTable('slice_owner','id',"varbinary(16) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('subscriptions','slice_owner',"varbinary(1 >>>>>>> 6) default NULL"); >>>>>>> $this->_fixTable('users','type',"varbinary(10) NOT NULL >>>>>>> default ''"); >>>>>>> $this->_fixTable('users','password',"varbinary(30) NOT NULL >>>>>>> default ''"); $this->_fixTable('users','uid',"varbinary(40) >>>>>>> NOT NULL default ''"); return true; >>>>>>> >>>>>>> } >>>>>>> >>>>>>> function _fixTable($table, $field, $definition) { >>>>>>> >>>>>>> $db = getDb(); >>>>>>> $SQL = "ALTER TABLE `$table` CHANGE `$field` `$field` >>>>>>> $definition"; $this->messages($SQL); >>>>>>> $db->query($SQL); >>>>>>> $SQL = "UPDATE `$table` SET $field=TRIM(TRAILING '\0' FROM >>>>>>> $field)"; $this->messages($SQL); >>>>>>> $db->query($SQL); >>>>>>> freeDb($db); >>>>>>> >>>>>>> } >>>>>>> >>>>>>> } >>>>>>> >>>>>>> Marek Tichy píše v Pá 18. 08. 2006 v 15:54 +0200: >>>>>>>> Had the same problem with Mysql 5.0. >>>>>>>> Any solutions ? >>>>>>>> Marek >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> El 24/07/2006 a les 14:58 -0500, Adam Sanchez va escriure: >>>>>>>>>> After executing sql_update.php3 for the first time, and creating >>>>>>>>>> the account of the administrator, the listing of slices cannot be >>>>>>>>>> seen. I have 4 PHP and MySQL 4. I conducted the operation in two >>>>>>>>>> different servers and it happens to me the same. What can be? >>>>>>>>> I also found problems: the setup.php3 script fails saying that >>>>>>>>> it "Can't assign super access permission". >>>>>>>>> >>>>>>>>> This seems a problem with database types / conversion. Here is what >>>>>>>>> the GetObjectsPerms call gets at setup.php3 line 266: >>>>>>>>> >>>>>>>>> Array ( >>>>>>>>> >>>>>>>>> [1 ] => Array >>>>>>>>> >>>>>>>>> ( >>>>>>>>> >>>>>>>>> [id] => 1 * >>>>>>>>> [type] => User * >>>>>>>>> [name] => Pep Turro >>>>>>>>> [mail] => pe...@tu... >>>>>>>>> [perm] => 4 * >>>>>>>>> >>>>>>>>> ) >>>>>>>>> >>>>>>>>> Note the spaces around... I have added stars (*) to mark end of >>>>>>>>> lines where additional spaces are present. >>>>>>>>> >>>>>>>>> Server info: MySQL 5.0.22, PHP 4.4.2 on Apache 1.3.34. >>>>>>> ---------------------------------------------------------------------- >>>>>>> -- - Using Tomcat but need to do more? Need to support web services, >>>>>>> security? Get stuff done quickly with pre-integrated technology to >>>>>>> make your job easier Download IBM WebSphere Application Server >>>>>>> v.1.0.1 based on Apache Geronimo >>>>>>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1216 >>>>>>> 4 2 _______________________________________________ >>>>>>> "Did you get answers to your ActionApps-related queries? If yes, >>>>>>> please help the ActionApps community by uploading the answers onto >>>>>>> appropriate space in the ActionApps documentation wiki. See the *How >>>>>>> to contribute* section today >>>>>>> http://actionapps.org/en/How_To_Contribute" >>>>>>> _______________________________________________ >>>>>>> apc-aa-general mailing list >>>>>>> apc...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >>>>>> ----------------------------------------------------------------------- >>>>>> -- ----- Everyone hates slow websites. So do we. >>>>>> Make your web apps faster with AppDynamics >>>>>> Download AppDynamics Lite for free today: >>>>>> http://p.sf.net/sfu/appdyn_d2d_feb >>>>>> _______________________________________________ >>>>>> "Did you get answers to your ActionApps-related queries? If yes, please >>>>>> help the ActionApps community by uploading the answers onto appropriate >>>>>> space in the ActionApps documentation wiki. See the *How to contribute* >>>>>> section today http://actionapps.org/en/How_To_Contribute" >>>>>> _______________________________________________ >>>>>> apc-aa-general mailing list >>>>>> apc...@li... >>>>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >>>>> ------------------------------------------------------------------------ >>>>> --- --- Everyone hates slow websites. So do we. >>>>> Make your web apps faster with AppDynamics >>>>> Download AppDynamics Lite for free today: >>>>> http://p.sf.net/sfu/appdyn_d2d_feb >>>>> _______________________________________________ >>>>> "Did you get answers to your ActionApps-related queries? If yes, please >>>>> help the ActionApps community by uploading the answers onto appropriate >>>>> space in the ActionApps documentation wiki. See the *How to contribute* >>>>> section today http://actionapps.org/en/How_To_Contribute" >>>>> _______________________________________________ >>>>> apc-aa-general mailing list >>>>> apc...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >>>> ------------------------------------------------------------------------- >>>> ----- Everyone hates slow websites. So do we. >>>> Make your web apps faster with AppDynamics >>>> Download AppDynamics Lite for free today: >>>> http://p.sf.net/sfu/appdyn_d2d_feb >>>> _______________________________________________ >>>> "Did you get answers to your ActionApps-related queries? If yes, please >>>> help the ActionApps community by uploading the answers onto appropriate >>>> space in the ActionApps documentation wiki. See the *How to contribute* >>>> section today http://actionapps.org/en/How_To_Contribute" >>>> _______________________________________________ >>>> apc-aa-general mailing list >>>> apc...@li... >>>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >>> --------------------------------------------------------------------------- >>> --- Everyone hates slow websites. So do we. >>> Make your web apps faster with AppDynamics >>> Download AppDynamics Lite for free today: >>> http://p.sf.net/sfu/appdyn_d2d_feb >>> _______________________________________________ >>> "Did you get answers to your ActionApps-related queries? If yes, please >>> help the ActionApps community by uploading the answers onto appropriate >>> space in the ActionApps documentation wiki. See the *How to contribute* >>> section today http://actionapps.org/en/How_To_Contribute" >>> _______________________________________________ >>> apc-aa-general mailing list >>> apc...@li... >>> https://lists.sourceforge.net/lists/listinfo/apc-aa-general >> ------------------------------------------------------------------------------ >> Everyone hates slow websites. So do we. >> Make your web apps faster with AppDynamics >> Download AppDynamics Lite for free today: >> http://p.sf.net/sfu/appdyn_d2d_feb >> _______________________________________________ >> "Did you get answers to your ActionApps-related queries? If yes, please >> help the ActionApps community by uploading the answers onto appropriate >> space in the ActionApps documentation wiki. See the *How to contribute* >> section today http://actionapps.org/en/How_To_Contribute" >> _______________________________________________ >> apc-aa-general mailing list >> apc...@li... >> https://lists.sourceforge.net/lists/listinfo/apc-aa-general > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_d2d_feb > _______________________________________________ > "Did you get answers to your ActionApps-related queries? If yes, please > help the ActionApps community by uploading the answers onto appropriate > space in the ActionApps documentation wiki. See the *How to contribute* > section today http://actionapps.org/en/How_To_Contribute" > _______________________________________________ > apc-aa-general mailing list > apc...@li... > https://lists.sourceforge.net/lists/listinfo/apc-aa-general |