Php檔案:
<?php header("content-type:text/html;charset=utf-8"); //获得表单提交的数据 $data=$_POST['data']; if(!empty($data)) //判断数据是否获得,不为空则继续执行 { foreach($data['tag'] as $v) //遍历数组,获得具体内容 { $content[$v[1]]=$v[2]; } //json_encode $content=json_encode($content); $recom_position=$data['recom_position']; $recom_title=$data['recom_title']; $recom_url=$data['recom_url']; //读取文件config.ini $fp=fopen("data/config.ini","r"); $a=fgets($fp); fclose($fp); $a=substr($a,1); //截取字符串,去掉第一个空格 $b=explode(" ",$a); //返回数组 //判断位置是否唯一 if(in_array($recom_position,$b)) { echo "<script language='javascript'>"; echo "alert('您选择的位置【 ".$recom_position." 】已经存在,请返回重新选择');"; echo "window.location='index.html';"; echo "</script>"; } else { $str=" ".$recom_position; $fp=fopen("data/config.ini","a"); fwrite($fp,$str); fclose($fp); //以xml格式组成字符串 $data="<data> <seqnum><![CDATA[".$data['recom_position']."]]></seqnum> <recom_position><![CDATA[".$data['recom_position']."]]></recom_position> <recom_title><![CDATA[".$data['recom_title']."]]></recom_title> <recom_url><![CDATA[".$data['recom_url']."]]></recom_url> <recom_content><![CDATA[[".$content."]]></recom_content> </data>"; //创建一个文档实例 $document = new DOMDocument('1.0', "UTF-8"); if(!is_file("data/AddArray.xml")) //判断是否存在此文件,如果不存在则执行下面代码,创建xml文档及结构 { //使用缩进格式化输出 $document->formatOutput = true; //创建<priority>根节点 $root = $document->createElement('priority'); $document->appendChild($root); //设置priority的属性 $root->setAttribute('elapsedTime','352'); $root->setAttribute('countNums','5'); //创建<datalist>子节点 $datalist = $document->createElement('datalist'); //创建<data>子节点 $data = $document->createElement('data'); //创建<data>元素的第一个子节点<seqnum>,并设置其属性 $seqnum = $document->createElement('seqnum'); $seqnum->appendChild($document->createTextNode("<![CDATA['$recom_position']]>")); $data->appendChild($seqnum); //创建<data>元素的第二个子节点<recom_position>,并设置其属性 $recomposition = $document->createElement('recom_position'); $recomposition->appendChild($document->createTextNode("<![CDATA['$recom_position']]>")); $data->appendChild($recomposition); //创建<data>元素的第三个子节点<recom_title>,并设置其属性 $recomtitle = $document->createElement('recom_title'); $recomtitle->appendChild($document->createTextNode("<![CDATA['$recom_title']]>")); $data->appendChild($recomtitle); //创建<data>元素的第四个子节点<recom_url>,并设置其属性 $recomurl = $document->createElement('recom_url'); $recomurl->appendChild($document->createTextNode("<![CDATA['$recom_url']]>")); $data->appendChild($recomurl); //创建<data>元素的第五个子节点<recom_content>,并设置其属性 $recomcontent = $document->createElement('recom_content'); $recomcontent->appendChild($document->createTextNode("<![CDATA['$content']]>")); $data->appendChild($recomcontent); //追加<datalist>节点到根节点后 $datalist->appendChild($data); $root->appendChild($datalist); //保存对象树到AddArray.xml $document->save('data/AddArray.xml'); if(is_file("data/AddArray.xml")) { echo "<script language='javascript'>"; echo "alert('数据提交成功!');"; echo "window.location='index.html';"; echo "</script>"; } else { echo "数据提交失败,<a href='index.html'>点击这里</a>返回重新提交"; } } else { //设置格式 $document->formatOutput = true; //加载文件 $document->load ('data/AddArray.xml'); //获取上级节点 $utdm = $document->getElementsByTagName ('datalist'); //data 节点 $info = $utdm->item(0); //获得data下面的子节点的数据 $seqnum = $document->createElement("seqnum","<![CDATA['$recom_position']]>"); $recomposition = $document->createElement("recom_position","<![CDATA['$recom_position']]>"); $recomtitle = $document->createElement("recom_title","<![CDATA['$recom_title']]>"); $recomurl = $document->createElement("recom_url","<![CDATA['$recom_url']]>"); $recomcontent = $document->createElement("recom_content","<![CDATA['$content']]>"); $data = $document->createElement("data"); //给每个节点添加内容 $data->appendChild($seqnum); $data->appendChild($recomposition); $data->appendChild($recomtitle); $data->appendChild($recomurl); $data->appendChild($recomcontent); $info->appendChild($data); //保存文档 $document->save("data/AddArray.xml"); $fp = fopen("data/AddArray.xml", "w"); //打开XML文件,写入 if(fwrite($fp,$document->saveXML())) { echo "<script language='javascript'>"; echo "alert('数据提交成功!');"; echo "window.location='index.html';"; echo "</script>"; } else { echo "数据提交失败,<a href='index.html'>点击这里</a>返回重新提交"; } fclose($fp);//关闭XML文件 } } } else { echo "没有获得任何数据"; } ?>

本文討論了PHP中的crypt()和password_hash()的差異,以進行密碼哈希,重點介紹其實施,安全性和對現代Web應用程序的適用性。

文章討論了通過輸入驗證,輸出編碼以及使用OWASP ESAPI和HTML淨化器之類的工具來防止PHP中的跨站點腳本(XSS)。

自動加載PHP會在需要時自動加載類文件,從而通過減少內存使用和增強代碼組織來提高性能。最佳實踐包括使用PSR-4和有效組織代碼。

本文討論了在PHP中管理文件上傳大小的管理,重點是2MB的默認限制以及如何通過修改PHP.INI設置來增加它。

本文討論了PHP 7.1中引入的PHP中的無效類型,允許變量或參數為指定類型或NULL。它突出顯示了諸如提高可讀性,類型安全性和明確意圖的好處,並解釋瞭如何聲明

本文討論了unset()和unlink()功能在編程中的差異,重點關注其目的和用例。 unset()從內存中刪除變量,而unlink()從文件系統中刪除文件。兩者都對效率至關重要


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。