Domanda

Ho letto un po 'di lettura su mysqli_real_escape_string () e, dopo essere sfuggito correttamente i miei contenuti, ho qualche problema a essere visualizzato correttamente quando lo tiro fuori.

Ecco il codice che ho:

function update_section_content() {
    $name = mysqli_real_escape_string($this->conn, $_POST['name']);
    $text = mysqli_real_escape_string($this->conn, $_POST['content']);

    // First, we do an update
    $update_query = "UPDATE sections SET content = ? WHERE name = ?";
    if($update_stmt = $this->conn->prepare($update_query)) {
        $update_stmt->bind_param('ss', $text, $name);
        $update_stmt->execute();
        // If the update was successful, read in what we just updated
        if($update_stmt->affected_rows == 1) {
            $read_query = "SELECT content FROM sections WHERE name = ?";
            if($read_stmt = $this->conn->prepare($read_query)) {
                $read_stmt->bind_param('s', $name);
                    $read_stmt->execute();
                $read_stmt->bind_result($content);
                if($read_stmt->fetch()) {
                    echo nl2br($content);
                }
            }
        }
        $read_stmt->close();
        $update_stmt->close();
}

La mia speranza per il seguente codice era che avrebbe aggiornato un record e sfuggire a qualsiasi personaggio negativo, e poi, dopo il successo, leggere la query aggiornata mantenendo la sua precedente integrità visiva. (Cioè, vorrei che il textArea questo contenuto venga echeggiato per visualizzare le nuove e non i tag BR.)

Sfortunatamente, per ora, sto ancora ricevendo personaggi di Newline dopo essere fuggiti. Cosa mi manca?

Molto grazie per il tuo tempo e qualsiasi consiglio fornito è molto apprezzato.

Sfortunatamente, non è così. Ricevo ancora personaggi di Newline

È stato utile?

Soluzione

Dato che stai usando dichiarazioni preparate, non dovresti anche sfuggire alle stringhe.

La fuga delle stringhe è per quando si incorporano i valori nella stringa di query SQL stessa, ma usando le istruzioni preparate, stai giustamente evitando di farlo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top