PHP simplexml_load_string form alanı verilerini içerir

2 Cevap simplexml

i bir PHP sayfasında bir form var. I yapmak için çalışan tüm bazı XML simplexml_load_string burada bir test kodu kullanarak bu formu (COMMAND) girdi ayrıştırmak olduğunu:

<?php
    if($_POST){
        $Input = $_GET['COMMAND'];
        $Data =<<<XML
        <?xml version="1.0" encoding="ISO-8859-1"?> .
        $Input .XML;

        $xml = simplexml_load_string($Data);
        var_dump($xml); 
    }
        else
    }
        echo 'WTF!'
    }
?>

  <form id="form1" name="form1" method="post" action="index.php">
    <textarea name="COMMAND" id="COMMAND" cols="45" rows="5">
        <API>
         <COMMAND>Test</COMMAND>
        </API>
   </textarea>
   <input type="submit" name="button" id="button" value="Submit" />
  </form>

Bu i alıyorum hatadır:

Ayrıştırma hatası: hat 24 üzerinde sözdizimi hatası, beklenmedik $ end / var / www / cgi / index.php

i birleştirme benim zayıf girişimi ile ilgili bir şey olduğunu düşünüyorum.

2 Cevap

Eğer bir açılış ayracı istediğiniz bir kapanış kuşak var:

}
    else
}   // <- BAD!
    echo 'WTF!'
}

İstediğiniz:

}
    else
{   // <- GOOD!
    echo 'WTF!'
}

Bu kişisel bir seçimdir, ama ben PEAR standard PHP kodlama için şunları tavsiye ederim. : Sizin kod olarak görünür

if (...) {
} else {
}

Çok daha kolay bu kötü parantez yakalamak için yapar!

Hobodave ne yazdı ek olarak bir eksik; üzerinde sizin

echo 'WTF!';

hat