Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    118

    Problema testo textarea.

    Ciao,

    ho uno script php che inserisce del testo nel database, e con un form ho dato la possibilitā di modificarlo.
    In un'altra pagina, poi, richiama la variabile che mi stampa il contenuto della textarea.
    Nel momento in cui perō nel testo che vado ad inserire o a editare inserisco un apostrofo, esso non mi viene visualizzato nč nella textarea nč nella pagina che richiama la variabile.

    Qui il codice, sperando in un vostro aiuto.
    Grazie.

    text.php
    codice:
    <?php 
    error_reporting(E_ERROR | E_WARNING | E_PARSE);
    require_once('../conf.php'); 
    if (isset($_POST[edit])){
    $sql = "UPDATE `pagine` SET `testo` = '$_POST[testo]'";
    mysql_query($sql);
    }
    $sql = "SELECT * FROM pagine";
    $query = mysql_query($sql);
    while($row = mysql_fetch_array($query)){
    $html  = "<form method='POST' name='form' action='text.php'>\n";
    $html .= "<input type='hidden' name='edit' value='$row[id]'>";
    $html .= "<textarea id='textarea' name='testo'>$row[testo]
    </textarea>
    
    ";
    $html .= "<input id='stile' name='submit' type='submit'      value='MODIFICA'
    onClick=\"window.alert('Modifica avvenuta con successo'); \"> HOME";
    $html .= "</form>";
    }
    echo "$html";
    ?>
    index.php
    codice:
    <?php             
    require_once('admin/conf.php');                     
    $sql = "SELECT * FROM pagine ORDER by 'id' ";              
    $query = mysql_query($sql);              
    while($row = mysql_fetch_array($query)) {              
    $testo = "$row[testo]";
    $text = nl2br ($testo);
    }
    echo $text;
    ?>
    conf.php
    codice:
    <?php
    $db_host = "localhost";
    $db_name = "demoform";
    $db_user = "root";
    $db_pass = "";
    mysql_connect($db_host, $db_user, $db_pass)or die(mysql_error()); 
    mysql_select_db($db_name) or die(mysql_error()); 
    ?>
    
    <?php
    $user= 'admin';
    $pass= 'admin';
    ?>

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Codice PHP:
    $sql "UPDATE `pagine` SET `testo` = '".mysql_real_escape_string($_POST[testo])."'";
    mysql_query($sql); 

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    118
    Originariamente inviato da Alhazred
    Codice PHP:
    $sql "UPDATE `pagine` SET `testo` = '".mysql_real_escape_string($_POST[testo])."'";
    mysql_query($sql); 
    Grande

    Funziona perfettamente, grazie mille.

    PS - senza aprire un nuovo topic, vorrei chiederti un'altra cosa.
    E' possibile nella textarea, inserire solo il pulsante [B] per il grassetto senza dover implementare un editor di testo come per esempio TinyMCE?

    Grazie ancora.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    118
    Attraverso questo script ho i pulsanti

    Grassetto
    Corsivo
    Sottolineato

    codice:
    <script language="JavaScript" type="text/javascript">
    <!--
    function Aggiungi(textarea,formattazione)
    {
    
    switch(formattazione)
    {
    
    case "bold": // se formattazione č = a "grassetto"
    bld=prompt('Inserisci il testo che deve essere visualizzato come grassetto','');
    if(bld==null) { textarea.focus(); return; }
    testo=""+bld+"";
    textarea.value+=testo;
    break;
    
    case "italic": // se formattazione č = a "corsivo"
    ita=prompt('Inserisci il testo che deve essere visualizzato come corsivo','');
    if(ita==null) { textarea.focus(); return; }
    testo=""+ita+"";
    textarea.value+=testo;
    break;
    
    case "underline": // se formattazione č = a "sottolineato"
    und=prompt('Inserisci il testo che deve essere visualizzato come sottolineato','');
    if(und==null) { textarea.focus(); return; }
    testo="<u>"+und+"</u>";
    textarea.value+=testo;
    }
    }
    
    //-->
    </script>
    codice:
    ...
    $html .= "<input title='grassetto' style='font-weight:bold;position:absolute;top:30px;left:350px;' type=\"button\" value=\"G\" onclick=\"Aggiungi(testo,'bold');\">";
    $html .= "<input title='sottolineato' style='font-style:italic;position:absolute;top:30px;left:380px;' type=\"button\" value=\"C\" onclick=\"Aggiungi(testo,'italic');\">";
    ...
    ma nella textarea mi viene visualizzato

    testo
    [i]testo
    <u>testo</u>

    La mia domanda č: come posso fare per far si che il testo sia formattato nella textarea?

    testo
    testo
    testo

    Thx.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.