我想点击编辑图像时可以使用我的编辑功能

时间:2014-02-26 11:04:59

标签: javascript php jquery mysql pdo

我希望在点击编辑图像时让我的编辑功能正常工作。我有一个编辑事件的功能,但是当我点击图像时它不会工作。单击事件时删除代码有效: 删除功能/编辑功能:

  eventMouseover: function(event, domEvent) {
                var layer = '<div id="events-layer" class="fc-transparent" style="position:absolute; width:100%; height:100%; top:-1px; text-align:right; z-index:100"><a><img src="../../images/editbt.png" title="edit" width="14" id="edbut'+event.id+'" border="0" style="padding-right:3px; padding-top:2px;" /></a><a><img src="../../images/delete.png" title="delete" width="14" id="delbut'+event.id+'" border="0" style="padding-right:5px; padding-top:2px;" /></a></div>';
                $(this).append(layer);
                $("#delbut"+event.id).hide();
                $("#delbut"+event.id).fadeIn(300);
                $("#delbut"+event.id).click(function() {
                $.ajax({
                url: '<?=base_url();?>testcalendar/fullcalendar/delete_events.php',
                data: 'id=' + event.id ,
                type: "POST",
                });
                var nTime = 1 * 50;
                window.setTimeout("location.reload()", nTime);
                });
                $("#edbut"+event.id).hide();
                $("#edbut"+event.id).fadeIn(300);
                $("#edbut"+event.id).click(function() {
                    var title = prompt('Current Event Title: ' + event.title + '\n\nNew Event Title: ');

                    if(title){
                $.ajax({
                url: '<?=base_url();?>testcalendar/fullcalendar/update_title.php',
                data: 'title='+ event.title+'&id='+ event.id ,
                type: "POST",
                });
                    }
                });
            },

delete_events.php:

<?php
$id = $_POST['id'];
 try {
 $bdd = new PDO('mysql:host=localhost;dbname=develop-calendar', 'root', 'root');
 } catch(Exception $e) {
  exit('Unable to connect to database.');
 }
$sql = "DELETE from evenement WHERE id=".$id;
$q = $bdd->prepare($sql);
$q->execute(array($id));
?>

update_title.php:

    <?php
$id = $_POST['id'];
$title = $_POST['title'];
// connection to the database
try {
$bdd = new PDO('mysql:host=localhost;dbname=blackboks-calendar', 'calendar-boks', '19xantia');
 } catch(Exception $e) {
exit('Unable to connect to database.');
}
 // update the records
$sql = "UPDATE evenement SET title=".$title "WHERE id=".$id;
$q = $bdd->prepare($sql);
$q->execute();
?>

当我点击编辑图标时,会出现编辑标题的提示,但当我输入新标题并单击确定时它不会更新。我认为我的update_title.php文件有问题,但我不确定。

2 个答案:

答案 0 :(得分:0)

这里有一个问题

 $sql = "UPDATE evenement SET title=".$title "WHERE id=".$id;

需要

 $sql = "UPDATE evenement SET title=" . mysql_real_escape_string($title) . " WHERE id=" . mysql_real_escape_string($id);

答案 1 :(得分:0)

事实上,在我之前的答案中已经编辑过的空格。

如果您查看开发者控制台内的“网络”选项卡(大多数浏览器中为F12),您也可以尝试调试脚本返回的内容。

或检查ajax调用的结果。

$.ajax({
  url: '<?=base_url();?>testcalendar/fullcalendar/delete_events.php',
  data: 'id=' + event.id ,
  type: "POST",
}).done(function(data) {
  alert(data); // Only for testing
});