Nasıl ben bir mysql_query iki sorgu koyabilirsiniz?

3 Cevap php

Ben böyle bir şey yapmaya çalışıyorum:

mysql_query("
  UPDATE name SET money = money + 1;
  UPDATE surname SET money = money + 1;
"); 

ama çalışmıyor.

Bu sadece bir örnektir, ama benim soru: Nasıl bir, iki veya daha fazla sorgular koyabilirsiniz mysql_query?

3 Cevap

http://docs.php.net/mysql_query diyor ki:

mysql_query() sends a unique query (multiple queries are not supported) to the currently active database on the server that's associated with the specified link_identifier .

Ama ilgi mysqli :: multi_query olabilir:

Executes one or multiple queries which are concatenated by a semicolon.

Sen Ben bu olabilir şüpheli bir atom şekilde gerçekleşmesi için gereken sorguları için işlemleri kullanmalısınız.

This can be done using the MySQLi interface, mysqli_multi_query() in particular. http://ca3.php.net/manual/en/mysqli.multi-query.php

Size herhangi bir SQL enjeksiyonu saldırısı çok daha geniş bir olası etkiler olduğu gibi bu işlevi kullanırken kaçması ile ekstra dikkatli olmak gerekir dikkat edilmelidir.