2017-05-31 14 views
-3

は、私は私のSQLクエリPHP SQLクエリの制限は、1

<?php 
include 'connect.php'; 
$pdo = Database::connect(); 

$sql = "SELECT Visit_Date FROM tbl_patient_med_record WHERE PatientID=".$_GET['PatientID'] order by Visit_Date limit 1; 

foreach ($pdo->query($sql) as $row){  

    echo date('F j,Y',strtotime($row['Visit_Date'])); 
}      
Database::disconnect(); 
?> 

目標は、出力にVisit_Dateの最新の値であるとの助けを必要としています。しかし、私のコードは動作していないようです。これに対する可能な救済策はありますか?おかげ

エラーは次のとおりです。

Parse error: syntax error, unexpected 'order' (T_STRING) in C:\xampp\htdocs\capstone_ncd\patient_Profile.php on line 337

+1

あなたのコードは[** SQLインジェクション**](https://en.wikipedia.org/wiki/SQL_injection)攻撃に対して脆弱です。 [** this post **]で説明されているように、バインドされたパラメータを持つ[** PDO **](https://secure.php.net/manual/en/pdo.prepared-statements.php)プリペアドステートメントを使用する必要がありますhttps://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)。 –

+0

SQL文字列を正しく連結する必要があります。 – Qirel

+1

あなたの質問は適切に引用されていません。ソースファイルで 'php -l file.php'を実行すると、構文エラーがどこにあるかがわかります。 –

答えて

0

はあなたが誤って引用符を扱ってきたようです。しかし、これはAlex Howansky commentedというSQLインジェクションに対して脆弱です。

$sql = "SELECT Visit_Date FROM tbl_patient_med_record WHERE PatientID=".$_GET['PatientID']." ORDER BY Visit_Date LIMIT 1"; 
+0

ありがとう。それは完璧に働いた。 order by節の前にドット記号を入れるのを忘れてしまった。 – ninja7

+0

明らかにオフトピックの質問に回答を投稿しないでください!参照:** [トピックの質問についてアドバイスをお願いしますか?](// meta.stackoverflow.com/q/276572/1768232)*トピック以外の質問は、投稿を削除したり削除したりすることができます。 –

+0

潮を回して、乱雑で危険なコーディングを教える/伝播させないようにします。準備ができていない文章を投稿した場合[投稿する前にこれを考慮する](http://meta.stackoverflow.com/q/344703/)。さらに[もっと貴重な答えは、正しい方法をOPに示すことから来ている](https://meta.stackoverflow.com/a/290789/1011527)。 –

0

$ sqlは間違って作成されています。あなたがそのように行うことができます:あなたはこの聖霊降臨祭PHPのような文字列を生成する必要が SELECT * FROM membre WHERE pseudo='apseudo' LIMIT 1

このようなSQLクエリを見

'SELECT * FROM membre WHERE pseudo=' . "'$pseudo'". ' LIMIT 1';

あなたはこのようなものです:

SELECT * FROM membre WHERE pseudo= 続いて悪いものが続きます。

+0

潮を回して、冗長で危険なコーディングを教えてください。準備ができていない文章を投稿した場合[投稿する前にこれを考慮する](http://meta.stackoverflow.com/q/344703/)。さらに[もっと貴重な答えは、正しい方法をOPに示すことから来ている](https://meta.stackoverflow.com/a/290789/1011527)。 –