日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

php ajax mysql 出错,php – 从mysql切换到mysqli后,Ajax的更新语句不能正常工作,但没有错误显示...

發布時間:2024/9/15 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php ajax mysql 出错,php – 从mysql切换到mysqli后,Ajax的更新语句不能正常工作,但没有错误显示... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參見英文答案 > When to use single quotes, double quotes, and back ticks in MySQL????????????????????????????????????12個

我有一個代碼,與mysql工作正常,但已切換到mysqli它不再運行.數據在選擇按鈕的表格中正確顯示,它看起來像我得到保存gif(因為正在調用Ajax),但是更新語句不會更新數據庫.

似乎沒有工作的部分是saveedit.php:

require_once("dbcontroller.php");

$db_handle = new DBController();

$column=$_POST['column'];

$value=$_POST['value'];

$id=$_POST['id'];

$sql = "UPDATE php_interview_questions SET `$column` = '$value' WHERE id=$id)";

$result = mysqli_query ($conn, $sql) or die(mysqli_error ($dbc));

?>

主頁是

require_once("dbcontroller.php");

$db_handle = new DBController();

$sql = "SELECT * from php_interview_questions";

$faq = $db_handle->runQuery($sql);

?>

PHP MySQL Inline Editing using jQuery Ajax

function showEdit(editableObj) {

$(editableObj).css("background","#FFF");

}

function saveToDatabase(editableObj,column,id) {

$(editableObj).css("background","#FFF url(loaderIcon.gif) no-repeat right");

$.ajax({

url: "saveedit.php",

type: "POST",

data:'column='+column+'&editval='+editableObj.innerHTML+'&id='+id,

success: function(data){

$(editableObj).css("background","#FDFDFD");

}

});

}

Q.No.QuestionAnswer

foreach($faq as $k=>$v) {

?>

<?php echo $k+1; ?>')" onClick="showEdit(this);"><?php echo $faq[$k]["question"]; ?>')" onClick="showEdit(this);"><?php echo $faq[$k]["answer"]; ?>

}

?>

使用db_controller.php連接到數據庫并處理結果集創建(數據庫連接詳細信息位于此處未發布的文件中):

function __construct() {

$conn = $this->connectDB();

if(!empty($conn)) {

$this->selectDB($conn);

}

}

function connectDB() {

$conn = mysqli_connect($this->host,$this->user,$this->password);

return $conn;

}

function selectDB($conn) {

mysqli_select_db($conn, $this->database);

}

function runQuery($query) {

$conn = mysqli_connect($this->host,$this->user,$this->password);

mysqli_select_db($conn, $this->database);

$result = mysqli_query($conn, $query)or die(mysqli_error($conn));

while($row=mysqli_fetch_assoc($result)) {

$resultset[] = $row;

}

if(!empty($resultset))

return $resultset;

}

function numRows($query) {

$result = mysqli_query($conn, $query);

$rowcount = mysqli_num_rows($result);

return $rowcount;

}

}

?>

我現在已經將dbcontroller更改為以下內容以簡化并嘗試拋出錯誤但仍然沒有得到任何結果

class DBController {

private $host = "***********";

private $user = "***********";

private $password = "**********";

private $database = "************";

function __construct() {

$conn = mysqli_connect($this->host,$this->user,$this->password,$this->database) OR die (mysqli_connect_error());

}

function runQuery($query) {

$conn = mysqli_connect($this->host,$this->user,$this->password);

mysqli_select_db($conn, $this->database);

$result = mysqli_query($conn, $query)or die(mysqli_error($conn));

while($row=mysqli_fetch_assoc($result)) {

$resultset[] = $row;

}

if(!empty($resultset))

return $resultset;

}

function numRows($query) {

$result = mysqli_query($conn, $query);

$rowcount = mysqli_num_rows($result);

return $rowcount;

}

}

?

&GT

解決方法:

刪除列周圍的單個qoutes名稱:

$sql = "UPDATE php_interview_questions SET $column = '$value' WHERE id=$id)";

或者,如果列中有特殊字符,請使用反引號來逃避它們.

$sql = "UPDATE php_interview_questions SET `$column` = '$value' WHERE id=$id)";

如果id是一個數值,你也不需要單個qoutes.

標簽:jquery,php,mysql,ajax,mysqli

來源: https://codeday.me/bug/20190623/1274705.html

總結

以上是生活随笔為你收集整理的php ajax mysql 出错,php – 从mysql切换到mysqli后,Ajax的更新语句不能正常工作,但没有错误显示...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。