2016-07-11 3 views
0

長い時間の読者、初めての質問者...私はポイントになるでしょう。PHPのmySQLのテキストエリア---全体のshibang

私はtextareaデータをQUERY_STRINGに渡しており、mySQLでniceを再生する必要があります。具体的には、すべての文字を表示しながら正しい改行とスペースを表示するテキストが必要です(私はあなたと#、友人を見ています)。

私は(ほとんどうまくいけば)すべてを試しましたが、材料を正しく得ることができないと思いますが、スペーシングや改行が働くことがあります#文字は使用できません。#文字は取得できますが、アポストロフィは使用できません。

ADD:このデータをQUERY文字列に渡し、GETとは言わない理由はJavaScriptを使用しているためですXMLHttpRequestを使用して)裏でPHPファイルにデータを渡す

具体的には、ページはページ(つまりFacebook)を更新せずにメッセージを送信するように設定されており、それを別のPHPファイルwに渡しますhtmlはmySQLリクエストを処理しますが、ミックスでは情報が失われ、翻訳されません。私はこれを2日間続けてきたので、それを震撼させることはできません。助けて!

EDIT: ここにコードがあります。これらのコードスニペットの一部は別のページにありますが、ページの更新/更新を行わずにメッセージを送信しようとすると一緒に動作します。

<textarea spellcheck='false' id='composeText' maxlength='250'> 
</textarea> 
<input type='button' value='Send' style='float:right;' onclick='sendMsg(<?php echo '123654674, 159753';?>)' id='sendMsg'> 

parse_str($_SERVER['QUERY_STRING'],$g); 
if ($g) { 
    $msg_id = $g['msg_id']; 
    $msgFrom = $g['msgFrom']; 
    $message = addslashes($g['message']); 
    $message = nl2br($message); 
    $msgTo = $g['msgTo']; 
} 

echo "<input type='hidden' id='msgToId2' value='".$msgTo."'>"; 


addMsg($msg_id, $msgFrom, $msgTo, $message, $conn); 


function sendMsg(msg_id, msgFrom) { 
    msg_id = Math.floor((Math.random() * 1000000000) + 1); 
    msgFrom = '159753'; 

    msgTo = document.getElementById('msgToId').value; 
    if (msgTo == "") msgTo = document.getElementById('msgToId2').value; 
    message = document.getElementById('composeText').value; 
    message = message.replace(/\r?\n/g, '<br/>'); 
    message = encodeURIComponent(message); 

    getRequest(
      'sendMsg.php?msg_id=' + msg_id + '&msgFrom=' + msgFrom + '&msgTo=' + msgTo + '&message=' + message, // URL for the PHP file 
      sendMsgOutput, // handle successful request 
      sendMsgError // handle error 
    ); 
    return false; 
} 


function addMsg($msg_id, $msgfrom, $msgto, $message, $conn) { 

    $message = mysqli_real_escape_string($conn, $message); 

    $query = "INSERT INTO `messages` (`msg_id`, `msgfrom`, `msgto`, `message`, `timestamp`) VALUES ('$msg_id', '$msgfrom', '$msgto', '$message', DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p'))"; 
    $result = mysqli_query($conn, $query); 
} 
+0

あなたは[TinyMCE](https://www.tinymce.com/)を検討しましたか? – Script47

+0

確かに私は何かを考えますが、もっと簡単に何かをしたいです – ddaugherty3

+0

それはすべての余分なツールを削除するようにカスタマイズすることができます。通常の書式設定ビットとボブだけを持つことができます。 – Script47

答えて

0

他のすべてが失敗した場合、私はあなたが私が使用したTinyMCEのようなものを使用することができ、それはかなり印象的で、私はここにこれを残すだろうと思っていました。

使用

がサイトごとのように簡単なデモ、すべての余分なこまごまとに圧倒さ

<!DOCTYPE html> 
<html> 
<head> 
    <script src="//cdn.tinymce.com/4/tinymce.min.js"></script> 
    <script>tinymce.init({ selector:'textarea' });</script> 
</head> 
<body> 
    <textarea>Easy! You should check out MoxieManager!</textarea> 
</body> 
</html> 

あなたが気に入っているものを削除しておいても大丈夫なことはありません。以下は私が使用する最小限の設定であり、それをさらに減らすことができます。

tinymce.init({ 
    selector: '.tiny-mce', 
    toolbar: 'bold italic alignleft aligncenter alignright bullist numlist outdent indent undo redo styleselect', 
    statusbar: false, 
    menubar: false 
}); 

documentationも簡潔でプラスの点です。 editors appearanceからcontent filteringには、カスタマイズ可能なさまざまなオプションがあります。

フル機能リストhereがあります。

+0

私はTinymceを試しました、それはかなりクールですが、それは私の問題を解決しません。 ステップ1 - ユーザがMSG ステップ2を送信するボタンをクリック - 背景PHPページかかり - JSは、XMLHttpRequestを ステップ4を使用してバックグラウンドPHPページスルーデータがそのプッシュ - 処理はDOM ステップ3を使用してテキストエリアのデータを取得したJSを通して押し込まれますそのデータをMySQLに送信する – ddaugherty3

関連する問題