我正在尝试使用HTML创建一个使用PHP创建XML文件的网站。截至目前,它生成了XML文件,但是我想在生成XML文件后,在HTML表单中显示数据(我在HTML值中尝试了PHP代码snippits)。这将显示先前的信息并允许编辑任何字段。然后,这将用于生成新的XML文件。
用于显示以前XML数据的HTML表单(用于删除冗余类型,例如上次发生事故的日期)并接收要传递给PHP脚本的数据。
PHP脚本将数据输入到HTML表单并生成XML文件。
保存为1workinglavin.html
<html>
<head>
<title>XML Links Data</title>
</head>
<body>
<form method="POST" action="1workingbiblio.php">
<input type="hidden" name="create_xml" value="true">
Enter Message Of The Day: <input name="mo_td" id="mo_td" type="text" value ="??????CODE GOES HERE??????"/> <br/>
Enter Today's Date In "Month Day, Year Format": <input name="field_2" id="field_2" type="text"/> <br/>
Upcoming Events : <input name="field_3" id="field_3" type="text"/> <br/>
Safety: <input name="field_4" id="field_4" type="text"/> <br/>
Production: <input name="field_5" id="field_5" type="text"/> <br/>
Enter Message Of The Day: <input name="field_6" id="field_6" type="text"/> <br/>
Enter Message Of The Day: <input name="field_7" id="field_7" type="text"/> <br/>
Enter Message Of The Day: <input name="field_8" id="field_8" type="text"/> <br/>
Enter Message Of The Day: <input name="field_9" id="field_9" type="text"/> <br/>
Enter Message Of The Day: <input name="field_10" id="field_10" type="text"/> <br/>
Enter Message Of The Day: <input name="field_11" id="field_11" type="text"/> <br/>
Enter Message Of The Day: <input name="field_12" id="field_12" type="text"/> <br/>
Enter Message Of The Day: <input name="field_13" id="field_13" type="text"/> <br/>
Enter Message Of The Day: <input name="field_14" id="field_14" type="text"/> <br/>
Enter Message Of The Day: <input name="field_15" id="field_15" type="text"/> <br/>
<input type="submit" name="submit" value="Generate xml record"/><br/>
</form>
</body>
</html>
保存为1workingbiblio.php
<?php
if(isset($_POST['create_xml'])){
/*makesthepresenceoftheinvisiblecreate_xmlformmandatoryforthescriptaction,
*andstatesthatthe'title'formcannotbeleftblank*/
echo"MARCxmlfilegenerated";
/*InthissectionofthecodeIamassigningphp
*variablesforallformfieldsinbiblform.html*/
$mo_td=$_POST['mo_td'];
$field_2=$_POST['field_2'];
$field_3=$_POST['field_3'];
$field_4=$_POST['field_4'];
$field_5=$_POST['field_5'];
$field_6=$_POST['field_6'];
$field_7=$_POST['field_7'];
$field_8=$_POST['field_8'];
$field_9=$_POST['field_9'];
$field_10=$_POST['field_10'];
$field_11=$_POST['field_11'];
$field_12=$_POST['field_12'];
$field_13=$_POST['field_13'];
$field_14=$_POST['field_14'];
$field_15=$_POST['field_15'];
///////////////////////////////////////////////////////////////////////////////////
$accident_date = $field_2;
$acc_ts = strtotime($accident_date); // Get UNIX Timestamp (number of seconds since 1/1/1970)
$today = time(); // Get the UNIX timestamp for today
$days = 0;
for ($test = $acc_ts; $test <= $today; $test += 86400) { // 86400 = number of seconds in a day
$dy = date('l',$test); // Thats a lowercase L, not an uppercase i or number 1. Gives day of week
if ($dy != 'Saturday' && $dy != 'Sunday') $days++; // if the day isn't a Saturday or Sunday count it.
}
$days ='Days since last accident: ' . $days;
////////////////////////////////////////////////////////////////////////////////////
$xml_document="<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<say> \r\n";
$xml_document.="<MOTD>\r\n";
$xml_document.="$mo_td\r\n";
$xml_document.="</MOTD>\r\n";
$xml_document.="<field_2>\r\n";
$xml_document.="$days\r\n";
$xml_document.="</field_2>\r\n";
$xml_document.="<field_3>\r\n";
$xml_document.="$field_3\r\n";
$xml_document.="</field_3>\r\n";
$xml_document.="<field_4>\r\n";
$xml_document.="$field_4\r\n";
$xml_document.="</field_4>\r\n";
$xml_document.="<field_5>\r\n";
$xml_document.="$field_5\r\n";
$xml_document.="</field_5>\r\n";
$xml_document.="<field_6>\r\n";
$xml_document.="$field_6\r\n";
$xml_document.="</field_6>\r\n";
$xml_document.="<field_7>\r\n";
$xml_document.="$field_7\r\n";
$xml_document.="</field_7>\r\n";
$xml_document.="<field_8>\r\n";
$xml_document.="$field_8\r\n";
$xml_document.="</field_8>\r\n";
$xml_document.="<field_9>\r\n";
$xml_document.="$field_9\r\n";
$xml_document.="</field_9>\r\n";
$xml_document.="<field_10>\r\n";
$xml_document.="$field_10\r\n";
$xml_document.="</field_10>\r\n";
$xml_document.="<field_11>\r\n";
$xml_document.="$field_11\r\n";
$xml_document.="</field_11>\r\n";
$xml_document.="<field_12>\r\n";
$xml_document.="$field_12\r\n";
$xml_document.="</field_12>\r\n";
$xml_document.="<field_13>\r\n";
$xml_document.="$field_13\r\n";
$xml_document.="</field_13>\r\n";
$xml_document.="<field_14>\r\n";
$xml_document.="$field_14\r\n";
$xml_document.="</field_14>\r\n";
$xml_document.="<field_15>\r\n";
$xml_document.="$field_15\r\n";
$xml_document.="</field_15>\r\n";
$xml_document.="\r\n</say>";
$file="workingXML.xml";
$fp=fopen($file,'r');
$write=fwrite($fp,$xml_document);
fclose($fp);
$record_data=simplexml_load_file($file);
echo"<br>Wrotethexmlfile...<br>".$file."<br>";
}
保存为workingXML.xml
<?xml version="1.0" encoding="UTF-8"?>
<say>
<MOTD>
message of the say
</MOTD>
<field_2>
Days since last accident: 8
</field_2>
<field_3>
klj
</field_3>
<field_4>
hlkjh
</field_4>
<field_5>
kljh
</field_5>
<field_6>
lkh
</field_6>
<field_7>
lk
</field_7>
<field_8>
jhl
</field_8>
<field_9>
hg
</field_9>
<field_10>
oy
</field_10>
<field_11>
ufro
</field_11>
<field_12>
uy
</field_12>
<field_13>
yug
</field_13>
<field_14>
ldfaf
</field_14>
<field_15>
hbogo
</field_15>
</say>
答案 0 :(得分:0)
这在黑暗中有点像......
如果您将1workinglavin.html
放入PHP页面(1workinglavin.php
),则可以使用表单执行此操作
Label: <input name="field_6" id="field_6" type="text" value="<?php echo $field_6 ?>"/>
修改强>
简单地说:
创建用于访问XML的函数,使这些函数可重用。我不知道你的xml的组成,所以在这里帮不了多。
function getXmlMessage2()
{
// Place code your here getting xml data
}
然后:
require_once
getXmlMessage2()
<强> EDIT2 强>
<?php
function getXMLMessage() {
$file = "workingXML.xml";
$xml = simplexml_load_file($file);
$MoTd = $xml->MOTD;
return $MoTd;
} ?>
此功能将返回MOTD,而不是将其打印出来。然后,您可以从任何这样的文件中调用它;
$MOTD = getXMLMessage();
echo $MOTD;
<强> EDIT3 强>
是的,返回变量很有用,因为如果需要可以进一步操作它。但你也可以马上回应它。
<?php
// Be sure to include your functions file
require_once("functions.php");
?>
Enter Message Of The Day:
<input name="mo_td" id="mo_td" type="text" value ="<?php echo getXMLMessage(); ?>"/>
<br/>