Php XML文档的切换功能不工作

Php XML文档的切换功能不工作,php,mysql,xml,post,Php,Mysql,Xml,Post,我正在通过XML POST请求从另一台服务器导入车辆。 XML文件的头中有3个条件,称为'actie':'add'、'change'和'delete'。当我检查我的日志时,它显示一切正常,但数据库中没有任何更改。打印(“添加”)不输出als'add' 这是服务器正在接收的XML文件的输出 <?xml version="1.0" encoding="UTF-8"?> <voertuig xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins

我正在通过XML POST请求从另一台服务器导入车辆。 XML文件的头中有3个条件,称为
'actie'
'add'、'change'和'delete'
。当我检查我的日志时,它显示一切正常,但数据库中没有任何更改。
打印(“添加”)不输出als
'add'

这是服务器正在接收的XML文件的输出

<?xml version="1.0" encoding="UTF-8"?>
<voertuig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://eigenwebsite.doorlinkenvoorraad.nl/docs/2.16/voertuig.xsd" actie="add" versie="2.16">
    <voertuignr_hexon>21467583</voertuignr_hexon>
    <voertuignr>9574649-AWD</voertuignr>
    <voertuignr_klant/>
    <klantnummer>33898</klantnummer>
    <invoerdatum>21-10-2019</invoerdatum>
    <kenteken>HF499B</kenteken>
    <merk>Audi</merk>
    <model>A3</model>
    <type>Sportback 1.4 e-tron PHEV Ambition Pro Line+ Trekhaak incl. BTW!</type>
    <toevoeging/>
    <merk_orig>Audi</merk_orig>
    <model_orig>A3 Sportback</model_orig>
    <type_orig>1.4 e-tron PHEV Ambition Pro Line+ Trekhaak incl. BTW!</type_orig>
    <voertuigsoort>AUTO</voertuigsoort>
    <carrosserie>Hatchback</carrosserie>
    <aantal_deuren>5</aantal_deuren>
    <tellerstand eenheid="K">184911</tellerstand>
    <brandstof>B,E</brandstof>
</voertuig>
有人能帮我找出开关功能不工作的原因吗


谢谢

var_dump((string)$xml['actie'])它的结果是什么?@ cBROE是:String(0)“那么,考虑你在这里提出的问题,然后进行调试:-”你的函数<代码> PARSISML不返回任何东西。职业训练局是打字错误。
<?php

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$servername = "localhost";
$username = "safetypurposes";
$password = "safetypurposes";
$database = "safetypurposes";

// Create connection
$conn = new mysqli($servername, $username, $password, $database);

if($_SERVER['REMOTE_ADDR'] != '90.145.213.154') {
    // Aanvraag komt niet van Hexon Server
    exit;
}

$xmldoc = file_get_contents('php://input');

$xml = parseXml($xmldoc);

switch((string)$xml['actie']) {
    case 'add':
        // Controles uitvoeren
        controleer_voertuig($xml);

        // Voertuig toevoegen aan database
        $sql = 'INSERT INTO voertuigen (hexon_nr, kenteken, merk) VALUES ('. (string) $xml->voertuignr_hexon .', "'. addslashes((string) $xml->kenteken) .'", "'. addslashes((string) $xml->merk) .'")';
        // ...
        print("add");
        // Foto's opslaan
        verwerk_fotos($xml->afbeeldingen);
        break;

    case 'change':
        // Controles uitvoeren
        controleer_voertuig($xml);

        // Voertuig wijzigen in database
        $sql = 'UPDATE voertuigen SET kenteken = "'. addslashes((string) $xml->kenteken) .'", merk = "'. addslashes((string) $xml->merk) .'" WHERE hexon_nr = '. $xml->voertuignr_hexon .' LIMIT 1';
        // ...

        // Foto's opnieuw ophalen
        verwerk_fotos($xml->afbeeldingen);
        break;

    case 'delete':
        // Voertuig verwijderen uit database
        $sql = 'DELETE FROM voertuigen WHERE hexon_nr = '. (string) $xml->voertuignr_hexon .' LIMIT 1';
        // ...
        break;
}

// Everything went ok
print("OK");

function parseXml($xmldoc) {
    // XML inlezen met je favoriete XML-parser. Het voorbeeld gebruikt simpleXML.
    $xml = @simplexml_load_string($xmldoc);
    if(!$xml) {
        // Foutmelding teruggeven aan server van Hexon
        print("Geen geldige XML ontvangen");
        exit;
    }
}

function controleer_voertuig($xml) {
    if(empty($xml->fotos)) {
        // Foutmelding teruggeven aan server van Hexon
        print("Op de eigen website zijn alleen voertuigen met foto toegestaan");
        exit;
    }
}

function verwerk_fotos($fotos) {
    foreach($fotos as $foto_nr => $foto_url) {
        $bestandsnaam = 'fotos/'. $_GET['hexon_nr'] .'-'. $foto_nr .'.jpg';

        $imgdata = file_get_contents($foto_url);
        file_put_contents($bestandsnaam, $imgdata);
    }
}