2017-11-09 4 views
-1

PHPヘルプが必要です。構文解析エラー:構文エラー。予期しない '{' in /hermes/bosnaweb15a/b1372/ipg.thestephaniestorecom/mysql.php on line 39

// checks username does not exist 
    public function checkUsername($username) { 
     $sql = "SELECT username FROM Registration WHERE username = '$username'"; 
     $this->result = mysqli_query($this->conn, $sql); 
     if (mysqli_num_rows($this->result <= 0) { 
       return false; 
     }  
     return true; 
+1

あなたのコードは[** SQLインジェクションの脆弱性です* *](https://en.wikipedia.org/wiki/SQL_injection)の攻撃。 [** mysqli **](https://secure.php.net/manual/en/mysqli.prepare.php)または[** PDO **](または[** mysqli **])を使用して、 パラメータをバインドしたプリペアドステートメントを使用する必要がありますhttps://secure.php.net/manual/en/pdo.prep ared-statement.php)drivers。 [** This Post **](https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)には、いくつかの良い例があります les。 –

答えて

0

あなたが機能を閉じ、ファイルの末尾に括弧が欠落している:MySQLデータベースに接続しようとすると...エラーメッセージを取得すると、その下には不満というライン39の周りに自分のソースコードです。また、ここでは1が欠落していますif (mysqli_num_rows($this->result <= 0) {

はこれにあなたのコードを変更

public function checkUsername($username) { 
     $sql = "SELECT username FROM Registration WHERE username = '$username'"; 
     $this->result = mysqli_query($this->conn, $sql); 
     if (mysqli_num_rows($this->result) <= 0) { 
       return false; 
     }  
     return true; 

} 

は、この1次の時間のような構文チェッカーを使用します。https://phpcodechecker.com/

+0

私は私の答えでそれを修正しました。見てみましょう。 –

+0

トンネルは私のデバッガに見えました。私はあなたが何を意味しているのかを見て、それを修正しました。 –

関連する問題