[PHP] Evitare la visualizzazione del carattere di nuova linea \r\n

elpirata

Utente Attivo
18 Mar 2009
264
7
18
Un saluto a tutti,
cortesemente mi dareste una mano a capire come fare per evitare che nel database venga registrato il carattere di \r\n

In sostanza ho questa query:

PHP:
if (isset($_POST['submit'])) {

/* RECUPERO I DATI DAL FORM INSERIMENTO*/
$veicolo = filter_input(INPUT_POST, 'veicolo', FILTER_SANITIZE_STRING);
$cliente = filter_input(INPUT_POST, 'cliente', FILTER_SANITIZE_STRING);
$telefono = filter_input(INPUT_POST, 'telefono', FILTER_SANITIZE_STRING);
$note = filter_input(INPUT_POST, 'note', FILTER_SANITIZE_STRING);

$data = mysqli_real_escape_string($mysqli, $_POST['data']);
$ora = mysqli_real_escape_string($mysqli, $_POST['ora']);
$gestore = mysqli_real_escape_string($mysqli, $_POST['gestore']);
$stato = mysqli_real_escape_string($mysqli, $_POST['stato']);

/* SETTO I MAIUSCOLI */
$veicolo = strtoupper($veicolo);
$cliente = strtoupper($cliente);
$note = strtoupper($note);

/* FILTRO LE ALTRE VARIABILI */
$data = trim(strip_tags(stripslashes($data)));
$ora = trim(strip_tags(stripslashes($ora)));
$telefono = trim(strip_tags(stripslashes($telefono)));
$gestore = trim(strip_tags(stripslashes(strtoupper($gestore))));
$stato_pren = trim(strip_tags(stripslashes(strtoupper($stato_pren))));
/* FINE FILTRI e CONVERSIONI SULLE VARIABILI POST */

/* QUERY DI INSERIMENTO SENZA UPPER, L'UPPER E' DEMANDATO AL COMANDO FOREACH */
$sq1 = "INSERT INTO appuntamenti (idappuntamento, cliente, gestore, veicolo, data, ora, stato, telefono, note) VALUES (NULL, '$cliente', '$gestore', '$veicolo', STR_TO_DATE('$data', '%d/%m/%Y'), '$ora', '$stato', '$telefono', '$note')";
$rs1 = $mysqli->query($sq1);

quando registro i dati e poi vado a visualizzarli li vedo così:

MONTAGGIO PARABOLA + SMONTAGGIO DEF. OCCHHIO\r\nSERIALE XX252\r\n
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
li vuoi far sparire o far funzionare?
ti schematizzo i due casi
PHP:
$stringa="pinco\r\npallo";
$cosa   = array("\r\n", "\n", "\r");
$con = ' ';//con spazio o altro
echo str_replace($cosa, $con, $stringa);

/*output
pinco pallo
*/

PHP:
$stringa="pinco\r\npallo";
echo nl2br($stringa);//\r\n "\n \r -> <br />
//se nl2br($stringa, false); \r\n "\n \r -> <br>

/*output
pinco
pallo
*/
 

elpirata

Utente Attivo
18 Mar 2009
264
7
18
Buongiorno Borgo Italia,
ho provato a fare in questo modo:

PHP:
$note = filter_input(INPUT_POST, 'note', FILTER_SANITIZE_STRING);
$note = nl2br($note);
$note = strtoupper($note);

ma dopo registrato visualizzo sempre gli "a capo" (e non vorrei visualizzarli)

in sostanza in fase di visualizzazione escono sempre le scritte
\r\n
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
allora prova con l'altro metodo
PHP:
$stringa="pinco\r\npallo";
[PHP]$cosa   = array("\\r\\n", "\\n", "\\r");
$con = ' <br />';//con spazio o altro
echo str_replace($cosa, $con, $stringa);[/PHP]
eventualmente se non funzione prova a duplicare lo slash
 

elpirata

Utente Attivo
18 Mar 2009
264
7
18
Borgo Italia,
in sostanza io ho un file inserisci.php che passa i campi post a salva.php e poi li recupero con visualizza.php
e non riesco a capire dove fare l'escape del carattere newline :(

Nell'inserisci ho una text area
HTML:
<tr>
<td><b>Note</b></td>
<td><textarea maxlength="90" name="note" placeholder="Max 90 caratteri" maxlength="90"></textarea></td>
</tr>
</table>
</fieldset>

<input type="submit" name="submit" class="bottone" value="Registra Appuntamento">
<div class="clear"></div>
</form>

che recupero da salva.php

PHP:
<?php

if (isset($_POST['submit'])) {

/* RECUPERO I DATI DAL FORM INSERIMENTO*/
$note = filter_input(INPUT_POST, 'note', FILTER_SANITIZE_STRING);

/* SETTO I MAIUSCOLI */
$note = strtoupper($note);

/* QUERY DI INSERIMENTO SENZA UPPER, L'UPPER E' DEMANDATO AL COMANDO FOREACH */
$sq1 = "INSERT INTO appuntamenti (idappuntamento, note) VALUES (NULL, '$note')";
$rs1 = $mysqli->query($sq1);

if (!$rs1) {
echo "<p style='margin-top: 40px;text-align:center;'>Ho trovato un errore nell'esecuzione della <b>QUERY</b></p>";
die("Errore nella query $sq1: " . mysqli_error());

}else{

/* Redirect alla pagina principale */
$messaggio = "<div class='success'>Appuntamento registrato con successo! Attendi..</div>";
echo "<meta http-equiv='refresh' content='2;url=index.php?page=lista_appuntamenti_oggi&tipo=tutti&data=oggi'>";

 }
}

?>

<? echo $messaggio; ?>

PHP:
<?php

... eseguo la query per recuperare il campo note dal database ...


echo "<div class = 'container-ricerca-nulla'>";
echo "<div class ='row'><p class='btn btn-danger center-button'>Nessun appuntamento presente</p></div>";
echo "</div>";

}else{
    
echo "<div class ='container-appuntamento'>";
echo "<table class='table table-responsive table-striped'>";
echo "<tr>";
echo "<th>Note</th>";
echo "<th>Aggiorna</th>";
echo "</tr>";

while ($row = $res->fetch_array(MYSQLI_ASSOC)) {
$idappuntamento = mysqli_real_escape_string($mysqli, $row['idappuntamento']);
$note = mysqli_real_escape_string($mysqli, $row['note']);

/* FILTRI e CONVERSIONI SULLE VARIABILI POST */
$note = trim(strip_tags(stripslashes($note)));

/* FINE FILTRI e CONVERSIONI SULLE VARIABILI POST */

if ($stato == 'ACCETTAZIONE') { $classe = 'accettazione'; }
if ($stato == 'LAVORAZIONE') { $classe = 'lavorazione'; }
if ($stato == 'TERMINATO') { $classe = 'terminato'; }
?>

<tr>
<td><? echo $note = nl2br($note); ?></td>
<td><? echo "<a href='index.php?page=aggiorna_appuntamento&idappuntamento=$idappuntamento' target='_blank'><img src='images/edit.png' alt=''></a>"; ?></td>
</tr>

<?
 }
echo "</table>";
echo "</div>";
}
?>
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
se non vedo male (sono un po' di corsa)
PHP:
<td><?php echo  nl2br($note); ?></td>

p.s.
non usare lo shorttag <? ma <?php
 
Discussioni simili
Autore Titolo Forum Risposte Data
C [PHP] Ricerca multipla, evitare if PHP 4
xone Evitare Meta Tag duplicati su paginazione php PHP 2
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5
F Scrivere dei dati in word con php PHP 0
D PHP leggere cartella di Windows PHP 0
I dominio aruba versione php server linux Domini 3
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
S PHP e Mysqli PHP 0
Y Stampare da php su un foglio A6 attraverso una stampante esterna PHP 1
M Visulizzare immagine con php PHP 8
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
G leggere file txt e stampare con php il contenuto a video PHP 7
F Ricreare struttura php+mysql su Xampp Apache 0
Z PHP.INI - STMP per invio email con PHP Server Dedicati e VPS 0
M Array associativi php su 2 campi mysql PHP 10
G Invio form con PHP PHP 3
T fatture con voci fattura in php PHP 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
M Collegamento tra form html e script php PHP 4
M Problemi con la stampa dei valori in php PHP 1
W [Cerco collaborazioni] Sviluppatore Web (PHP) Offerte e Richieste di Lavoro e/o Collaborazione 1
D passare valori da database sql a php PHP 1
L Ricezione dei dati su file php da modulo html PHP 6
E Inviare variabile a PHP da ciclo in JS Javascript 0
A form PHP prenotazione tramite query PHP 2
A Form php prenotazione di un azienda sanitaria locale presso studio medico PHP 1
F menù select dinamico da db in php PHP 3
L Problemi form Pagina php HTML e CSS 3
L php mysql non salva solo id PHP 21
L php mysql cerca e visualizza pagina PHP 0
F Il codice php è giusto? PHP 2
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1

Discussioni simili