GOV/Webservice/PHP: Unterschied zwischen den Versionen

aus wiki, dem genealogischen Lexikon zum Mitmachen.
Zur Navigation springen Zur Suche springen
(Hinweise: $place->{'postal-code'})
(Alle Gemeinden und Städte eines Kreises ausgeben)
Zeile 41: Zeile 41:
         echo "$id has been replaced with $checkedId.\n";
         echo "$id has been replaced with $checkedId.\n";
}
}
?></php>
== Alle Gemeinden und Städte eines Kreises ausgeben ==
<php><?php
$county = 'adm_131058'; // Rendsburg-Eckernförde (Schleswig-Holstein)
$today = 2454665;  // Julianisches Datum
$client = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl');
// 18 = Gemeinde, 95 = kreisfreie Stadt, 150 = Stadt, 145 = Markt
$list = $client->searchDescendantsByTypeAtDate($county,'18,95,150,145',$today);
$countyname = $client->getNameAtDate($county, $today,'deu');
echo "== Gemeinden und Städte in $countyname == \n";
$names = array();
foreach( $list->item as $id ) {
        $names[$id] = $client->getNameAtDate($id, $today,'deu');
}
asort ($names);
foreach ($names as $id => $name) {
    echo "* [[$id|$name]]\n";
}
?></php>
?></php>



Version vom 17. Juli 2008, 08:27 Uhr

Position ausgeben

Dieses Skript gibt den (ersten) Namen und die Position des Ortes aus: <php><?php $readclient = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl'); $place =$readclient->getObject('SCHERGJO54EJ');

$name = $place->name->value; $latitude = $place->position->lat; $longitude = $place->position->lon;

echo $name ." liegt bei ".$longitude."°O ".$latitude."°N.\n"; ?></php>

Position setzen

So setzt man die Position eines Objektes: <php><?php $readclient = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl'); $writeclient = new SoapClient('http://gov-test.genealogy.net/services/ChangeService?wsdl'); $place =$readclient->getObject('SCHERGJO54EJ');

$place->position->lat=54.3936; $place->position->lon=10.3707;

$writeclient->saveObject($place,'5000','5000'); ?></php>


GOV-Kennung prüfen

Dieses Skript prüft, ob eine gegebene GOV-Kennung gültig ist: <php><?php $id = 'SCHERGJO54EJ';

$readclient = new SoapClient('http://gov.genealogy.net/services/SimpleService?wsdl'); $checkedId =$readclient->checkObjectId($id);

if( $id == $checkedId ) {

       echo "$id is valid.\n";

} else if( $id == ) {

       echo "$id is invalid.\n";

} else {

       echo "$id has been replaced with $checkedId.\n";

} ?></php>

Alle Gemeinden und Städte eines Kreises ausgeben

<php><?php $county = 'adm_131058'; // Rendsburg-Eckernförde (Schleswig-Holstein)

$today = 2454665; // Julianisches Datum

$client = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl');

// 18 = Gemeinde, 95 = kreisfreie Stadt, 150 = Stadt, 145 = Markt $list = $client->searchDescendantsByTypeAtDate($county,'18,95,150,145',$today);

$countyname = $client->getNameAtDate($county, $today,'deu'); echo "== Gemeinden und Städte in $countyname == \n";

$names = array(); foreach( $list->item as $id ) {

       $names[$id] = $client->getNameAtDate($id, $today,'deu');

}

asort ($names); foreach ($names as $id => $name) {

   echo "* $name\n";

}

?></php>

Hinweise

Auf Objektnamen mit Minuszeichen kann folgendermaßen zugegriffen werden: <php>$place->{'postal-code'}</php>