0

誰かが私のSQLでスペースを削除する方法を手伝ってくれますか. たとえば、「私はいい子です」と入力するとします...送信するすべてのスペースをすべて削除して「 iamagoodboy 」としてmysqlテーブル列に保存したい..以下のこのコードのどこでこれを行うことができますか、どうもありがとう

$sql = 'INSERT INTO messages (username,usernameto, message_content, message_time)      VALUES ("' . $username . '", "' . $messageTo . '", "' . $message . '", ' . $time . ')';

$result = mysql_query($sql, $cn) or

die(mysql_error($cn));
4

5 に答える 5

3
str_replace(' ', '', $message);

PHPで問題なく動作するはずです。原則として、そのような機能をデータベースに配置しないでください。そのサーバーに負荷をかける理由はありません。代わりに Web サーバーで実行してください。

したがって、コードは次のようになります ( からスペースを取り除いていると仮定します$message):

$sql = 'INSERT INTO messages (username,usernameto, message_content, message_time)      VALUES ("' . $username . '", "' . $messageTo . '", "' . str_replace(' ', '', $message) . '", ' . $time . ')';

ただし、より良い解決策は、preg_replace('/\s+/', '', $string);すべての空白 (タブ、改行など) を削除するものを使用することです。正確に何を達成したいかによって異なります。

于 2013-01-28T19:53:32.530 に答える
1

str_replace を使用します。

$string = str_replace(' ', '', $string);

またはすべての空白を削除します

$string = preg_replace('/\s+/', '', $string);

ソース: PHP で文字列からすべてのスペースを取り除く方法は?

于 2013-01-28T19:52:51.877 に答える
0

SQL を使用して文字を置き換えることができます -> SELECT REPLACE(caption,'\"','\'') FROM ...

于 2013-01-28T19:53:44.030 に答える
0

あなたはこれを試すことができます

 '".str_replace(' ', '', $messageTo)."'

他のものについても同じ

于 2013-01-28T19:55:53.070 に答える
0
$sql = 'INSERT INTO messages " . 
. "(username,usernameto,message_content,message_time) " .
. "VALUES ("'.$username.'","'.$messageTo.'",REPLACE("'.$message.','' '','''')",'.$time .')';

$result = mysql_query($sql, $cn) or   die(mysql_error($cn));
于 2013-01-28T19:58:56.247 に答える