表格不在Android股票浏览器中发送提交数据

时间:2014-07-03 11:14:45

标签: android forms post browser submit

我有一个简单的表单(从php查询生成),它通过POST将数据发送到php脚本。用户选择复选框选项,并在提交php脚本时制作自动下载的制表符分隔文件。它适用于所有浏览器,除了android股票浏览器。转储$ POST显示没有数据。 有这个想法/经验吗?

这会发送数据:

    <form name='myForm' action="">
                <input type='text' id='serial' placeholder="Serial number" required/>
                <br />
                <br />
                <input class="FooTrigg" data-trigger="footable_initialize" type='button'   onclick='showPart(FooT)' value='Search'/>
            </form>

此脚本将其发布到php并将其检索回原始页面:

//Browser Support Code
    function showPart(callback){
var ajaxRequest;  // The variable that makes Ajax possible!


 ajaxRequest.onreadystatechange = function(){
  if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200){
  var ajaxDisplay = document.getElementById('PartList');
  ajaxDisplay.innerHTML = ajaxRequest.responseText;
  // To reinitialize table after it's loaded with data callback is added
  callback();
 }
 }

 // Now get the value from page and pass it to server script.
 var serial = document.getElementById('serial').value;

ajaxRequest.open('POST', "../includes/getpart.php");
ajaxRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajaxRequest.send("serial=" + serial);
}   

//When callback is returned FooT is executed after showPart
 function FooT() {

            $('table').trigger('footable_initialize');
            $('table').trigger('footable_expand_first_row');
  }

这是由php生成的表单:

    //form
    echo "<form id='send_parts' name='send_parts' method='post' action='../includes/generatetab.php'>";
    //Table header
    echo "
        <table>
        <tr>
            <th>Part</th>
            <th>PN</th>
            <th>Manufactured</th>
            <th>Serial</th>
            <th>Site</th>
            <th>Date replaced</th>
            <th>By user</th>
            <th>Faulty</th>
            <th>Select</th>
        </tr>";
    //Retrieved data
    while ($row = mysqli_fetch_array($query)) {
        echo "<tr>";
        echo "<td>" . $row['part_type'] . "</td>";
        echo "<td>" . $row['pn'] . "</td>";
        echo "<td>" . $row['manufactured'] . "</td>";
        echo "<td>" . $row['serial'] . "</td>";
        echo "<td>" . $row['site_id'] . "</td>";
        echo "<td>" . $row['date'] . "</td>";
        echo "<td>" . $row['user'] . "</td>";
        echo "<td>" . $row['faulty'] . "</td>";
        echo "<td><input type='checkbox' name='send_parts[]' class='checkclass' value=" . $row['id'] . "></td>";
        echo "</tr>";};
    echo "</table>";
    echo "</br>";
    echo "<input type='submit' name='submit' value='Generate tab' />";
    echo "</form>";
    exit();

这是用于生成文件的php脚本:

    //Generate headers
    echo "Part";
    echo chr(9);
    echo "Serial";
    echo chr(9);
    echo "Site";
    echo chr(9);
    echo "Date";
    echo chr(9);
    echo "User";
    echo chr(9);
    echo "Log";
    echo chr(9);
    echo chr(13);
    echo chr(10);

    //Generate tab delimited text

    echo "Dump: ";
    var_dump($_POST);

    if (!empty($_POST['send_parts'])){
foreach ($_POST['send_parts'] as $send_parts){
$getchecked = mysqli_query($con, "SELECT * FROM $storage WHERE id=$send_parts");
while ($row = mysqli_fetch_array($getchecked)) {
    echo $row['part_type'];
    echo chr(9);
    echo $row['serial'];
    echo chr(9);
    echo $row['site_id'];
    echo chr(9);
    echo $row['date'];
    echo chr(9);
    echo $row['user'];
    echo chr(9);
    echo $row['log'];
    echo chr(9);
    echo chr(13);
    echo chr(10);
};
    } exit ();
   } else {
    echo "Nothing was selected, please try again!";
     }

在Android股票浏览器中,我得到带标题的制表符分隔文件,我总是得到:没有选择,请再试一次! dump $ post显示array-&gt; 0。

0 个答案:

没有答案