PHP ကို အသုံးပြု. Imagecolorresolve () ကို isagecolorresolve () ကို အသုံးပြုသော function တစ်ခုဖြစ်ပြီးအရောင်တစ်ခု၏အညွှန်းကိန်းတန်ဖိုးကိုပြန်လည်ရရှိစေသောအများအားဖြင့်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ အကယ်. အရောင်သည် palette တွင်ရှိပြီးသား ဖြစ်. လက်ရှိအညွှန်းကိန်းကိုပြန်ပို့ပါက, သို့သော်တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည်ဤအမှားအယွင်းကိုတွေ့ရလိမ့်မည်။
Warning: imagecolorresolve(): supplied resource is not a valid gd image resource
ဤအမှားဆိုသည်မှာပထမ ဦး ဆုံး parameterolsolve () ကို ပထမ ဦး ဆုံး parameter သည်မှန်ကန်သော gd image အရင်းအမြစ်မဟုတ်ပါ။ ဒါဆိုဘယ်လိုစုံစမ်းပြီးဖြေရှင်းသင့်သလဲ။ ဤဆောင်းပါးသည်အသေးစိတ်ရှင်းပြပါလိမ့်မည်။
အသုံးအများဆုံးပြ problem နာမှာ image အရင်းအမြစ်များကိုမှန်ကန်စွာမဖန်တီးနိုင်သည့်အရာမှာ isaecreatjpeg () နှင့် imagecreatefrofeRefefrofefrofeRefefrofeRefefrofeRefefrofefrofeRefefromefromefrompng () ဟုခေါ်ဆိုခြင်း။
ဥပမာအမှားကုဒ်:
<?php
$img = imagecreatefromjpeg('https://m66.net/uploads/sample.jpg');
$color = imagecolorresolve($img, 255, 0, 0);
?>
အကယ်. လမ်းကြောင်းသည် 'https://m66.net/uploads/sample.jpg သည် လက်လှမ်းမမီသောသို့မဟုတ်မှန်ကန်သော JPEG Image ကိုမရရှိပါက jpeg image မရှိသေးပါ ။
ဖြေရှင်းချက် - $ IMG သည်ခိုင်လုံသောအရင်းအမြစ်တစ်ခုဖြစ်ရန်စစ်ဆေးမှုများကိုစစ်ဆေးပါ။
မှန်ကန်သောအရေးအသား:
<?php
$img = imagecreatefromjpeg('https://m66.net/uploads/sample.jpg');
if (!$img) {
die('Image Loading မအောင်မြင်ပါ,ကျေးဇူးပြုပြီးပုံလမ်းကြောင်းသို့မဟုတ်ပုံစံမှန်ကန်မှုရှိမမှန်စစ်ဆေးပါ。');
}
$color = imagecolorresolve($img, 255, 0, 0);
?>
အကယ်. လမ်းကြောင်းကိုမှားယွင်းစွာရေးသားထားပါကသို့မဟုတ်ဖိုင်မရှိပါက, သို့မဟုတ်ဖိုင်မရှိပါက၎င်းသည်ပုံသဏ္ဌာန်အရင်းအမြစ်များကိုဖန်တီးရန်မတတ်နိုင်ခြင်းဖြစ်သည်။
အကြံပြုချက် -
local_exists () ကိုပထမ ဦး ဆုံးစစ်ဆေးရန် () ကို သုံးပါ။
အကယ်. ၎င်းသည်အဝေးမှပုံရိပ်ဖြစ်လျှင် url သည်မှန်ကန်သည်ကိုစစ်ဆေးရန် Get_headers () ကို သုံးပါ။
ဥပမာ -
<?php
$url = 'https://m66.net/uploads/sample.jpg';
$headers = get_headers($url, 1);
if (strpos($headers[0], '200') === false) {
die('ဝေးလံခေါင်ဖျားပုံမတည်ရှိပါဘူးသို့မဟုတ်လက်လှမ်းမမှီပါဘူး。');
}
$img = imagecreatefromjpeg($url);
if (!$img) {
die('ပုံအရင်းအမြစ်များကို ဖန်တီး. မရပါ。');
}
$color = imagecolorresolve($img, 255, 0, 0);
?>
Imagecolorresolve () PHP ၏ GD စာကြည့်တိုက် function ကိုပိုင်ဆိုင်သည်။ အကယ်. သင်၏ PHP ပတ် 0 န်းကျင်သည် GD extension ကို install လုပ်ခြင်းသို့မဟုတ်ဖွင့်လှစ်ခြင်းမပြုပါက,
ဖြေရှင်းချက် -
Phpinfo () GD module ကိုဖွင့်ထားသလားဆိုတာအတည်ပြုရန် Phpinfo () ကိုစစ်ဆေးပါ။
မဖွင့်ထားပါက Linux စနစ်သည်အောက်ပါ command ကို install လုပ်ရန်လုပ်ဆောင်နိုင်သည်။
sudo apt-get install php-gd
sudo service apache2 restart
Windows System ကို Php.INI ဖိုင်တွင်တွေ့ရန်လိုအပ်သည် ။ extension = gd , အရင် semicolon ကိုဖယ်ရှားပြီးဆာဗာကို restart လုပ်ပါ။
တခါတရံယုတ္တိဗေဒပြ problems နာများကြောင့်ပုံသဏ္ဌာန်များသည်ကြိုတင်မောက်ခရွှေ့မှုများကိုကြိုတင်ပျက်စီးစေနိုင်သည်။ ဥပမာအားဖြင့်, Imagedestroy () ကိုမှားယွင်းစွာခေါ်ဆိုသည်, ၎င်းသည်မမှန်ကန်သောအရင်းအမြစ်များကိုဖြစ်ပေါ်စေသည်။
ဥပမာအမှား:
<?php
$img = imagecreate(100, 100);
imagedestroy($img); // ဖျက်ဆီး!
$color = imagecolorresolve($img, 255, 0, 0); // အမှားတစ်ခုသတင်းပို့ပါ
?>
Imagecolorresolve () ဟုခေါ်သောမတိုင်မီပုံရိပ်အရင်းအမြစ်သည်အထိတရားဝင်ကြောင်းသေချာပါစေ။
ဓာတ်အားပေးစက်ရုံ၏အမှားအယွင်းတစ်ခုသတင်းပို့သည့်အခါမှန်ကန်သော gd image အရင်းအမြစ်မဟုတ်သည့် အခါပြ troubl နာဖြေရှင်းခြင်းများမှာ -
ပုံရိပ်အရင်းအမြစ်ကိုအောင်မြင်စွာဖန်တီးနိုင်ကြောင်းအတည်ပြုပါ။
ဖိုင်လမ်းကြောင်းသို့မဟုတ်ဝေးလံခေါင်သီသော URL သည်မှန်ကန်ကြောင်းစစ်ဆေးပါ။
GD extensions များအတွက် PHP ပတ်ဝန်းကျင်ကိုတပ်ဆင်ပြီးဖွင့်ထားကြောင်းသေချာအောင်လုပ်ပါ။
သယံဇာတအရင်းအမြစ်များကိုကြိုတင်ပြင်ဆင်ထားခြင်းကိုရှောင်ရှားရန်ကုဒ်ဆိုင်ရာယုတ္တိဗေဒကိုစစ်ဆေးပါ။
သငျသညျကိုသတိရှိရှိခြေလှမ်းတစ်ခုချင်းစီကိုစစ်ဆေးမှုများကိုထည့်သွင်းထားသရွေ့ဤအမှားအယွင်းအများစုကိုအလွယ်တကူရှောင်ရှားနိုင်သည်။