レンタルサーバーのPHPをバージョン5から7に変更したところ、プラグインのdirectresizeがエラーを起こすようになりました。
より新しそうなバージョンをネットで拾っていくつか試したので、エラーメッセージは記録していませんが、大体次のような感じでした。
①元々使っていたバージョン(多分0.8系):directResize.php 811行目 mysql_real_escape()関連など
②0.8.3:directResize.php 816行目 これもmysqlのエスケープ関連
③今入れ直したバージョン0.8.0(https://modx.com/extras/package/directresize):459行目 eregi_replace関連
どれもPHP7では廃止された関数のようですが、一々潰しても埒が明かないので断念しました。
そこで、PHP7に対応したEVO用のdrectresizeは無いのでしょうか?
【サーバー環境】
Just-size net
PHP7.1.0
MySQL 5.1.61
Modx 1.0.19J
			
			
													PHP7対応のEVO用drectresize?
PHP7対応のEVO用drectresize?
					最後に編集したユーザー adamod [ 2017年9月23日(土) 13:55 ], 累計 1 回
									
			
									
						PHP7対応のEVO用drectresize?
yamaさん、何時もお世話になります。
これは2番めに試したバージョンですね。上述のように816行目ののところで最初のエラーが出ます。
詳しいエラーメッセージを見るためにもう一度インストールしても良いですが、一応やり方としてはdrgalleriesフォルダとassets/plugins/directresize以下をアップロード(上書き)して、directResize.tplを管理画面へコピー&ペーストすれば良いんですよね?
			
			
									
									
						これは2番めに試したバージョンですね。上述のように816行目の
コード: 全て選択
if ($escape) $o = $modx->db->escape($o);詳しいエラーメッセージを見るためにもう一度インストールしても良いですが、一応やり方としてはdrgalleriesフォルダとassets/plugins/directresize以下をアップロード(上書き)して、directResize.tplを管理画面へコピー&ペーストすれば良いんですよね?
PHP7対応のEVO用drectresize?
確認が遅くなってすみません、こちらは解決されましたでしょうか?まだでしたら、すぐ修正します。
			
			
									
									
						PHP7対応のEVO用drectresize?
ご連絡有難うございます。
残念ながら未だ解決していません。修正いただければ幸いです。
			
			
									
									
						残念ながら未だ解決していません。修正いただければ幸いです。
PHP7対応のEVO用drectresize?
https://github.com/extras-evolution/dir ... ccc4f9ae00
修正しました
https://github.com/extras-evolution/dir ... master.zip
assets/plugins/directresize/directResize.php を上書きしてみてください
			
			
									
									
						修正しました
https://github.com/extras-evolution/dir ... master.zip
assets/plugins/directresize/directResize.php を上書きしてみてください
PHP7対応のEVO用drectresize?
修正版有難うございます。
今ファイルを上書きしてプラグインを有効にしましたが、管理画面で写真が掲載されたページ(リソース)を開こうとすると、どれも次のようなエラーが出ます。
最初の方でそんなファイルはないと書いてあるPA080071.jpgは、プラグインをオフにするとちゃんと読み込まれるので、存在している筈です。
因みに、「プラグインの作成/編集」画面に出てくるプラグインコードの中身は、以前のままで良かったでしょうか?
			
			
									
									
						今ファイルを上書きしてプラグインを有効にしましたが、管理画面で写真が掲載されたページ(リソース)を開こうとすると、どれも次のようなエラーが出ます。
コード: 全て選択
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; directResize has a deprecated constructor in /home/abcd/public_html/assets/plugins/directresize/directResize.php on line 3
« MODX Parse Error »
MODX encountered the following error while attempting to parse the requested resource:
« PHP Parse Error »
PHP error debug
Error : exif_imagetype(assets/images/moto/Gear/PA080071.jpg): failed to open stream: No such file or directory
ErrorType[num] :	WARNING[2]
File :	/home/abcd/public_html/assets/plugins/directresize/directResize.php
Line :	101
Source :	if (exif_imagetype($imgFile) == 1){
Basic info
REQUEST_URI :	/manager/index.php?a=27&id=203
Manager action :	27 - Editing resource
Current Plugin :	DirectResize(OnDocFormPrerender)
Referer :	http://www.abcd.com/manager/index.php?a=1&f=tree
User Agent :	Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36
IP :	180.123.123.123
Benchmarks
MySQL :	0.0036 s (12 Requests)
PHP :	0.0108 s
Total :	0.0144 s
Memory :	1.02 MB
Backtrace
1	include_once()
manager/index.php on line 223
2	$modx->invokeEvent()
manager/actions/document/mutate_content.dynamic.php on line 60
3	$modx->evalPlugin()
manager/includes/document.parser.class.inc.php on line 3279
4	eval()
manager/includes/document.parser.class.inc.php on line 1783
5	RenderOnFrontend()
manager/includes/document.parser.class.inc.php(1783) : eval()'d code on line 37
6	directResize->directResize()
assets/plugins/directresize/directResize.php on line 931
7	directResize->ProcessContent()
assets/plugins/directresize/directResize.php on line 17
8	directResize->PrepareImg()
assets/plugins/directresize/directResize.php on line 491
9	exif_imagetype()
assets/plugins/directresize/directResize.php on line 101因みに、「プラグインの作成/編集」画面に出てくるプラグインコードの中身は、以前のままで良かったでしょうか?
PHP7対応のEVO用drectresize?
https://github.com/extras-evolution/dir ... 6ccf9af153
修正しました
https://github.com/extras-evolution/dir ... master.zip
assets/plugins/directresize/ フォルダを上書きしてみてください
たぶんそれだけでは直らないので、添付のファイルを解凍して追加で assets/plugins/directresize/ フォルダに上書きしてみてください。これも動作しない可能性がありますが、動作しなければまた連絡ください。
			
							修正しました
https://github.com/extras-evolution/dir ... master.zip
assets/plugins/directresize/ フォルダを上書きしてみてください
たぶんそれだけでは直らないので、添付のファイルを解凍して追加で assets/plugins/directresize/ フォルダに上書きしてみてください。これも動作しない可能性がありますが、動作しなければまた連絡ください。
- 添付ファイル
- 
			
		
		
				 directResize.zip directResize.zip
- (8.84 KiB) ダウンロード数: 1350 回
 
PHP7対応のEVO用drectresize?
上記の修正版を試しました。(「添付ファイル」も含む)
すると、管理画面の各リソースの編集画面にはエラーは出ず、普通に文書が表示されるようになりました。
ただ、読み込んだ写真をドラッグで移動したり編集したりは出来ないですね。
あと、その状態でサイトにアクセスすると、次のようなエラー(冒頭部分のみ)が出てコンテンツは表示されなくなります。
一応確認ですが、修正パッチのinstall以下に入っているテンプレートファイルは、コードをコピーして管理画面でプラグイン>directresizeのテンプレートコードに貼り付ければ良いのですね?
			
			
									
									
						すると、管理画面の各リソースの編集画面にはエラーは出ず、普通に文書が表示されるようになりました。
ただ、読み込んだ写真をドラッグで移動したり編集したりは出来ないですね。
あと、その状態でサイトにアクセスすると、次のようなエラー(冒頭部分のみ)が出てコンテンツは表示されなくなります。
コード: 全て選択
« PHP Parse Error »
PHP error debug
Error : exif_imagetype(/assets/images/index/abcd.png): failed to open stream: No such file or directory
ErrorType[num] :	WARNING[2]
File :	/home/abcd/public_html/assets/plugins/directresize/directResize.php
Line :	101
Source :	if (exif_imagetype($imgFile) == 1){
 
				