0

バックスラッシュを含むテキストの入力に問題があります。これは、前のフォームから POST メッセージ (メッセージ) を取得したためです。とにかくこの問題を回避する方法はありますか? 私の魔法の引用符が有効になっています。

<?php
$filename = 'test.txt';
$somecontent = $_POST['message'];

// Let's make sure the file exists and is writable first.
if (is_writable($filename)) {

    // In our example we're opening $filename in append mode.
    // The file pointer is at the bottom of the file hence
    // that's where $somecontent will go when we fwrite() it.
    if (!$handle = fopen($filename, 'w')) {
         echo "Cannot open file ($filename)";
         exit;
    }

    // Write $somecontent to our opened file.
    if (fwrite($handle, $somecontent) === FALSE) {
        echo "Cannot write to file ($filename)";
        exit;
    }

    echo "Success, wrote ($somecontent) to file ($filename)";

    fclose($handle);

} else {
    echo "The file $filename is not writable";
}
?> 

結果:

Message= Jo\hn, POST result : Jo\\hn. Output: Jo\hn

期待される:

Message = Jo\hn, POST result : Jo\\hn, Output : Jo\\hn

出力は、元のメッセージ自体ではなく、POST Result と同じでなければなりません。

4

0 に答える 0