Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法获取localStorage中的值以更新数据库中的值_Javascript_Php_Sql_Ajax_Local Storage - Fatal编程技术网

Javascript 无法获取localStorage中的值以更新数据库中的值

Javascript 无法获取localStorage中的值以更新数据库中的值,javascript,php,sql,ajax,local-storage,Javascript,Php,Sql,Ajax,Local Storage,我有一个td为可编辑内容的表。为了更新数据库中td的值,我决定使用localStorage。单击save按钮后,td中的输入值将保存到localStorage,ajax将在我的数据库中的一列中获取要替换的值 我查看Google Chrome中的应用程序,检查它是否正在保存到localStorage,并且确实如此 但当页面重新加载时,td中的值不会更改和更新。我的代码中缺少了什么 $(document).ready(function() { $('#btnSaveFind

我有一个td为可编辑内容的表。为了更新数据库中td的值,我决定使用localStorage。单击save按钮后,td中的输入值将保存到localStorage,ajax将在我的数据库中的一列中获取要替换的值

我查看Google Chrome中的应用程序,检查它是否正在保存到localStorage,并且确实如此

但当页面重新加载时,td中的值不会更改和更新。我的代码中缺少了什么

$(document).ready(function() {
             $('#btnSaveFindings').click(function(){
                 var id = $(this).data('id');
                 var employeeName = document.getElementById('employeeName').value;
                 var edit = $('#date').html(); // get this field value
                 localStorage.setItem('date', edit);
                 var storeDate = localStorage.getItem('date');
                     $.ajax({
                         url: 'update_assesment.php',
                         type: 'post',
                         data: {
                             'id' :id,
                             'date': storeDate,
                             data: edit,
                             'employeeName' :employeeName   

                        },
                         //datatype: 'html',
                         success: function(){
                            alert(edit);
                         location.reload(); 
                        }
                     });
            });
        });
“date”是我的
td
中的一个示例

更新_assessment.php

 <?php
$id = $_REQUEST["id"];
$employeename = $_REQUEST["employeename"];
$storeDate =  $_REQUEST["date"];
$emp_name = $_REQUEST["emp_name"];
//$id_edit = $_REQUEST["id"]

try {
    $pdo = new PDO('mysql:host=localhost:3306;dbname=****;', '****', '****' );
    $pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
    $pdo->query( 'SET NAMES UTF8' );
    $stmt = $pdo->prepare(
        "UPDATE tbl_assessment
        SET
            `employeename` = :employeeName,
            `date` = :storeDate
        WHERE
            `id` = :id AND employeeName = '{$_SESSION['emp_name']}'
        "
    );
    $stmt->bindValue(':id',$id,PDO::PARAM_STR);
    $stmt->bindValue(':employeeName',$employeeName,PDO::PARAM_STR);
    //$stmt->bindValue(':teamCode',$teamCode,PDO::PARAM_STR);
    $stmt->bindValue(':storeDate',$storeDate,PDO::PARAM_STR);


    //$stmt->bindValue(':id',$id,PDO::PARAM_INT);
    $stmt->execute();

    header('location:./');
}catch ( PDOException $e ) {
    var_dump( $e->getMessage() );   
}

$pdo = null;

?>

我真的不知道它在本地存储中是否没有价值。
有什么帮助吗?

如果加载时没有将存储值分配给td,请尝试将以下代码添加到
$(document).ready(function(){/*在此处添加它*/})


加载时不将存储值分配给td,请尝试将以下代码添加到
$(document).ready(函数(){/*在此处添加它*/})的第一位


如何设置onload的值?session_start()在哪里,或者$_sessionvar在那里做什么?您需要添加类似于
$('.#date').html(localStorage.getItem('date')|的内容)在页面加载中设置值。您正在重新加载,这意味着值将丢失。现在它将在localStorage中获取值。但它不会更新数据库中的值。该td上的值必须是localStorage上的值。TD在我的数据库中有一列,其值为null。因此,如果用户输入数据,它将成为数据库中该列中的值。如何设置onload的值?session_start()在哪里,或者$_sessionvar在那里做什么?您需要添加类似于
$('.#date').html(localStorage.getItem('date')|的内容)在页面加载中设置值。您正在重新加载,这意味着值将丢失。现在它将在localStorage中获取值。但它不会更新数据库中的值。该td上的值必须是localStorage上的值。TD在我的数据库中有一列,其值为null。因此,如果用户将输入数据,它将成为DBS中该列的值,现在它在localStorage中获得该值。但它不会更新数据库中的值。td上的值必须是localStorage上的值。这是什么意思?是否要从localStorage获取值,然后将其更新到数据库?如果是这样的话,只需
$('#btnSaveFindings')。触发('click')。是的,因为这是我认为更新数据库使td内容可编辑的第一种方法。。。用于前端编辑。该代码将保留按钮以供单击。现在它将在localStorage中获取值。但它不会更新数据库中的值。td上的值必须是localStorage上的值。这是什么意思?是否要从localStorage获取值,然后将其更新到数据库?如果是这样的话,只需
$('#btnSaveFindings')。触发('click')。是的,因为这是我认为更新数据库使td内容可编辑的第一种方法。。。用于前端编辑。该代码将保留按钮以供单击。
$('#date').html(localStorage.getItem('date') || '');