Page 1 sur 1

Besoin d'aide php dom

Posté : 01 avr. 2012, 16:18
par ASXXX
Bonjour je poste sur le forum car je reste bloquer sur mon problème .

Je voudrai upload une image et écrire le nom dans un fichier xml .

Voici mon code php.
<?php

foreach ($_FILES["images"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
        $name = $_FILES["images"]["name"][$key];
        move_uploaded_file( $_FILES["images"]["tmp_name"][$key], "images/" . $_FILES['images']['name'][$key]);
    }
}


echo "<h2>Successfully Uploaded Images</h2>";



define('FICHIER_XML', 'images.xml');

$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->formatOutput = TRUE;
$dom->load(FICHIER_XML);

$photo = $dom->createElement('photo');
$photo->setAttribute('image', 'images/'$name'');
$photo->setAttribute('media', 'images/'$name'');
$photo->setAttribute('url', 'pages/about/ImageFlow/images/'$name'');
$photo->setAttribute('target', '_blank');

$dom->documentElement->insertBefore($photo, $dom->documentElement->firstChild);

$dom->save(FICHIER_XML);
  
?>
Voici mon code xml .

Code : Tout sélectionner

<images> <photo image="images/101.jpg" media="images/101.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> <photo image="images/102.jpg" media="images/102.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> <photo image="images/103.jpg" media="images/103.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> <photo image="images/104.jpg" media="images/104.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> <photo image="images/105.jpg" media="images/105.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> <photo image="images/106.jpg" media="images/106.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> <photo image="images/107.jpg" media="images/107.jpg" url="" target="_blank"><![CDATA[<head>Noel 2011</head>]]></photo> </images>
j’obtiens une erreur a cause de mon $name .

et je voudrai savoir aussi comment changer le nom de mon image quand elle s'upload en 103 , 104 ect .

merci de votre aide

Re: Besoin d'aide php dom

Posté : 01 avr. 2012, 17:37
par xTG
La concaténation de variable (de type chaîne de caractères) c'est le point en PHP. :)

Pour le changement de nom, le nom après upload est le second paramètre de la fonction move_uploaded_file().

Re: Besoin d'aide php dom

Posté : 02 avr. 2012, 16:18
par ASXXX
voila j'ai réussi pour mon $name il fonctionne très bien mais pour changer le nom je trouve pas :s

voici mon nouveau code qui fonctionne
<?php

foreach ($_FILES["images"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
        $name = $_FILES["images"]["name"][$key];
        move_uploaded_file( $_FILES["images"]["tmp_name"][$key], "images/" . $_FILES['images']['name'][$key]);
    }
}



echo "<h2>Successfully Uploaded Images</h2>";



define('FICHIER_XML', 'images.xml');

$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->formatOutput = TRUE;
$dom->load(FICHIER_XML);

$photo = $dom->createElement('photo');
$photo->setAttribute('image', 'images/'.$name);
$photo->setAttribute('media', 'images/'.$name);
$photo->setAttribute('url', '../pages/hiver/ImageFlow/images/'.$name);
$photo->setAttribute('target', '_blank');


$dom->documentElement->insertBefore($photo, $dom->documentElement->firstChild);

$dom->save(FICHIER_XML);
  
?>
merci xTG pour ton aide