数据库

时间:2016-05-09 07:02:24

标签: php

我正在尝试创建一个简单的应用程序来显示处于/不在办公室状态的经理。我将在我们的接待区放置一个屏幕,以显示应用程序完成时的状态,但我被卡住了。有人可以指出我正确的方向。 基本上,我使用while循环来显示MySQL数据库中的每条记录。每次单击管理器的图像时,一段javascript会更改进/出状态,然后我会有一个保存按钮。一切都有效,除了这一件事......当页面加载时,一些数据显示不正确。我可以使用javascript操作每个记录并将其更新的值保存到数据库中。但是当我刷新页面时,一些值是不正确的(尽管它们在后端是正确的)。这是我的HTML / PHP -

<form action="update.php" method="post">
         <ul id="blurContainer">
             <?php while ($record = $stmt->fetch()) { ?>    
                <li id="<?php echo $record['id']; ?>">  
                    <input type="hidden" value="<?php echo $record['id']; ?>" name="id[]" id="id">
                     <input type="hidden" value="<?php echo $record['status']; ?>" name="status[]" id="status<?php echo $record['id']; ?>">
                    <img id="overlay" src="<?php echo $record['image']; ?>" />
                 </li>      
             <?php } ?>
         </ul>
        <input type="submit" value="Submit" name="submit" id="update">
</form>

以下是我在页面加载时从浏览器获得的内容 -

<form action="update.php" method="post">
        <ul id="blurContainer">

                <li id="1" style="opacity: 1;"> 
                     <input type="hidden" value="1" name="id[]" id="id">
                    <input type="hidden" value="out" name="status[]" id="status1">
                    <img id="overlay" src="images/jk.jpg">
                </li>       

                <li id="2" style="opacity: 1;"> 
                    <input type="hidden" value="2" name="id[]" id="id">
                    <input type="hidden" value="out" name="status[]" id="status2">
                    <img id="overlay" src="images/km.jpg">
                </li>       

                <li id="3" style="opacity: 1;"> 
                <input type="hidden" value="3" name="id[]" id="id">
                    <input type="hidden" value="out" name="status[]" id="status3">
                    <img id="overlay" src="images/ap.jpg">
                </li>       

                <li id="4" style="opacity: 1;"> 
                     <input type="hidden" value="4" name="id[]" id="id">
                    <input type="hidden" value="out" name="status[]" id="status4">
                    <img id="overlay" src="images/lb.jpg">
                </li>       
        </ul>
        <input type="submit" value="Submit" name="submit" id="update">
    </form>

一切都是正确的,除了这些行 -

<input type="hidden" value="out" name="status[]" id="status1">

<input type="hidden" value="out" name="status[]" id="status3">

值应在&#39;中读取。

我很难过!!

我确信这很简单,但我不知道!任何帮助将非常感激!!提前谢谢。

我的update.php和.js-

<?php require 'start.php'; ?>
<?php 

if(isset($_POST['submit'])){

    $id = $_POST['id'];
    $status = $_POST['status'];

    for ($x = 0; $x < 4; $x++) {
        $query = "UPDATE details SET status = :status WHERE id = :id";
        $update = $db->prepare($query);
        $update->bindValue(':status', $status[$x]);
        $update->bindValue(':id', $id[$x]);
        $update->execute(); 
    } 

} else {
    echo 'not working';
}

header('Location: ' . BASE_URL . '/index.php');

 ?>


$(function() {
    $("#blurContainer li").on('click', inOut).click();
});

function inOut(e) {
var ID = e.currentTarget.id;
  var elem = document.getElementById(ID);

    if (elem.style.opacity == 0) {
    elem.style.opacity = 1;
    document.getElementById("status" + ID).value = 'out';
    } else {
    elem.style.opacity = 0;
    document.getElementById("status" + ID).value = 'in';
    }
}

0 个答案:

没有答案