Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    problema a capo con stringhe

    tengo del testo tipo:

    "Ciao

    sono

    Domenico "

    preso tramite database e salvato in una variabile solo che vorrei assegnarlo nella variabile cosi:

    "Ciao sono Domenico"

    tutto su una riga

    mi serve perchè devo passare la variabile php a una variabile di js tramite echo logicamente ineffetti in js se vedo il codice mi è:

    miotesto = "Ciao

    sono

    Domenico";

    per js deve essere tutto su una riga

  2. #2
    sostituisci i \n (o \r\n su windows) con str_replace() mettendo al loro posto

  3. #3
    si potrebbe fare tipo così dando alla stringa js gli \n?

    miotesto= "Ciao\n sono\n Domenico";

    io questo devo fare solo che il testo nel database è direttamente così:


    "Ciao

    sono

    Domenico "


  4. #4
    echo "Ciao

    sono

    Domenico ";

    e

    echo "Ciao\n\nsono\n\nDomenico ";

    Da lo stesso risultato, nel codice HTML vedrai sempre:

    Ciao

    sono

    Domenico

    Per questo ti dicevo di sostituire gli a capo con un br o con un altro carattere che poi vai a sostituire con \n quando hai la stringa in una variabile JS

  5. #5
    allora fatto come hai detto tu

    le funzioni che svolgo sul testo sono:

    Codice PHP:
            $testo=str_replace("’","'",($array_news[$conto]['testo_1_vs']));
        
    $testo=nl2br($testo);
        
    $testo=str_replace("
    "
    ,"-br-",$testo);    
        
    $testo=substr($testo,0,500); 
    facendo così mi stampa senza il

    in questo modo:

    "Ciao-br-
    sono-br-
    Domenico "

    perchè nella variabile js deve essere tutto su una sola riga nn so se rendo l'idea


    come si potrebbe fare a riscrivere la stringa su una sola riga?

  6. #6
    nonostante la sostituzione del testo me lo scrive sempre a capo



    come dobbiamo fare?

  7. #7
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    nl2br non sostituisce i new line con
    , aggiunge
    prima di ogni new line.
    devi sostituire tu i new line.

    codice:
    $stringa=str_replace("\r\n",'',$stringa);
    se sei su server unix invece di \r\n usa \n


  8. #8
    enoa io prendo del testo salvato nel database da una textarea con a capo e altro....
    poi in html stampo con nl2br ...

    quando pesco il testo dal database è in questo formato

    "Ciao

    sono

    Domenico "

    il problema è che questo testo mi serve per una funzione di javascript e facendo il normale echo nella variabile js mi stamperà

    esempio php

    Codice PHP:
    <script type="text/javascript" language="JavaScript">
    miotesto= <?php echo $testo?>
    </script>
    esempio finale nel codice:

    miotesto= "Ciao

    sono

    Domenico ";

    spero di aver reso l'idea

    ciò che serve ora o mi stampa tutto su una sola riga senza gli a capo o con gli a capo ma basta che mi stampera tutto su una sola riga

    spero di essere stato chiaro

  9. #9
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Codice PHP:
    <script type="text/javascript" language="JavaScript">
    miotesto= <?php echo $testo?>
    </script>
    ma da db a $testo quali sono i passaggi?

    se tu fai:

    codice:
    $testo=nl2br($testo_db);
    nl2br non fa il replace dei new line, aggiunge il
    in corrispondenza dei new line.
    il new line lo devi togliere tu perchè in html, il carattere new line non lo vedi come \n o \r\n ma per l'appunto come una nuova riga. la nuova riga è nel codice, per il markup devi mettere
    per andare a capo.
    quindi se vuoi la variabile javascript su un unica riga, ma ti serve di mantenere gli a capo per qualche innerHTML o simile ti conviene fare

    codice:
    $testo=str_replace("\r\n",'
    ',$testo_db);

  10. #10
    guarda che io lo conosco il str_replace

    e ho capito il fatto della new line quello che nn riesco a farvi capace che il testo nel database è salvato così:

    "Ciao

    sono

    Domenico "

    cioè su + righe
    spero di essere stato chiaro...



    se faccio il str_replace come dici tu mi uscirà

    "Ciao


    sono


    Domenico "

    non tutto su una sola riga

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 © 2026 vBulletin Solutions, Inc. All rights reserved.