| Autor | Zpráva | ||
|---|---|---|---|
| juraj Profil |
Zdravim
ako z xml súboru vložím údaje aby sa child spároval s parent? $doc = new DOMDocument();
$doc->preserveWhiteSpace = false;
$doc->load($url);
$i=0;
while(is_object($finance = $doc->getElementsByTagName("Student")->item($i)))
{
foreach($finance->childNodes as $nodename)
{
if($nodename->nodeName=='Param')
{
foreach($nodename->childNodes as $subNodes)
{
// echo $subNodes->nodeName." - ".$subNodes->nodeValue."<br>";//param
$p=$subNodes->nodeValue;
insrert db
}
}
else
{
$nodename->nodeName." - ".$nodename->nodeValue."<br>";
IF($nodename->nodeName=='Name'){
// ECHO $nodename->nodeName;
$NAME=$nodename->nodeValue;
ECHO "<BR>";
insert db
}
}
}
$i++;
}ukážkový xml súbor <?xml version="1.0" encoding="windows-1250"?> <studentrecord> <Student nationality="American"> <Name>Mike</Name> <Age>10</Age> <Gender>Male</Gender> <School city="Washington">Kosice</School> <Param> <PARAM_NAME>RIFLE</PARAM_NAME> <VAL>692</VAL> <UNIT>TB</UNIT> </Param> </Student> </studentrecord> |
||
| Kajman Profil |
#2 · Zasláno: 24. 6. 2016, 10:26:06
Nejprve uděláte insert studenta, zapamatujete si vzniklé insert_id. Teprve potom dělejte foreach cyklus na ukládání jeho parametrů.
|
||
| juraj Profil |
#3 · Zasláno: 25. 6. 2016, 16:44:29
Kajman:
Zdravím mám taký kód, kde dátata z xml súboru uklada do db.Ale, keď zmením údaj Name v xml subore tak do mysql sa mi nechce zapísať. Vie niekto poradiť? $url=$_GET['url'];
$idcesty=$_GET['idcesty'];
$domOBJ = new DOMDocument();
$domOBJ->load($url);//XML page URL
$content = $domOBJ->getElementsByTagName("Student");
$student = $domOBJ->getElementsByTagName("Student");
$cs = $student->length;
foreach( $content as $data )
{
$title = $data->getElementsByTagName("Name")->item(0)->nodeValue;
$link = $data->getElementsByTagName("Age")->item(0)->nodeValue;
$Gender = $data->getElementsByTagName("Gender")->item(0)->nodeValue;
$get_tag = $data->getElementsByTagName("Param");
$c = $get_tag->length;
$parametre = array();//$value = array();
for($i=0;$i<=$c;$i++){ $i;
$PARAM_NAME = $data->getElementsByTagName("PARAM_NAME")->item($i)->nodeValue;
$title = $data->getElementsByTagName("Name")->item(0)->nodeValue;
$vek= $data->getElementsByTagName("Age")->item(0)->nodeValue;
$Gender = $data->getElementsByTagName("Gender")->item(0)->nodeValue;
$parametre[]= $get_tag->item($i)->nodeValue;
// $VAL = $data->getElementsByTagName("VAL")->item($i)->nodeValue;
//$UNIT = $data->getElementsByTagName("UNIT")->item(0)->nodeValue;
$f= @implode(',', $parametre);
$sqlk = sprintf("SELECT idtovar FROM tovary WHERE idxml ='$idcesty' ");
mysql_query("set names 'utf8'");
$vysledok = mysql_query($sqlk);
$count = mysql_num_rows($vysledok);
if($cs!=0){
if($countf==0){
$sqlk = sprintf("SELECT idtovar FROM tovary WHERE idxml ='$idcesty' and nazov ='$title' ");
mysql_query("set names 'utf8'");
$vysledok = mysql_query($sqlk);
$countdb = mysql_num_rows($vysledok);
if($countdb==0){
$sqlk="INSERT INTO tovary(nazov,parametre,author,idxml,idclenn)
VALUES('$title','$f','$vek','$idcesty','$idregclen')";
} }
} if($cs==$countf){echo "up";
echo $sqlk = sprintf("SELECT idtovar FROM tovary ");
mysql_query("set names 'utf8'");
$vysledok = mysql_query($sqlk);
while(list( $idtovar) = mysql_fetch_row($vysledok)) {
echo $sqlk = "UPDATE tovary
SET nazov = '$title'
WHERE idtovar = '$idtovar'";
}
}
$resultk=mysql_query($sqlk)or die(mysql_error());
}
//$resultk=mysql_query($sqlk)or die(mysql_error());
}
?>
<br>
<?}?> |
||
|
Časová prodleva: 9 let
|
|||
0