私はこのコードを持っていると私はmedication table
で情報を取得し、account table
でacc_id
は=
medication table
でacc_id
にある場合、それを表示したいとmed_timeoftheday='morning'
PHPは値
$postdata = file_get_contents("php://input");
if (isset($postdata)) {
$request = json_decode($postdata);
$User_ID = $request->acccid;
$sql = sprintf("SELECT * FROM account_info
join medication on account_info.acc_id = medication.acc_id
where account_info.acc_id='%s'",
mysqli_real_escape_string($conn,$User_ID));
$result=$conn->query($sql);
if ($result->num_rows>0)
{
while($row=$result->fetch_assoc())
{$data[]=$row;
}
echo json_encode($data);
}
}
これは私のtsのですが返されない選択:
どうすればいいですか?
ありがとうございます!アカウントテーブルと結合を使用して、あなたは薬のテーブルからデータを選択し、まずそうであれば第1の薬剤のテーブルを選択
SELECT * FROM medication
INNER JOIN account_info ON account_info.acc_id = medication.acc_id
WHERE medication.med_timeoftheday='morning'
** WARNING **:あなたが使用する必要がありますmysqli' '使用する場合は、[パラメータ化クエリ](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)と[ 'bind_param'](http://php.net/manual/en/mysqli-stmt.bind-param.php)を使用して、クエリにユーザーデータを追加します。 **重大な[SQLインジェクションのバグ](http://bobby-tables.com/)を作成するため、マニュアルエスケープと文字列補間または連結を使用しないでください。誤ってエスケープされていないデータは重大なリスクです。バインドされたパラメータを使用することはあまり冗長ではなく、適切に実行しているかどうかを確認するのが簡単です。 – tadman
注: 'mysqli'へのオブジェクト指向インタフェースは、コードの読み込みと監査を容易にし、' mysql_query'インタフェースと混同しにくいものになりました。手続き型スタイルに多額の投資をする前に、それを切り換える価値があります。例: '$ db = new mysqli(...)'と '$ db-> prepare(" ... ")'手続き型インタフェースはmysqli' APIが導入されたPHP 4時代のアーティファクトであり、コード。 – tadman