【问题标题】:Jeditable not processing idJeditable 不处理 id
【发布时间】:2014-07-25 10:17:11
【问题描述】:

我在更改文本后尝试更新数据库时遇到了一些困难,作为回报,我收到以下数据库错误:“字段列表”中的未知列 ''。

元素 id 的内容有效,但元素 id 似乎没有被检索到。

元素id也是我在数据库中的字段名

数据库字段名称:

id| _career| _location| _education
62|IT      | London   | BSc Computer science

index.php 文件

<div style="margin-left: 2%;">
  <p><h1 class = "_name"><?php echo $user_data['firstname'], " ", $user_data['lastname']; ?></h1></p>
  <p><h3 class = "_career"><?php echo $user_data['_career'] ?></h3></p>
  <p><h4 class = "_location"><?php echo $user_data['_location'] ?></h4></p><br>
  <p><h5 class = "_education"><?php echo $user_data['_education'] ?></span></h5></p>
</div>

datacenter.php

$(document).ready(function() {
  $('.edit').editable('./datacenter.php', {
    indicator: 'Saving...',
    tooltip: 'Click to edit...'
  });
  $('._career').editable('./datacenter.php', {
    id: 'id',
    name: 'data',
    cancel: 'Cancel',
    submit: 'OK',
    indicator: '<img src="img/indicator.gif">',
    tooltip: 'Click to edit...'
  });
  $('._location').editable('./datacenter.php', {
    id: 'id',
    name: 'data',
    cancel: 'Cancel',
    submit: 'OK',
    indicator: '<img src="img/indicator.gif">',
    tooltip: 'Click to edit...'
  });
  $('._education').editable('./datacenter.php', {
    id: 'id',
    name: 'data',
    cancel: 'Cancel',
    submit: 'OK',
    indicator: '<img src="img/indicator.gif">',
    tooltip: 'Click to edit...'
  });

});

编辑.php 文件

<?php

require 'core/init.php';

if (logged_in() == true && user_details_check($user_data['id'], "firstname", "noname") == true || logged_in() == false) {
  header("Location:./");
}

$f = $_POST['id'];
$value = $_POST['data'];
$user_id = trim($user_data['id']);

mysqli_query($con, "UPDATE users SET `$f` = '$value' WHERE `id` = '$user_id'") or die(mysqli_error($con));

/* sleep for a while so we can see the indicator in demo */
usleep(2000);

$renderer = $_GET['renderer'] ? $_GET['renderer'] : $_POST['renderer'];
if ('textile' == $renderer) {
  require_once './Textile.php';
  $t = new Textile();
  /* What is echoed back will be shown in webpage after editing. */
  print $t->TextileThis(stripslashes($_POST['user_edited_content']));
} else {
  /* What is echoed back will be shown in webpage after editing. */
  print $_POST['data'];
}

我已经被困了好几天了,真的希望有人能帮我解决这个问题

【问题讨论】:

  • &lt;p&gt;中使用&lt;h#&gt;标签是个坏主意

标签: php html mysql ajax jeditable


【解决方案1】:

元素id 不起作用,所以我切换到元素class

之前:

<p><h1 class = "_name"><?php echo $user_data['firstname'], " ", 

现在:

<p><h1 id = "_name"><?php echo $user_data['firstname'], " ",

datacenter.php

之前:

$(document).ready(function() {
  $('#edit').editable('./datacenter.php', {
    indicator: 'Saving...',
    tooltip: 'Click to edit...'
  });

现在:

$(document).ready(function() {
  $('.edit').editable('./datacenter.php', {
    indicator: 'Saving...',
    tooltip: 'Click to edit...'
  });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多