2012-02-10 15 views
-3

PHPのpreg_match.Iに問題があります。 誰かがフォーラムの誰かのユーザー名(例:@Username text ..)に通知を挿入するためにmysqlクエリを実行するとデータベースへ。PHP preg matchが動作しない

私はこのコードを作った:

<?php 
$this = mysql_query("SELECT id,username FROM users"); 
while($the = mysql_fetch_array($this)){ 
if(preg_match("/^@".$the['username']."/",$form_text)){ 
mysql_query("INSERT INTO notifications (num,who) VALUES ('$forum_id','".$the['username']."')"); 
}  
?> 

をしかし、私はそれを修正することができworking.How何かがないのですか?おかげさまで

答えて

0

試してみて、使用:

if (strpos($form_text , $the['username']) !== false) 

・ホープ、このことができます。

編集:また、このページを検索、SQLインジェクションから身を守る必要があります。 http://php.net/manual/en/security.database.sql-injection.php

+0

それは... ITが機能するようになりました – harisdev

+0

おかげで動作することはできません! – harisdev

+0

あなたは、動作していないもの、テキスト出現(ユーザ名)、mysql挿入、通知の検索に関してより具体的になりますか? –