Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
[php/dom/htm] non va a capo nel contenuto di un logo
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet
Precedente :: Successivo  
Autore Messaggio
sevenjeak
Semidio
Semidio


Registrato: 04/02/08 22:05
Messaggi: 308
Residenza: Roma

MessaggioInviato: 29 Set 2009 20:18    Oggetto: [php/dom/htm] non va a capo nel contenuto di un logo Rispondi citando

Sto facendo uno script per la creazione di un'articolo.

Il problema e che: quando in una textarea scrivo il contenuto andanto a capo mi scrive direttamente sulla pagina il codice ASCII del tag <br />, il codice che mi crea il file html e questo:
Codice:

<?php
 $imp = new DOMimplementation();
 $root = $imp->createDocumentType("html", "'- / / WAPFORUM / / DTD WML 1.1 / / EN', 'http://www.wapforum.org/DTD/wml_1.1.xml'");
 $dom = $imp->createDocument("", "", $root);
 $dom->formatOutput = true;
 $dom->preserveWhiteSpace = false;
 
 // creazione tag <html>
 $html = $dom->createElement("html");
 $html = $dom->appendChild($html);
 $html->setAttribute("xmlns", "http://www.w3.org/1999/xhtml");
 // creazione tag <head>
 $head = $dom->createElement("head");
 $head = $html->appendChild($head);
 
 // creazione tag <link>
 $link = $dom->createElement("link");
 $link = $head->appendChild($link);
 $link->setAttribute("rel", "stylesheet");
 $link->setAttribute("href", "article.css");
 
 // Creazione tag <meta> -> description
 $meta_desc = $dom->createElement("meta");
 $meta_desc->setAttribute("name", "description");
 $meta_desc->setAttribute("content", "Documento di prova");
 $meta_desc = $head->appendChild($meta_desc);
 
 // Creazione tag <meta> -> keyworks
 $meta_key = $dom->createElement("meta");
 $meta_key = $head->appendChild($meta_key);
 $meta_key->setAttribute("name", "Keywords");
 $meta_key->setAttribute("content", "prova,articolo");
 
 // Creazione tag <body>
 $body = $dom->createElement("body");
 $body = $html->appendChild($body);
 
 // Creazione tag <div> ( header )
 $div1 = $dom->createElement("div");
 $div1 = $body->appendChild($div1);
 $div1->setAttribute("id", "header");
 
 // Creazione tag <div> ( logo )
 $div2 = $dom->createElement("div");
 $div2 = $div1->appendChild($div2);
 $div2->setAttribute("id", "logo");

 // Creazione tag <img> ( logo )
 $new_img = "Logi/".$_POST["lg"];
 $img = $dom->createElement("img");
 $img = $div2->appendChild($img);
 $img->setAttribute("src", $new_img);
 $img->setAttribute("alt", "Logo");
 
  // Creazione tag <div> ( titolo )
 $div3 = $dom->createElement("div");
 $div3 = $div1->appendChild($div3);
 
 // Creazione tag <h2> ( formattazione titolo )
 $h2 = $dom->createElement("h2");
 $h2 = $div3->appendChild($h2);
 $h2_text = $dom->createTextNode($_POST["title"]);
 $h2_text = $h2->appendChild($h2_text);
 
 // Creazione tag <div> ( sotto titolo )
 $div4 = $dom->createElement("div");
 $div4 = $div1->appendChild($div4);
 $div4_text = $dom->createTextNode($_POST["subtitle"]);
 $div4_text = $div3->appendChild($div4_text);
   
 // Creazione tag <div> ( content )
 $div4 = $dom->createElement("div");
 $div4 = $body->appendChild($div4);
 $div4->setAttribute("id", "content");
 $content = nl2br($_POST["content"]);
 $text = $dom->createTextNode($content);
 $text = $div4->appendChild($text);
 
 $new_file = "../Article/programmazione/".$_POST["title"].".html";
 $dom->saveHTMLFile($new_file);
 echo "<font color='green'>Articolo sarvato in: <a href='#'>...</a></font>";
?>


come posso risolvere il mio problema?
Top
Profilo Invia messaggio privato HomePage
freemind
Supervisor sezione Programmazione
Supervisor sezione Programmazione


Registrato: 04/04/07 21:28
Messaggi: 4643
Residenza: Internet

MessaggioInviato: 30 Set 2009 20:49    Oggetto: Rispondi citando

Fammi capire: tu nella textbox scrivi per esempio un testo su due righe, salvi, e quando richiami la pagina che dovrebbe visualizzare l'articolo (nella pagina e non nella textbox) cosa ti viene stampato invece che il '<br/>'?
Potresti incollare il codice ascii di cui parli?
Top
Profilo Invia messaggio privato
sevenjeak
Semidio
Semidio


Registrato: 04/02/08 22:05
Messaggi: 308
Residenza: Roma

MessaggioInviato: 09 Ott 2009 17:02    Oggetto: Rispondi citando

Scusa il ridarto della risposta, cmq ho risolto scrivendo al posto di createTextNode() la funzione createCDATEsector()
Top
Profilo Invia messaggio privato HomePage
freemind
Supervisor sezione Programmazione
Supervisor sezione Programmazione


Registrato: 04/04/07 21:28
Messaggi: 4643
Residenza: Internet

MessaggioInviato: 09 Ott 2009 18:23    Oggetto: Rispondi

Le sezioni cdata servono a create nodi con testo libero come valore.
Quando si immagazzina un testo arbitrario è buona norma usare sempre cdata per evitare il problema con i caratteri "strani"
Top
Profilo Invia messaggio privato
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet Tutti i fusi orari sono GMT + 2 ore
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi