I have been using the web based bibliography management system aigaion2 for some years, accumulating thousands of references & linked pdf files. However after upgrading from ubuntu 12.04 to 14.04 - with a change in the version of PHP - this fails to give me a log-in screen. There are 2 warning messages;
I am at a loss how to deal with this - does anybody have this working with a recent PHP version or might have any idea how to fix this. From the aigaion website, it seems the package does not have any active maintainers any longer.
A PHP Error was encountered
Severity: Warning
Message: Creating default object from empty value
Filename: gettext/gettext.inc
Line Number: 195
A PHP Error was encountered
Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at /data1/aigaion2/codeigniter/libraries/Exceptions.php:166)
Filename: helpers/url_helper.php
Line Number: 541
I'm trying to use Aigaion too. I got some errors.
You will find new release here :
On source.forge : Source.Forge
This release replaces old php "commands" to some new ones
eregi to preg_replace
split to explode, etc.
It seems that a 2.5 beta exists :
Release 2.5 beta
I'll check today.
For your problem, I did a small update in the module aigaion2\aigaionengine\libraries\gettext\gettext.inc ligne 193
function _bind_textdomain_codeset($domain, $codeset) {
global $text_domains;
/*
* MVT 150505 : Add !isset due to warning errors
* It is a temporary features. It should be better
* to migrate to a new PHP Release
* Tested with Xamp / Php 5.6.8
* I did this patch in order to use Aigaion with no errors
* I don't have a large knowledge in PHP. Sorry
*/
if (!isset($text_domains[$domain]))
$text_domains[$domain] = new stdClass();
$text_domains[$domain]->codeset = $codeset;
}
I found an answer here :
Empty objects
This should be a little patch...
further development of aigaion is being made at http://github.com/aigaion. This verison is compatible with php7, besides not fully updated.
Related
It seems the whole world community has never encountered this php error before, judging from google results:
I am trying to set up the Typo3 CMS and I get this error
Type of TYPO3\CMS\Core\IO\CsvStreamFilter::$params must be mixed (as in class php_user_filter) in C:\xampp\htdocs\typo3test\example-project-directory\public\typo3\sysext\core\Classes\IO\CsvStreamFilter.php on line 26
Line 26 in that file looks as follows:
class CsvStreamFilter extends \php_user_filter
I am rather new to PHP, how do I fix this error?
What I have tried so far:
changingdeclare(strict_types=1) in that file to declare(strict_types=0) but it just gets overwritten again
Help!
The instructions in the typo3 guide are slightly outdated.
So in composer create-project typo3/cms-base-distribution:^11 example-project-directory just replace 11 with 11.5.1 or whatever is the lastest version.
OS: macOS Big Sur
PHP version: 7.4.1
Package name and version: google/apiclient: ^2.12.3
Whenever I switch the PHP version to 7.4.1 I get this error
Parse error: syntax error, unexpected 'static' (T_STATIC) in /Users/webtechstreet4/Local Sites/fvtest/app/public/wp-content/plugins/form-vibes-pro/vendor/psr/cache/src/CacheItemInterface.php on line 75
The library works great on PHP 8 but gives the above error when switching to PHP 7.
Screenshot
Actually, I sorted it out by changing the system PHP version and running composer update.
I thought I needed to change the site PHP version but it was actually the system PHP version.
here is the GitHub issue link: https://github.com/googleapis/google-api-php-client/issues/2246
it is because, static return type is available only for PHP 8, I have same issue, just for temporary you can change
.\vendor\psr\cache\src\CacheItemInterface.php
line number 75 just remove return type static like this
public function set($value);
I have two sites using Codeigniter. Today I have updated sites to Codeigniter 3.1.7 (from 3.1.6). After that at one of this sites email validation had broken, valid_email validation rule doesn't work any more. On second site all fine. I had check out error logs and found error:
ERROR - 2018-02-06 10:13:21 --> Severity: Warning --> idn_to_ascii() expects parameter 3 to be long, string given /public_html/system/libraries/Form_validation.php 1235
Codeigniter's changlog says:
Updated Form Validation Library rule valid_email to use INTL_IDNA_VARIANT_UTS46 for non-ASCII domain names.
It seems to me that INTL_IDNA_VARIANT_UTS46 constant is not defined. Site using PHP Version 5.6.30
How can I fix this issue?
I found discussion of this problem here.
Issue is outdated ICU library (ICU version 4.2.1 was installed)
Go to system/library/email.php and replace valid_email()
public function valid_email($email)
{
if (function_exists('idn_to_ascii') && defined('INTL_IDNA_VARIANT_UTS46') && $atpos = strpos($email, '#'))
{
$email = self::substr($email, 0, ++$atpos).idn_to_ascii(self::substr($email, $atpos), 0, INTL_IDNA_VARIANT_UTS46);
}
return (bool) filter_var($email, FILTER_VALIDATE_EMAIL);
}
just get the latest library for email
Get the latest codeigniter zip file
then go to system->libraries->Email file
copy that email file and paste it into your previous Email.php library file then it will work
I think there's a better way to sort out that issue.
As we all know that email library not supported in php 7.2 and that's why error occured
idn_to_ascii(): INTL_IDNA_VARIANT_2003 is deprecated
Error Screenshot of codeigniter email library
Quick Solution :
--> Go to cPanel
--> Select PHP version
--> change it to 7.1 instead of 7.2
For my case. I am also facing this issue.
Error:
Severity: 8192
Message: idn_to_ascii(): INTL_IDNA_VARIANT_2003 is deprecated Filename: libraries/Form_validation.php
Line Number: 1234
I downloaded the Latest CodeIgniter version. Then from the system/libraries folder copied Email.php and Form_validation.php. Then replaced with Existing Email.php and Form_validation.php at the same path.
After replace, It is start working Fine..!!
Thanks #Evgeny for Guide.
The above issue would occur when you have incompatible CI and PHP version combinations. I mean newer PHP version and older CI version, vice-versa. I had PHP 7.3 on my machine and the CI repo/project I downloaded from github had CI version 3.1.5. I had to replace the system folder (of 3.1.5 with that of newer CI versions, 3.1.10 in my case) to resolve this issue
I followed the instructions on this page for installing the SDK and running "Hello, World!". The following error is shown on my localhost:8080
Notice: Use of undefined constant GAE_INCLUDE_REQUIRE_GS_STREAMS - assumed 'GAE_INCLUDE_REQUIRE_GS_STREAMS' in /Users/mhmhsh/google_appengine/php/sdk/google/appengine/runtime/Setup.php on line 32
Hello, World!
I haven't found any thing related to this error on google. It seems that the constant 'GAE_INCLUDE_REQUIRE_GS_STREAMS' is not defined anywhere else in the package. Why haven't others reported the same issue?
I believe there was a glitch in the just-released 1.8.1 SDK for PHP, and that the fix is to edit /google/appengine/tools/devappserver2/php/setup.php, adding the following to the $setup function definition:
$allowed_buckets = ini_get(
'google_app_engine.allow_include_gs_buckets');
define('GAE_INCLUDE_REQUIRE_GS_STREAMS',
// All values are considered true except the empty string.
$allowed_buckets ? 1 : 0);
(I'll confirm and update this message).
I expect that a new version of the SDK will be uploaded very soon that fixes that issue.
Update: yes, this is the correct patch. The SDK for the next release, which fixes this, should be available within a few weeks.
I'm using XAMPP with PHP 5.3.1 on my local server, my Cake project use "1.2.0.6311 beta", was all ok, but now i get this error msg
Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\rh_pura\cake\libs\debugger.php on line 100
Deprecated: Assigning the return value of new by reference is deprecated in C:\xampp\htdocs\rh_pura\cake\libs\cache\file.php on line 91
Fatal error: Class 'Router' not found in C:\xampp\htdocs\rh_pura\cake\dispatcher.php on line 333
in my other server is all ok too, can someone help me?
I Solved:
Open cake/libs/configure.php and find the line "error_reporting(E_ALL);" replace that line with the following:
error_reporting(E_ALL &
~E_DEPRECATED);
And about the fatal error, just deleted all the files in /tmp
Thanks! :)
The first two are just warnings and can be ignored. Basically the code is doing osmething like
$myobj =& new SomeObj;
which in PHP5 is no longer necessary - objects are passed around as references by default and the & is no longer necessary.
The fatal error, however, is unfixable as-is - somewhere you're missing a cake class file (not included? not installed?)
if you are just starting with cake, which it seems is the case, you should not be using 1.2 beta, instead checkout 1.3.7.
Even if you are not new to cake, and this is an already existing application you should be using 1.2.9 the upgrade should be painless as there is nothing that breaks backwards compatibility for minor releases.
You should always be using cake as a git repo, so you can just check out what ever version you like and try it.