XML - вносим данные

Discussion in 'PHP' started by Lionis, 15 Dec 2008.

  1. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    есть XML - вот код :
    Code:
    <content> 
    <test name="Text other site"/>
     </content>
    - - - - - - - - - - - - - - - - - - - - - - - - -|
    нужен php код , даже страничка - на которой будет (текстовое поле) и кнопка "OK" для подтверждения изменения файла .Ну в общем код для внесения изменений в эту строчку - <test name="Text other site"/>.

    - - - - - - - - - - - - - - - - - - - - - - - - -|

    У меня есть пример php кода - для внесения изменений в *.txt файл...вот собственно и он :

    PHP:
    <?php
    if(get_magic_quotes_gpc())
        
    $_POST array_map('stripslashes'$_POST);
    if(
    $_POST['content']){
    $fh fopen("file.txt""w");
    fwrite($fh$_POST['content']);
    fclose($fh);
    }
    ?><form method=post>
    <textarea name=content cols="100" rows="10"><?php echo file_get_contents("file.txt"); ?></textarea>
    <input type=submit value="Сохранить">
    </form>
    как вы видите - он вносит данные в файл - file.txt
    надо тоже самое только - вносим данные в XML
    - - - - - - - - - - - - - - - - - - - - - - - - -|
    в общем я думаю суть ясна .
    спасибо , буду рад каждому ответу .
     
  2. oRb

    oRb Elder - Старейшина

    Joined:
    9 May 2008
    Messages:
    294
    Likes Received:
    581
    Reputations:
    256
    Это не XML, а закос нелепый.
    Выше есть спец топ:
    PHP:
     Новичкамзадаем вопросы
    [QUOTE=Lionis]спасибо буду рад каждому ответу .[/QUOTE]
    Советую почитать книгу по программированию (язык не важен), потом почитать про php (уделить внимание DomDocumentи прочитав про структуру XMLпонять свои ошибки.
     
  3. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    И да, http://php.ru/manual/ref.simplexml.html
     
  4. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Хм, с XML как раз всё в порядке
     
  5. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    ну в порядке, но не по стандарту
     
  6. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    народ : мне всего лишь надо 1 пример ...
    ввод данных в <test name="Text other site"/>
    = это не реально?
     
  7. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    надо изменение атрибута name?
     
  8. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    короче вот меняет xml в переменной $xml и записывает в $newxml

    PHP:
    <?php
    $xml 
    "<content>".
    "<test name=\"Text other site\"/>".
    "</content>";
    $omg = new SimpleXMLElement($xml);
    $omg->test['name'] = "Novii tekst rialne";
    $newxml $omg->asXML();
    echo 
    $newxml;
    ?>
     
  9. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    ------------------------------------------------------------------------------
    Да , конечно большое спасибо за ответ - но можно ли ваш код - в таком виде как у меня , тоесть с textarea и кнопкой подтверждения :
    PHP:
    <?php
    if(get_magic_quotes_gpc())
        
    $_POST array_map('stripslashes'$_POST);
    if(
    $_POST['content']){
    $fh fopen("file.txt""w");
    fwrite($fh$_POST['content']);
    fclose($fh);
    }
    ?><form method=post>
    <textarea name=content cols="100" rows="10"><?php echo file_get_contents("file.txt"); ?></textarea>
    <input type=submit value="Сохранить">
    </form>
     
  10. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    не понимаю, что должен делать твой код
     
  11. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    Я хочу создать php форму , с 1 текстовым полем - для сохранения данных в xml (то есть мы ввели текст в это поле , нажали сохранить - данные отправились в test.xml)
    вот сам test.xml

    Code:
    <content>
    <test name="Text other site"/>
    </content>
    как вы уже поняли данные будут сохранятся в эту строчку :

    Code:
    <test name="Text other site"/>
    где - Text other site - введенный текст .


    [​IMG]

    надеюсь теперь ясно .
     
  12. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    а какая разница то XML или нет
    ну сделай так например
    PHP:
    <?php 
    if(get_magic_quotes_gpc()) 
        
    $_POST array_map('stripslashes'$_POST); 
    if(
    $_POST['content']){ 
    $fh fopen("file.txt""w"); 
    fwrite($fh"<content>\r\n<test name=\"".$_POST['content']."\"/>\r\n</content>"); 
    fclose($fh); 

    ?><form method=post> 
    <textarea name=content cols="100" rows="10"><?php echo file_get_contents("file.txt"); ?></textarea> 
    <input type=submit value="Сохранить"> 
    </form>
     
  13. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    так это ж File.txt ... надо xml
     
  14. Sn@k3

    Sn@k3 Elder - Старейшина

    Joined:
    13 Apr 2006
    Messages:
    1,000
    Likes Received:
    437
    Reputations:
    90
    PHP:
    <?php  
    if(get_magic_quotes_gpc())  
        
    $_POST array_map('stripslashes'$_POST);  
    if(
    $_POST['content']){  
    $fh fopen("file.xml""w");  
    fwrite($fh"<content>\r\n<test name=\"".$_POST['content']."\"/>\r\n</content>");  
    fclose($fh);  
    }  
    ?><form method=post>  
    <textarea name=content cols="100" rows="10"><?php echo file_get_contents("file.txt"); ?></textarea>  
    <input type=submit value="Сохранить">  
    </form>
    XD
     
    2 people like this.