2011-12-18 15 views
0

私はリダイレクトされたURLにいくつかのコードを提出しましたが、これを使って情報をエコーアウトしようとしましたが、どこが間違っているのか分かりません。

は、私は、次のコードを持っている:

<?php $login_attempt = mysql_real_escape_string($_GET['login_attempt']); 
    if ($login_attempt) == '1'{ 
    return 'failed'; 
    } 
?> 

URLが、私はメッセージページに「失敗」を返すようにしたい$login_attempt=1を持っている場合、私がしたいすべてがあります。

+1

エコーが、返さないとあなたはSQLクエリの一部としてそれを使用していない場合は、なぜあなたはそのパラメータをエスケープしているmysql_real_escape_stringの()ここ –

+0

を使用する理由はありません。私はそれがあなたのために役に立つかもしれません願っていますか?パラメータはどのように設定されていますか?あまりにも多くの未知がここにあります。 – Jon

+0

このエラーメッセージがページに表示される構文解析エラー:構文エラー、予期しないT_IS_EQUALの/home/content/52/8417952/html/login.php 4832 –

答えて

2

重要な場所に入力しないと(データベースなど)何もエスケープする必要はありません。

<?php 
    if ($_GET['login_attempt'] == '1') { 
     echo 'failed'; 
    } 
?> 

はまた、あなたはそれが上記のコードで修正されます、あなたのif文で問題を抱えています。平等チェックの片側だけでなく、かっこ内に条件のすべてを必ず含めてください。

また、画面に何かを表示したい場合はechoでなく、returnである必要があります。

if ($login_attempt == '1'){ 
    echo 'failed'; 
    } 
+0

返信ではなくエコーでうまくいきました。 –

+0

私がコードを変更しただけではなく、返す代わりにエコーがあります。答えを徹底的に読んで、私が何をしたのか理解してください。 –

0

。 $ login_attempt == '1' であなたのエラー:

<?php $login_attempt = mysql_real_escape_string($_GET['login_attempt']); 
    if ($login_attempt == '1'){ 
     echo 'failed'; 
     return false; 
    } 
?> 
0

はこの1つを試してみてください:についてどのように

0

他の人がすでにあなたはいくつかの問題が、構文エラーを持って述べたように、このから来ている:

if ($login_attempt) == '1'{ 

それは

if ($login_attempt == '1') { 
0
する必要があります

$($ login_attempt)== '1'はこのようなものでなければならないと思います($ login_attempt == '1')申し訳ありません...多くの人がこれを示唆しています:P

0

最初に、私はIF条件に間違いがあることを伝えなければなりません。あなたは==の外に==をタイプしました。 さらに、URLを使用して変数を設定する状況に注意する必要があります。以下のコードを確認してください。このコードでは、ステータスを確認する機能を作った。デフォルトのステータスはtrueであり、負の条件の場合のみチェックされます。

<?php 
function check() { 
    if (isset($_GET['login_attempt'])) { 
     $login_attempt = mysql_real_escape_string($_GET['login_attempt']); 
     if ($login_attempt == '1') { 
     return false; 
     } else { 
     return true; 
     } 
    } else { 
     return true; 
    } 
} 
if (!check()) echo('Error Message'); 
?>