2012-03-27 70 views
-2

我現在有這樣的:在PHP中一次運行多個SQL語句?

<?php 
    $length = count($data['mark']); 
    $i=0; 
    $s=1; 
    for($i=0;$i<$length;$i++){ 
     $sql="UPDATE `groupdatabase1` .`questions` SET `mark`=".$data['mark'][$i].", `feedback`= '".$data['feedback'][$i]."' WHERE `question`= ".$s." ;"; 
     mysql_query($sql); 
     echo $sql; 
    } 
?> 

我有一個未知量的查詢從該運行,這意味着連續多次查詢。我如何着手讓它們一個接一個地運行?

+0

首先修復您的sql注入漏洞。在那之後,你會得到所有這些查詢,一個在另一個之後。但是你沒有檢查任何錯誤,這將使你無法弄清爲什麼1個(或更多)你的無數查詢失敗。 – 2012-03-27 18:43:25

+1

您的代碼正在循環中執行此操作。你可以說得更詳細點嗎? – jeremyharris 2012-03-27 18:43:46

+0

Googleisyourfriend:http://stackoverflow.com/questions/8198707/running-multiple-php-scripts-at-the-same-time-database-loop-issue(第一個鏈接之一)如果你想在同時。如果不是我不明白這個問題。 – 2012-03-27 18:46:19

回答

1
+3

這是如何回答這個問題的? – Umbrella 2012-03-27 18:46:32

+0

它不是?我列出了一切需要解決的問題,並逐頁列入相關文檔。如果他不能RTFM,這個問題並不值得解決(因爲他不會從中學到任何東西)。 – 2012-03-27 18:47:41

0

mysql_query只允許每次調用一個查詢,即使您使用';' 所以你將不得不做幾個mysql_query調用,每個查詢你想運行一個。

0

一個很好的做法是:將所有的sql查詢放到一個文件中,並通過在終端直接調用execute()來執行。爲了解決sql注入問題,你可以使用你的準備一個傻瓜證明查詢自己的路,並保存到您傳遞將照片直接mysql的另一個SQL文件。它應該是這樣..

$output = array(); 
$ret = null; 
echo "Importing Comments"."\n"; 
exec($YourQuery, 
$output, $ret); 
var_dump($output, $ret); 

這裏$ YourQUery將是你生成......充分證明查詢希望它可以幫助...