0

这是我的 jquery 移动应用程序代码。但是我用php结果创建的表格不起作用。表单未在提交时发布数据。我什至试过data-ajax="flase"

<table id="stock">
<? $sql = mysqli_query($con, "SELECT * FROM products WHERE `product_id` = '1'");
    while($row=mysqli_fetch_array($sql)){
        $name = $row['name'];
        $chamecal = $row['chamecal'];
        $price = $row['selling_price'];
        $bprice = $row['buying_price'];
        $quantity = $row['quantity'];
        $manufacturer = $row['manufacturer'];
        $date = $row['date'];
        $edate = $row['expire'];
        $pid = $row['product_id'];
?>
   <form id="stockupdate" method="post" action="medupdate.php">
    <tr>
        <td><?=$name;?></td>
        <td><?=$chamecal;?></td>
        <td><?=$manufacturer;?></td>
        <td><input type="text" name="medbprice" value="<?=$bprice;?>" /></td>
        <td><input type="text" name="medprice" value="<?=$price;?>" /></td>
        <td><?=$date;?></td>
        <td><?=$edate;?></td>
        <td><input type="text" name="medstock" value="<?=$quantity;?>" /></td>
        <td class="ui-screen-hidden"><input type="text" name="pid" value="<?=$pid;?>" /></td>
        <td>
            <input type="submit" title="Update" data-icon="gear" data-theme="f" data-inline="true" data-iconpos="notext" />
        </td>
    </tr>
<?    
    } 
?>
</form>
</table>

值处理程序文件medupdate.php

<?php session_start();?>
<?php include_once('include/config.php');?>
<?
$pid        = $_POST['pid'];
$medbprice  = $_POST['medbprice'];
$medprice   = $_POST['medprice'];
$medstock   = $_POST['medstock'];

$sql = mysqli_query($con, "UPDATE `products` SET `quantity` = '$medstock', `buying_price` = '$medbprice' , `selling_price` = '$medprice' WHERE `product_id` = '$pid'");

if($sql){
echo 1;
}
?>
4

2 回答 2

1

如果我冒险猜测,那是因为你在放置

<form id="stockupdate" method="post" action="medupdate.php">

直接在表格元素中(这是无效标记)。把它移到你的桌子外面(在你的 之前<table>)。当您创建无效标记时,浏览器引擎会尝试更正它,这可能会导致此类问题。

这是 chrome 对您的标记所做的:

在此处输入图像描述

于 2013-10-15T09:31:58.700 回答
1

你不能遵循 html 结构,form内部table喜欢,

<table>
   <form>
     <tr>
        <td>
        </td>
     </tr>
   </form>
</table>

这是工作代码,

表单 php

<!DOCTYPE html>


<html>
    <head>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css">
        <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
        <script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>
    </head>



    <body>
        <form id="stockupdate" method="post" action="medupdate.php" data-ajax="false">
            <table>
                <tr>
                    <td><input type="text" name="medbprice" value="xxxx" /></td>
                    <td><input type="text" name="medprice" value="yyyyy" /></td>
                    <td><input type="text" name="medstock" value="zzzzzz" /></td>
                    <td class="ui-screen-hidden"><input type="text" name="pid" value="111111" /></td>
                    <td>
                        <input type="submit" title="Update" data-icon="gear" data-theme="f" data-inline="true" data-iconpos="notext" />
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>

医疗更新.php

<?php 
session_start();
$pid        = $_POST['pid'];
$medbprice  = $_POST['medbprice'];
$medprice   = $_POST['medprice'];
$medstock   = $_POST['medstock'];
echo $pid;
// your database operations
?>
于 2013-10-15T09:57:58.683 回答