我必須做一些錯誤的代碼MySQL的存儲過程....運行從PHP
<?
$codeid=$_GET["codeid"];
$tablecode=$_GET["tablecode"];
$description=$_GET["description"];
$code=$_GET["code"];
$groupcode=$_GET["groupcode"];
$t1=$_GET["t1"];
$t2=$_GET["t2"];
$t3=$_GET["t3"];
$mysqli = new mysqli(dbhost,dbuser,dbpass,dbc);
if ($mysqli->connect_error) {
die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);
}
$q="call spUpdateCodeTable(?,?,?,?,?,?,?,?)";
$stmt = $mysqli->prepare($q);
$stmt->bind_param($codeid,$tablecode,$description,$code,$groupcode,$t1,$t2,$t3);
$stmt->execute();
mysql_close($mysqli);
?>
絕對沒有任何反應......沒有錯誤信息或問題的任何其他指示。它只是不運行該過程。 (這是一個更新/插入例程)。
我使用這個網址...
updateCodeTable.php?codeid=0&codetable=TABLE&desription=testing2%20entry&code=TEST1&groupcode=gcode&t1=t1&t2=t2&t3=t3
...但是,如果我運行在phpMyAdmin的這個查詢,它運行完美....
call spUpdateCodeTable(0,'TABLE','testing2','TEST1','group','','','');
我可以包括存儲過程代碼,但它運行正常,我直接運行它,但只是沒有成功從我的PHP代碼運行。
用'mysqli_report(MYSQLI_REPORT_STRICT)再次嘗試; $ q =「...' - 讓錯過sql錯誤變得更加困難。參見http://docs.php.net/mysqli-driver.report-mode – VolkerK
我可以問一下,爲什麼你要使用一個過程? –
因爲我我是一個很長時間的ms-SQL服務器人員,存儲過程可以處理所有的事情,我仍然認爲儘可能在服務器上完成的處理應該是很多的,但是PHP和MySQL是新的,所以誰知道我會怎麼想一年之後 –