少し助けが必要です。どうすればPHP値 "$ filtr_zamestnanci_ID"をsql_queryに取得できますか。コードはここにあります:mysqlクエリでループによって生成されたphp変数の使い方
<?php
if (isset($_POST["filtr_zamestnanci_ID"])) {
for ($a = 0; $a < count($_POST["filtr_zamestnanci_ID"]); $a++) {
$filtr_zamestnanci_ID .="AND companies_text_records_user_ID = '".$_POST["filtr_zamestnanci_ID"][$a]."' ";
}
}else {
$filtr_zamestnanci_ID = "";
}
echo "filtr_zamestnanci_ID :".$filtr_zamestnanci_ID;
mysql_query("SET CHARACTER SET utf8");
$sql_1 =
mysql_query("SELECT * FROM companies_text_records
LEFT JOIN companies ON companies_text_records_company_ID = company_ID
LEFT JOIN login_users ON user_id = companies_text_records_user_ID
WHERE companies_text_records_relative_to = '0'
'".$filtr_zamestnanci_ID."'
ORDER BY companies_text_records_ID DESC");
?>
私はループなしですべてを渡しても問題ありません。しかし、ループからの出力はまったく動作しません。 "$ filtr_zamestnanci_ID"という形式のものがありますか?
のために囲まれた単一引用符を除く)
AND
2の前にスペースを与えます新しいコードで](http://stackoverflow.com/questions/12859942/)。それらはもはや維持されておらず(正式に推奨されていません)(https://wiki.php.net/rfc/mysql_deprecation)。 [red box](http://php.net/manual/en/function.mysql-connect.php)を参照してください。代わりに[* prepared statements *](https://en.wikipedia.org/wiki/Prepared_statement)について学び、[PDO](http://php.net/pdo)または[MySQLi](http:// php.net/mysqli) - [この記事](http://php.net/manual/en/mysqlinfo.api.choosing.php)は、あなたに最適なものを決定するのに役立ちます。 –
あなたのスクリプトは[SQLインジェクション攻撃](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)の危険にさらされています。[Little Bobby Tables](http://bobby-tables.com/)[あなたが入力を逃れている場合でも、その安全ではありません!](http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around -mysql-real-escape-string)[prepared parameterized statements](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)を使用します。 –
mysql_queryをforループに入れます.... –