Precedente :: Successivo |
Autore |
Messaggio |
sevenjeak Semidio


Registrato: 04/02/08 22:05 Messaggi: 308 Residenza: Roma
|
Inviato: 29 Set 2009 20:18 Oggetto: [php/dom/htm] non va a capo nel contenuto di un logo |
|
|
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 |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 30 Set 2009 20:49 Oggetto: |
|
|
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 |
|
 |
sevenjeak Semidio


Registrato: 04/02/08 22:05 Messaggi: 308 Residenza: Roma
|
Inviato: 09 Ott 2009 17:02 Oggetto: |
|
|
Scusa il ridarto della risposta, cmq ho risolto scrivendo al posto di createTextNode() la funzione createCDATEsector() |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 09 Ott 2009 18:23 Oggetto: |
|
|
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 |
|
 |
|
|
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
|
|