в моей регистрационной форме Wordpress, я хочу вернуть массив $error
в оповещении.
Я пробовал console.log()
, но ничего не возвращает, также с или без JSON.stringify()
возвращает уведомление сЕдинственное слово: true
внутри.
if($_POST){
global $wpdb;
//check no space
// ﻧﺘﺤﻘﻖ ﻣﻦ ﻋﺪﻡ ﻭﺟﻮﺩ ﻣﺴﺎﻓﺎﺕ
$username = $wpdb -> escape($_POST['username']);
// اﻟﻤﺴﺘﺨﺪﻡ
$email = $wpdb -> escape($_POST['email']);
// اﻻﻳﻤﻴﻞ
$password = $wpdb -> escape($_POST['pass']);
//اﻟﺒﺎﺳﻮﻭﺭﺩ
$conpassword = $wpdb -> escape($_POST['passtwo']);
//ﺗﺄﻛﻴﺪ اﻟﺒﺎﺳﻮﻭﺭﺩ
$error = array(); // ﻟﺘﺨﺰﻳﻦ اﻟﺘﺤﺬﻳﺮاﺕ
// حالة السترينج
if(strpos($username," ") ==! false){ //true
$error['username_space']= " اسم المستخدم يجب الا يحتوي على فراغات " ;
}
// الحقل فارغ
if(empty($username)){
$error['username_empty'] = " الحقل لا يمكن أن يترك فارغ " ;
}
// التشابه
if(username_exists($username)){
$error['username_exis'] =" اسم المستخدم موجود بالفعل" ;
}
// الايميل غير صالح
if (!is_email($email)){
$error['email_notvalid'] =" البريد الالكتروني غير صالح " ;
}
// الايميل مستخدم
if(email_exists($email)){
$error['email_exis'] = "البريد الالكتروني مستخدم بالفعل";
}
// اثنان من السترينجز تتطابق ام لا
if(strcmp($password , $conpassword)!==0){
$error ['passnotmatch'] = "ﺣﻘﻠﻲ ﻛﻠﻤﺔ اﻟﺴﺮ ﻻ ﻳﺘﻄﺎﺑﻘﺎ ";
}
if(count($error)==0){
// انشاء مستخدم
wp_create_user($username,$password,$email);
echo"ﺗﻢ اﻟﺘﺴﺠﻴﻞ ﺑﻨﺠﺎﺡ ";
echo"<script> window.location = '".site_url()."/redafterreg/'</script>";
exit();
}else{
$errorprint = print_r($error);
$errorjs = json_encode($errorprint);
echo "<script> alert( JSON.stringify($errorjs)) </script>";
}
выходные данные должны быть строками внутри массива $error
в окне предупреждения.но он возвращает только ture
, как я упоминал ранее.Буду благодарен за вашу помощь.