Heim  >  Artikel  >  CMS-Tutorial  >  Detaillierte Erläuterung der Feldverarbeitungsfunktion der Imperial CMS-Funktionsentschlüsselung

Detaillierte Erläuterung der Feldverarbeitungsfunktion der Imperial CMS-Funktionsentschlüsselung

silencement
silencementnach vorne
2019-11-25 15:07:162484Durchsuche

Detaillierte Erläuterung der Feldverarbeitungsfunktion der Imperial CMS-Funktionsentschlüsselung

1. Vorwort:

Empire CMS bietet leistungsstarke benutzerdefinierte Feldverarbeitungsfunktionen, die den Benutzern die sekundäre Entwicklung von Imperial CMS erheblich erleichtern!

Beim Hinzufügen/Ändern von Feldern kann Imperial CMS „Informationsverarbeitungsfunktion im Hintergrund hinzufügen“, „Informationsverarbeitungsfunktion im Hintergrund ändern“, „Informationsverarbeitungsfunktion in der Rezeption hinzufügen“ und „Ändern“ festlegen Informationsverarbeitungsfunktion in der Rezeption“ bzw. Stellen Sie Funktionen zur Verarbeitung von Feldinhalten ein, die häufig für Modelle verwendet werden, die besondere Anforderungen an das Speicherformat von Feldinhalten haben. Heute werden wir kurz das Produktionsformat der Verarbeitungsfunktion erläutern. Die spezifische Einstellungsposition der Feldverarbeitungsfunktion ist in der folgenden Abbildung dargestellt:

Detaillierte Erläuterung der Feldverarbeitungsfunktion der Imperial CMS-Funktionsentschlüsselung

2. Grundlegende Einstellungsschritte:

1.
2. Kopieren Sie die Funktion in den Inhalt der Datei e/class/userfun.php.
3. Ändern Sie den Namen der Feldeinstellungsverarbeitung.

3. Format der Feldverarbeitungsfunktion:

Der Code lautet wie folgt:

function user_FieldFun($mid,$f,$isadd,$isq,$value,$ cs){
return $value;
}

Parameterbeschreibung:

user_FieldFun: Funktionsname
$mid: Systemmodell-ID
$f: Feldname
$isadd: Wenn der Wert 0 ist, werden Informationen hinzugefügt. Wenn der Wert 1 ist, werden die Informationen geändert.
$isq: Wenn der Wert 0 ist, handelt es sich um eine Hintergrundverarbeitung ist 1, es handelt sich um eine Vordergrundverarbeitung
$value: Ursprünglicher Inhalt des Feldes
$cs: Zusätzliche Feldparameter, Parameterinhalt, der in der Feldverarbeitungsfunktion festgelegt wird

Beispiel für die Feldverarbeitungsfunktion:

Beispiel 1: Fügen Sie automatisch das Wort „[EmpireCMS]“ vor dem Titel hinzu
Backend-Feldfunktionseinstellungen: user_AddTitle

Der Code lautet wie folgt:

function user_AddTitle($mid,$f,$isadd,$isq,$value,$cs){
$value='[EmpireCMS]'.$value;
return $value;
}

Beispiel 2: Der Titelinhalt wird durch die Kombination von Writer- und Befrom-Feldern festgelegt
Hintergrundfeldfunktion: user_TogTitle
Das Titelfeld zeigt den HTML-Code an:
(Hinweis: Da der Titel ein erforderliches Element ist, muss ein Anfangswert angegeben werden. Es wird angezeigt, dass der Inhalt leer ist)

Der Code lautet wie folgt:

function user_TogTitle($mid,$f,$isadd,$isq,$value,$cs){
$value=$_POST['writer'] .$_POST['befrom'];
return $value;
}

Beispiel 3: Bilder hochladen und automatisch Miniaturansichten generieren
Hintergrundfeld-Funktionseinstellungen: user_TranImgAuto##170,120
(Erklärung: Der Hintergrundparameter 170 stellt die Miniaturbildbreite dar, 120 ist die Miniaturbildhöhe)
Das Feld „Bild hochladen“ zeigt den HTML-Code an:
(Hinweis: Der Variablenname verwendet „Feldname“ + Imgrs, was der Variablen „$filetf“ in der Funktion entspricht)

Der Code lautet wie folgt:

function user_TranImgAuto($mid,$f,$isadd,$isq,$value,$cs){
global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$tranpicturetype,$musername;
$filetf=$f.'imgrs';//变量名
if(!$_FILES[$filetf]['name'])
{
return '';
}
$classid=(int)$_POST['classid'];
$id=(int)$_POST['id'];
$filepass=(int)$_POST['filepass'] ;
$filetype=GetFiletype($_FILES[$filetf]['name']);
$pr=$empire->fetch1("select qaddtran,qaddtransize,qaddtranimgtype from {$dbtbpre}enewspublic limit 1 ");
if(!$pr['qaddtran'])
{
printerror("CloseQTranPic","",1);
}
if(!strstr($pr ['qaddtranimgtype'],"|".$filetype."|"))
{
printerror("NotQTranFiletype","",1);
}
if($_FILES[$ filetf]['size']>$pr['qaddtransize']*1024)
{
printerror("TooBigQTranFile","",1);
}
if(!strstr( $tranpicturetype,','.$filetype.','))
{
printerror("NotQTranFiletype","",1);
}
$tfr=DoTranFile($_FILES[$ filetf]['tmp_name'],$_FILES[$filetf]['name'],$_FILES[$filetf]['type'],$_FILES[$filetf]['size'],$classid);
if($tfr['tran'])
{
$csr=explode(',',$cs);
$maxwidth=$csr[0];
$maxheight=$ csr[1];
$yname=$tfr['yname'];
$name=$tfr['name'];
include_once(ECMS_PATH.'e/class/gd.php') ;
//生成缩图
$filer=ResizeImage($yname,$name,$maxwidth,$maxheight,$public_r['spickill']);
DelFiletext($yname);
if($filer['file'])
{
//写入数据库
$type=1;
$filetime=date("Y-m-d H:i:s");
$filesize=@filesize($filer['file']);
$filename=GetFilename(str_replace(ECMS_PATH,'',$filer['file']));
$adduser='[Member ]'.$musername;
$infoid=$isadd==1?0:$id;
$empire->query("insert into {$dbtbpre}enewsfile(filename,filesize,adduser,path, filetime,classid,no,type,id,cjid,fpath) Values('$filename','$filesize','$adduser','$tfr[filepath]','$filetime','$classid',' [".$f."]".addslashes(RepPostStr($_POST[title]))."','$type','$infoid','$filepass','$public_r[fpath]');" );
if($isadd==0)
{
$tbname=$emod_r[$mid]['tbname'];
if(strstr($emod_r[$mid][' tbdataf'],','.$f.','))
{
$ir=$empire->fetch1("select stb from {$dbtbpre}ecms_".$tbname." where id ='$id'");
$ifr=$empire->fetch1("select ".$f." from {$dbtbpre}ecms_".$tbname."_data_".$ir[stb]. " where id='$id'");
$ifval=$ifr[$f];
}
else
{
$ir=$empire->fetch1(" Wählen Sie „.$f.“ aus {$dbtbpre}ecms_“.$tbname.“ ($ifval)
{
DelYQTranFile($classid,$id,$ifval,$f);
}
}
$value=str_replace($tfr['filename'], $filename,$tfr['url']);
}
}
else
{
$value='';
}
return $value;
}

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Feldverarbeitungsfunktion der Imperial CMS-Funktionsentschlüsselung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:www.word666.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen