1
私はmysqlにデータを挿入するクエリを作成します。symfony3で "INSERT SELECT"を使うにはどうすればいいですか?
$data=$request->request->all();
$odd=$data['form']['odd'];
$stake=$data['form']['stake'];
$win=$data['form']['win'];
$login_user=$data['form']['login_user'];
$separator = '\r\n';
$db = $this->getDoctrine()->getManager();
$query = "INSERT INTO zakladyuser (game, type, odd, stake, win, login_user, stat)
SELECT GROUP_CONCAT(game SEPARATOR :separator), GROUP_CONCAT(type SEPARATOR :separator), :odd, :stake, :win, :login_user, 0
FROM kupon k0";
$stmt = $db->prepare($query);
$params = array(
"separator"=>$separator,
"odd"=>$odd,
"stake"=>$stake,
"win"=>$win,
"login_user"=>$login_user
);
$stmt->execute($params);
$results = $stmt->fetchAll();
修正することはできますか?私はこれらのエラーを持っているので:未定義のメソッド教義\ ORM \のEntityManagerへ
コール::準備()
は、クラスの "教義\ ORM \ EntityManagerを" "準備" という名前の未定義のメソッドを呼び出そうとしました。
この方法が間違っている場合、どうすればよいでしょうか?
おかげで多くのことを。私はそれを追加し、 '$ results = $ stmt-> fetchAll();'を削除しました。そして、このデータを挿入することができます。 しかし、私はセパレータに問題がありますが、これらは動作しません。 – zupaaa
あなたはようこそ!セパレータの問題とはどういう意味ですか?例えば1列目の行には – manix
があります:1 [改行] 0 [改行]など。それは '1 \ r \ n0 \ r \ n'などのように私を追加しました。 = '\ r \ n'; 'を' $ separator = "\ r \ n"; ':)に変更します。しかし、助けてくれてもう一度感謝 – zupaaa