1
これは私のXMLファイルと私のPHPコードです。私はfirstnameで学生を検索する入力タイプを入れました。特定の生徒の情報が表示され、別のボタンの更新が表示されます。私のXMLファイルをPHPフォームで修正してください。
問題はそれ以降の情報を変更したいということです。特定の生徒の情報を変更できるように、タグ名で要素を取得するにはどうすればよいですか?
<students>
<student>
<firstname>John</firstname>
<lasttname>Snow</lasttname>
<student_id>160600</student_id>
<gender>male</gender>
<dob>23-06-95</dob>
<email>[email protected]</email>
<mobilenumber>57675060</mobilenumber>
<address>albatros, portlouis</address>
<cohort>BSE15PT</cohort>
<programme>Software Engineering</programme>
<mode>PT</mode>
</student>
<student>
<firstname>Jey</firstname>
<lastname>Lacroix</lastname>
<student_id>150501</student_id>
<gender>M</gender>
<dob>1990-02-22</dob>
<email>[email protected]</email>
<mobilenumber>57553536</mobilenumber>
<address>Curepipe</address>
<cohort>BSE15AFT</cohort>
<programme>software engineering</programme>
<mode>FT</mode>
</student>
</students>
<?php
if(isset($_POST['search']))
{
$xml=simplexml_load_file("studentInstance.xml") or die("Error: Cannot Create Object");
//query the document
$name = $_POST['studentname'];
//$xml = simplexml_load_string($xml);
$query = $xml->xpath("/students/student[firstname = '$name']");
$array=$query;
//echo "<pre>";
//rint_r($array);
//echo "</pre>";
$count=0;
$size=count($array);
//echo $count;
echo "<center>";
while($count!=count($array)){
foreach ($array[$count]->children() as $child) {//stores values in child
$getElementTag=$child->getName();//get tag so nom
echo '<label>'.$getElementTag.'</label>'." ";
echo '<input type="text" value= " '.$child.' " size="30"></intput>';
echo "<br>";
echo "<br>";
}
$count++;
}
echo '<input type="submit" name="modify" value="Update Record">'.'<br>';
echo "***************************";
echo "</center>";
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Searching</title>
</head>
<body>
<center>
<form method="POST" action="searchtest.php">
<label>Enter Student Name</label>
<input type="text" name="studentname" pattern="[A-Z][a-z]+" title="Must start with capital letters!" required><br>
<br>
<input type="submit" name="search" value="search">
</form>
</center>
</body>
</html>