Hi,
I have just installed 2.4.8.0 OJS version and I am not able to send notification about new issue.
It displays blank page with any script
Please, Could you help me ?
Andrea
Hi,
I have just installed 2.4.8.0 OJS version and I am not able to send notification about new issue.
It displays blank page with any script
Please, Could you help me ?
Andrea
A bit more detail would be needed to answer your question. Usually, a blank page has something to do with your serverâs configuration. To narrow down that issue, please take a look at your serverâs log and see if there are any error messages. If you post the error messages here, people will be able to help you better.
A look in the FAQ might help to get further information on how to solve your problem: When I click some button or follow some link, I'm left with a blank page. What do I do?
We tried to do what is report in suggested link but we were able to resolve the problem.
In particular, the problem should be in file AuthorDAO.inc.php and we noticed that it´s add a 02 in this row: ââ)ORDER BY aa.last_name, aa.first_name02"
Please, Could you suggest a solution ?
Your AuthorDAO should look like this:
If you have an unexplained change, I recommend replacing your source files with a fresh copy from the PKP OJS downloads page.
Thank you so much for your attention but the problem is unfold after unfolding version OJS 2.4.8.
Please, could you me another suggestion to solve this problem ?
What error message do your find in your webserverâs error log?
Usually, this indicates that a PHP error has occurred and the message has been sent to your web server or system log file. Check there â e.g. /var/log/apache/error.log, although the exact location will depend on your server configuration â for further details.
Input array does not match ?: SELECT DISTINCT
CAST(ââ AS CHAR) AS url,
0 AS author_id,
0 AS submission_id,
aa.email AS email,
0 AS primary_contact,
0 AS seq,
aa.first_name,
aa.middle_name,
aa.last_name,
CASE WHEN asl.setting_value = ââ THEN NULL ELSE
SUBSTRING(asl.setting_value FROM 1 FOR 255) END AS affiliation_l,
asl.locale,
CASE WHEN aspl.setting_value = ââ THEN NULL ELSE
SUBSTRING(aspl.setting_value FROM 1 FOR 255) END AS affiliation_pl,
/** CASE WHEN aa.country = ââ THEN NULL ELSE aa.country END */
aspl.locale AS primary_locale,
CASE WHEN aa.country = ââ THEN NULL ELSE aa.country END AS country
FROM authors aa
LEFT JOIN author_settings aspl ON (aa.author_id = aspl.author_id AND
aspl.setting_name = âaffiliationâ AND aspl.locale = âit_ITâ)
LEFT JOIN author_settings asl ON (aa.author_id = asl.author_id AND
asl.setting_name = âaffiliationâ AND asl.locale = âit_ITâ)
JOIN articles a ON (a.article_id = aa.submission_id AND a.status =
3)
JOIN published_articles pa ON (pa.article_id = a.article_id)
JOIN issues i ON (pa.issue_id = i.issue_id AND i.published = 1)
WHERE a.journal_id = â1â AND
(aa.last_name IS NOT NULL AND aa.last_name <> ââ)ORDER BY
aa.last_name, aa.first_name02
That statement looks like this one:
But it looks to be modified.
Did you refresh the source files from a clean download?
Yes, I and a technical person we tried to modify the file because notification function it doesn´t work but we don´t find a good solution. Please, How could we resolve this ?
The error message youâre reporting (âInput array does not match ?â) seems to indicate that the bound SQL parameters donât match the number of values provided in $params
.
If you revert the changes youâve made, what error appears in the log?
Hello. A few word about me. Iâm the technical person Andrea refers to. Iâm NOT a php guy.
A) Error log by unmodified php
NOTICE: Undefined offset: 6 (/var/www/rivistapiccolaimpresa/lib/pkp/lib/adodb/adodb.inc.php:819), referer: http://rivistapiccolaimpresa.uniurb.it/index.php/index/user
[Wed Apr 06 15:25:30.510530 2016] [:error] [pid 19596] [client 193.205.3.57:33421] ojs2: DB Error: Unknown column âaa.first_name02â in âorder clauseâ, referer: http://rivistapiccolaimpresa.uniurb.it/index.php/index/user
B)
Modified AuthorDAO.inc.php
⌠snip âŚ
$paolo_query =
'SELECT DISTINCT
CAST(\'\' AS CHAR) AS url,
0 AS author_id,
0 AS submission_id,
' . ($includeEmail?'aa.email AS email,':'CAST(\'\' AS CHAR) AS email,') . '
0 AS primary_contact,
0 AS seq,
aa.first_name,
aa.middle_name,
aa.last_name,
CASE WHEN asl.setting_value = \'\' THEN NULL ELSE SUBSTRING(asl.setting_value FROM 1 FOR 255) END AS affiliation_l,
asl.locale,
CASE WHEN aspl.setting_value = \'\' THEN NULL ELSE SUBSTRING(aspl.setting_value FROM 1 FOR 255) END AS affiliation_pl,
aspl.locale AS primary_locale,
CASE WHEN aa.country = \'\' THEN NULL ELSE aa.country END AS country
FROM authors aa
LEFT JOIN author_settings aspl ON (aa.author_id = aspl.author_id AND aspl.setting_name = ? AND aspl.locale = ?)
LEFT JOIN author_settings asl ON (aa.author_id = asl.author_id AND asl.setting_name = ? AND asl.locale = ?)
JOIN articles a ON (a.article_id = aa.submission_id AND a.status = ' . STATUS_PUBLISHED . ')
JOIN published_articles pa ON (pa.article_id = a.article_id)
JOIN issues i ON (pa.issue_id = i.issue_id AND i.published = 1)
WHERE ' . (isset($journalId)?'a.journal_id = ? AND ':'') . '
(aa.last_name IS NOT NULL AND aa.last_name <> \'\')' .
$initialSql . 'ORDER BY aa.last_name, aa.first_name';
$debug_export = var_export($paolo_query, true);
error_log($debug_export . "\n", 3, "/tmp/paolo.log");
error_log("-----------------------------------------------\n", 3, "/tmp/paolo.log");
$debug_export = var_export($params, true);
error_log($debug_export . "\n", 3, "/tmp/paolo.log");
error_log("-----------------------------------------------\n", 3, "/tmp/paolo.log");
$debug_export = var_export($rangeInfo, true);
error_log($debug_export . "\n", 3, "/tmp/paolo.log");
error_log("-----------------------------------------------\n", 3, "/tmp/paolo.log");
$result =& $this->retrieveRange($paolo_query, $params, $rangeInfo);
⌠snip âŚ
C)
/tmp/paolo.log as for above debug procedure
Then ⌠the query looks ok. Iâm not sure but $params looks good. About $rangeInfo, thatâs NULL and I guess the software canât deal with that null value. Or maybe not, but the
NOTICE: Undefined offset: 6
in /var/log/apache2/error.log tell us something.
Ty for any hint. PaoloC
And maybe the problem is into retrieveRange function @ $params âŚ
PaoloC
The error âDB Error: Unknown column âaa.first_name02â in âorder clauseââ indicates that even your âunmodifiedâ version is different from the stock download. Can you replace your files with the stock download and test?
Sorry, must be about my English language because Iâm from Italy, but I tell you again , the problem arose before any change and whatever I switch from standard to modified source and vice-versa.
But of course youâre right, tomorrow I will reload the file, itâs ok
wget -c ojs/AuthorDAO.inc.php at ojs-stable-2_4_8 ¡ pkp/ojs ¡ GitHub
that version?
TyL. Paolo
Be sure to download the ârawâ version if downloading a single file directly from Github.
wget -c https://raw.githubusercontent.com/pkp/ojs/ojs-stable-2_4_8/classes/article/AuthorDAO.inc.php
A fresh download should not have âaa.first_name02â.
Since we do not know where the â02â came from in your copy, I would still recommend downloading a fresh copy of all of the source files from http://pkp.sfu.ca/ojs/download/ojs-2.4.8.tar.gz . At the very least, you could compare your installation with the stock download to see if there are other discrepancies.
Hello.
Problem
sorted out.
Today downloaded
both
http://pkp.sfu.ca/ojs/download/ojs-2.4.8.tar.gz
and
https://raw.githubusercontent.com/pkp/ojs/ojs-stable-2_4_8/classes/article/AuthorDAO.inc.php
and diffed the AuthorDAO.inc.php files. The files are
the ==.
I then recovered from a backup the file installed by the
upgrade procedure we originally ran, as below
447 tar czvf
/root/ojs.tarz ojs
448 cd rivistapiccolaimpresa
449 ls
450 php tools/upgrade.php patch
451 php tools/upgrade.php upgrade
The file is different. Looks like the upgrade
procedure went wrong but we didnât notice.
I installed the file from the raw repository.
Looks good. Ty everybody for support.
PaoloC
Good to hear!
If you havenât intentionally made local changes to your source files, I strongly recommend using the âFull Packageâ upgrade method rather than the âPatchâ upgrade method. It avoids unwelcome surprises like this.