使用php for循环将表单值输出到xml
因此,我在PHP中设置for循环以将HTML表单的内容输出到xml文件时遇到了问题。它可以在没有for循环的情况下工作,但不能使用。有什么想法吗?把我的头发扯下来 提前谢谢使用php for循环将表单值输出到xml,php,html,xml,Php,Html,Xml,因此,我在PHP中设置for循环以将HTML表单的内容输出到xml文件时遇到了问题。它可以在没有for循环的情况下工作,但不能使用。有什么想法吗?把我的头发扯下来 提前谢谢 //PHP Form <?php if (isset($_POST['lsr-submit'])) { } $str = '<?xml version="1.0" encoding="UTF-8"?><entrys></entrys>'; $xml = simplexml_load
//PHP Form
<?php
if (isset($_POST['lsr-submit']))
{
}
$str = '<?xml version="1.0" encoding="UTF-8"?><entrys></entrys>';
$xml = simplexml_load_string($str);
$i=1;
for ($i=1; $i <50; $i++)
{
$name = $_POST['Name_'.$i];
$time = $_POST['Time_'.$i];
$duration = $_POST['Duration_'.$i];
$name = htmlentities($name, ENT_COMPAT, 'UTF-8', false);
$time = htmlentities($time, ENT_COMPAT, 'UTF-8', false);
$duration = htmlentities($duration, ENT_COMPAT, 'UTF-8', false);
$xml->Slot = "";
$xml->Slot->addChild('Name', $name);
$xml->Slot->addChild('Time', $time);
$xml->Slot->addChild('Duration', $duration);
}
$doc = new DOMDocument('1.0');
$doc->formatOutput = true;
$doc->preserveWhiteSpace = false;
$doc->loadXML($xml->asXML(), LIBXML_NOBLANKS);
$doc->save('../scSHARE/editor.xml');
print "<meta http-equiv=\"refresh\" content=\"0;URL=return.php\">";
?>
//HTML Form
<?php
$xml=simplexml_load_file("../scSHARE/editor.xml");
$xml_array = (array) $xml;
$chunks=array_chunk($xml_array["Slot"], 7);
$i=1;
$l=1;
foreach($chunks as $bank) {
?>
<form name="form1" method="post" action="form.php">
<div class="menu-toggle bank_<?php echo $i; ?>" style="display:none;">
<?php
foreach($bank as $slot) { ?>
<div class="row">
<div class="small-12 column">
<div class="small-6 column">
Slot <?php echo $l?>
<input type="text" name="Name_<?php echo $l;?>" value="<?php echo $slot->Name;?>">
</div>
<div class="small-6 column">
<div class="row">
<div class="small-6 column">
Time
<input type="text" name="Time_<?php echo $l;?>" value="<?php echo $slot->Time;?>">
</div>
<div class="small-6 column">
Duration
<input type="text" name="Duration_<?php echo $l;?>" value="<?php echo $slot->Duration;?>">
</div>
</div>
</div>
</div>
</div>
<?php $l++;} ?>
<p style="text-align: center;">
<input type="submit" name="submit" id="submit" class="hollow success button" value="Update">
</p>
</div>
</form>
<?php $i++;
}
?>
//PHP表单
Slot->addChild('Name',$Name);
$xml->Slot->addChild('Time',$Time);
$xml->Slot->addChild('Duration',$Duration);
}
$doc=新DOMDocument('1.0');
$doc->formatOutput=true;
$doc->preserveWhiteSpace=false;
$doc->loadXML($xml->asXML(),LIBXML\u NOBLANKS);
$doc->save('../scSHARE/editor.xml');
打印“”;
?>
//HTML表单
您可以使用以下语法:
for ($i=1; $i <50; $i++)
{
(...)
$xml->Slot = "";
$xml->Slot->addChild('Name', $name);
}
首先,你的if(isset($\u POST['lsr-submit'])
没有效果。你需要把它应用到你所有的代码中,而不是什么都没有。啊,这是有道理的,它现在工作得很好。谢谢你的快速回复。非常感谢!
for ($i=1; $i <3; $i++)
{
(...)
$slot = $xml->addChild( "Slot" );
$slot->addChild( 'Name', $name );
$slot->addChild( 'Time', $time );
$slot->addChild( 'Duration', $duration );
}
if (isset($_POST['lsr-submit']))
{
$str = '<?xml version="1.0" encoding="UTF-8"?><entrys></entrys>';
(...)
print "<meta http-equiv=\"refresh\" content=\"0;URL=return.php\">";
}