3

次のような XML 構造があります。

<document>
    <sliderimage>
        <images>click.bmp</images>
        <images>error_inotherpluginupload.JPG</images>
        <images>dddd.jpg</images>
        <images>Sunset123.jpg</images>
        <images>Water lilies.jpg</images>     
    </sliderimage>
</document>

そして、これらの画像を次のように表示しています。

こんな感じで画像を表示しています

ここで見ることができる画像を取得するためのコード:

<?php
    $usernmeforxml = $_SESSION['username'];
    $xmlpath = SITE_URL . "xml/" . $usernmeforxml . "/test.xml";
    $xml = simplexml_load_string(file_get_contents($xmlpath));
    $sliderimagesinner = $xml->sliderimage->images;
    $imagenum = count($sliderimagesinner);
?>
</br>
<?php
    for ($i = 0; $i < $imagenum; $i++)
    {
?>
    <a class="thumbnail" href="#thumb">
        <img src="../slider_images/<?php 
            echo $sliderimagesinner[$i]; 
        ?>" width="120" height="70" />
        <span>
            <img src="../slider_images/<?php 
                echo $sliderimagesinner[$i]; 
            ?>" width="500" height="350" />
        </span>
    </a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<?php
    }   
?>

画像に「削除」ボタンを追加して、画像を削除したいと思います。クリックすると、そのイメージ ノードが上記の XML ファイルから削除されます。

すべてが動的であるため、誰かがこれに関して私を助けることができれば非常に役に立ちます.

4

1 に答える 1

3
$usernmeforxml=$_SESSION['username'];
$xmlpath=SITE_URL."xml/".$usernmeforxml."/test.xml";
$xml = simplexml_load_file($xmlpath);   
if($_GET['remove'] == 'true') {
    $myValue = $_GET['file'];
    $xel_array = $xml->xpath("//images[text()='" . $myValue . "']");
    //edited - forgot to double [0]
    unset($xel_array[0][0]);
    file_put_contents($xmlpath, $xml->asXML());
}

そして次のようなリンク

<a href="_your_page.php?remove=true&file=your_file_name">remove</a>

トリックを行う必要があります。

于 2013-02-26T07:32:56.467 に答える