PHP如何去執行一個SQL語句
mysql_query (SQL語句 ,連接標識符);
說明:mysql_query用來根據連接標識符向該數據庫服務器的當前數據庫發送查詢,
如果連接標識符默認,則默認為是上一次打開的連接。
返回值:成功后返回一個結果標識符,失敗時返回false。
$sql = “SELECT * FROM test”;
$result = @ mysql_query($sql, $conn) or die(mysql_error());
如何在php中執行多條sql語句
這里沒有很官方的解釋,我個人認為mysql_query 不能批量執行SQL語句的原因最主要的一個就是Mysql_query不能判斷你的批量語句里面是否包含錯誤.為了最大的保證程序的順利執行,所以,干脆罷工了.
解決的辦法,有很多種.這里僅列出我的心得之一(利用數組用Mysql_query批量執行SQL語句)
$query = 'delete from ecs_goods_attr where attr_id=138 and goods_id=442;Insert into ecs_goods_attr (goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(Null,442,138,”歐版 白色”,0);update ecs_goods set goods_number=10,shop_price=955 where goods_id=442;'
$query 是我需要執行的SQL語句,顯然這里 mysql_query($query); 是無法得到我們想要的結果的.這里我們采用一個數組.用explode 函數,將$query語句按照”;”炸開.這個說的比較形象.呵呵
$query = 'delete from ecs_goods_attr where attr_id=138 and goods_id=442;Insert into ecs_goods_attr (goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(Null,442,138,”歐版 白色”,0);update ecs_goods set goods_number=10,shop_price=955 where goods_id=442;'
$query_e = explode(';','$query');
foreach ($query_e as $k =>$v)
{
mysql_query($query_e[$k]);
}
這樣 $query語句就被批量的執行了.呵呵
php批量執行sql語句怎么寫
php中利用數組用Mysql_query批量執行SQL語句。
參考示例如下:
思路:這里采用一個數組.用explode 函數,將$query語句按照”;”炸開,然后循環執行即可:
$query = 'delete from ecs_goods_attr where attr_id=11 and goods_id=22;
Insert into ecs_goods_attr (goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(Null,33,138,"膽略",0);
update ecs_goods set goods_number=10,shop_price=55 where goods_id=33;'
$query_e = explode(';','$query');
foreach ($query_e as $k =>$v)
{
mysql_query($query_e[$k]);
}
這樣 $query語句就被批量的執行了。
點擊按鈕(BUTTON)執行PHP語句
你的需求沒說清楚
執行的PHP是什么程序
是否在本頁執行
你暫時這么做吧
<form id="form1" name="form1" method="post" action="">
<input name="" type="button" value="單擊查看用戶" />
<input name="a" type="hidden" id="a" value="a" />
</form>
<?php
$a=$_REQUEST["a"];
if ($a=="a")
{
echo "執行程序吧";
}
?>
PHP判斷sql語句是否執行成功
PHP中如果不判斷sql執行是否成功,就彈出成功提示框,往往會造成虛假注冊,實際表單內容沒有提交進入數據庫。判斷sql語句是否執行成功主要用到的函數為mysql_affected_rows() 返回前一次 MySQL 操作所影響的記錄行數。
執行成功,則返回受影響的行的數目,如果最近一次查詢失敗的話,函數返回 -1。 如果最近一次操作是沒有任何條件(WHERE)的 DELETE 查詢,在表中所有的記錄都會被刪除,但本函數返回值在 4.1.2 版之前都為 0。 當使用 UPDATE 查詢,MySQL 不會將原值與新值一樣的列更新。這樣使得 mysql_affected_rows() 函數返回值不一定就是查詢條件所符合的記錄數,只有真正被修改的記錄數才會被返回。 下面看兩個例子:例一:
$rs=MySQL_query($sql);
if(mysql_affected_rows())
echo "sql執行成功";elseecho "sql執行失敗";例二:mysql_pconnect("localhost", "mysql_user", "mysql_passWord") or
die ("Could not connect" . mysql_error());
mysql_select_db("mydb");
/* Update 記錄 */
mysql_query("UPDATE mytable SET used=1 WHERE id