nl2br strano a video

Ho messo  questo ma a video dopo qualche "a capo col tasto invio" appare \>

$messaggio = nl2br($messaggio);

A video appare, es:

3333333333333333333

uuuuuuuuuuuuuuu

\>

bbbbbbbbbbbbbbbbbbbbbbbbbb

inviato 8 anni fa
php
php
6
modificato 8 anni fa
X 0 X

Ciao,

mi sembra un funzionamento anomalo anche perché se fosse una chiusura corretta comparirebbe così "/>" e non "\>". A questo punto direi che l'errore è nella stringa $messaggio. Per fare un test ti consiglio di stampare la stringa $messaggio senza l'utilizzo della funzione per verificarne il corretto valore.

Fammi sapere

 :bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X

Ciao,

mi sembra un funzionamento anomalo anche perché se fosse una chiusura corretta comparirebbe così "/>" e non "\>". A questo punto direi che l'errore è nella stringa $messaggio. Per fare un test ti consiglio di stampare la stringa $messaggio senza l'utilizzo della funzione per verificarne il corretto valore.

Fammi sapere

 :bye:

Zeta

Ora sembra andare bene, ho aggiunto questa (anche se non mi sembra che funzioni con i caratteri premuti consecutivamente)

$messaggio = wordwrap($messaggio, 90, "<br/>",1);

//nl2br, Quando si preme il tasto-Invio manda a capo 
$messaggio = nl2br($messaggio);
risposto 8 anni fa
php
php
6
X 0 X

Ciao,

puoi provare ad utilizzare str_replace("\n", "<br />", $messaggio).

 :bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X

Ciao,

puoi provare ad utilizzare str_replace("\n", "<br />", $messaggio).

 :bye:

Zeta

C'è l'ho gia per questi campi ma non ricordo più che lavoro fa esattamente,

$nome = str_replace("\n","",$nome);
$suoemail = str_replace("\n","",$suoemail);
$citta = str_replace("\n","",$citta);
risposto 8 anni fa
php
php
6
X 0 X

La funzione str_replace sostituisce semplicemente un carattere in un stringa.

Negli esempi che hai riportato sostituisce il valore "\n" (che identifica il simbolo di capo riga) con una stringa vuota "".

 :bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X

La funzione str_replace sostituisce semplicemente un carattere in un stringa.

Negli esempi che hai riportato sostituisce il valore "\n" (che identifica il simbolo di capo riga) con una stringa vuota "".

 :bye:

Zeta

Col mionon va a capo? Col tuo cosa fa?

risposto 8 anni fa
php
php
6
X 0 X

Il mio sostituisce il carattere "\n" con un "<br />".

 :bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X

Il mio sostituisce il carattere "\n" con un "<br />".

 :bye:

Zeta

Scusa ma non ho capito bene, vedo certi codici che hanno anche \r\n, il tuo manda a capo?

risposto 8 anni fa
php
php
6
X 0 X

La mia soluzione manda a capo... cmq è una soluzione corretta anche con il "\r\n".

 :bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X

La mia soluzione manda a capo... cmq è una soluzione corretta anche con il "\r\n".

 :bye:

Zeta

Quello che non capisco è "manda a capo" quando arriva contro la cella intendi?

risposto 8 anni fa
php
php
6
X 0 X

La mia soluzione manda a capo... cmq è una soluzione corretta anche con il "\r\n".

 :bye:

Zeta

Quello che non capisco è "manda a capo" quando arriva contro la cella intendi?

che cosa intendi con cella?

risposto 8 anni fa
zeta80
X 0 X

La mia soluzione manda a capo... cmq è una soluzione corretta anche con il "\r\n".

 :bye:

Zeta

Quello che non capisco è "manda a capo" quando arriva contro la cella intendi?

che cosa intendi con cella?

Il campo textarea è una cella (quella bianca) http://www.photoman.altervista.org/guestbook/form.php

risposto 8 anni fa
php
php
6
X 0 X

Ciao,

mi sembra un funzionamento anomalo anche perché se fosse una chiusura corretta comparirebbe così "/>" e non "\>". A questo punto direi che l'errore è nella stringa $messaggio. Per fare un test ti consiglio di stampare la stringa $messaggio senza l'utilizzo della funzione per verificarne il corretto valore.

Fammi sapere

 :bye:

Zeta

Lo fa ancora, codice:

...
$nome = str_replace("\n","",$nome);
$email = str_replace("\n","",$email);
$citta = str_replace("\n","",$citta);
$url = str_replace("\n","",$url);

if (strpos($url, 'http') === false) $url = "http://$url";
$messaggio = str_replace("\n","<br />",$messaggio); 

// l'ho messo qui perchè se è nei controlli iniziali da errore "caratteri non ammessi"
$messaggio = wordwrap($messaggio, 90, "<br/>",1);

//nl2br, Quando si preme il tasto-Invio manda a capo 
$messaggio = nl2br($messaggio);

...

nel file text appare così <br<br/>/>

a video così: />

risposto 8 anni fa
php
php
6
X 0 X

Ciao,

mi sembra un funzionamento anomalo anche perché se fosse una chiusura corretta comparirebbe così "/>" e non "\>". A questo punto direi che l'errore è nella stringa $messaggio. Per fare un test ti consiglio di stampare la stringa $messaggio senza l'utilizzo della funzione per verificarne il corretto valore.

Fammi sapere

 :bye:

Zeta

Lo fa ancora, codice:

...
$nome = str_replace("\n","",$nome);
$email = str_replace("\n","",$email);
$citta = str_replace("\n","",$citta);
$url = str_replace("\n","",$url);

if (strpos($url, 'http') === false) $url = "http://$url";
$messaggio = str_replace("\n","<br />",$messaggio); 

// l'ho messo qui perchè se è nei controlli iniziali da errore "caratteri non ammessi"
$messaggio = wordwrap($messaggio, 90, "<br/>",1);

//nl2br, Quando si preme il tasto-Invio manda a capo 
$messaggio = nl2br($messaggio);

...

nel file text appare così <br<br/>/>

a video così: />

Ho risolto, ho tolto

$messaggio = str_replace("\n","<br />",$messaggio);
risposto 8 anni fa
php
php
6
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda