У меня проблема с php-кодом. Этот код работает бесперебойно в Linux, но не в Windows 7. Любые предложения?
$xml = simplexml_load_file('data.xml');
if(isset($_POST['confirmOrd'])){
foreach($xml->xpath("orders/order[@id='".$_POST['confirmOrd']."']") as $change){
$change->check = date('d/m/Y');
}
$xml->asXML('data.xml');
}
В Windows Apache сервер получает ошибку:
Предупреждение: main() [function.main]: Невозможно назначить массив узлов (обнаружены дублирующиеся подносы или attr)
Попробуй это.
$source = '<orders><order id="1"> <userid>Petros Petrou</userid> <date>04/01/2015</date> <check>0</check> <store>1</store> <product> <code>45887952</code> <quantity>1</quantity> </product> <product> <code>45887954</code> <quantity>1</quantity> </product> </order></orders>';
$xml = simplexml_load_string($source);
$xpath = $xml->xpath("/orders/order[@id='1']");
if ($xpath!=false){
foreach ( $xpath as $change){
$change->check = date('d/m/Y');
}
}
var_dump($xpath);
var_dump($xml);
Он отлично работает для меня
Я могу ошибаться. Но просто попробуйте :-)
'data.xml'
данных 'data.xml'
который вы пытаетесь использовать?