用php插入jquery表单

时间:2015-06-15 19:18:09

标签: php jquery-mobile mysqli insert

请帮助查找我的代码问题的答案...当我点击请求时,页面只刷新所有数据消失但没有任何内容插入数据库... 这是db和代码的图像!我需要更改什么才能插入数据以及登录用户的用户名? ![数据库] http://imgur.com/t0DrlHH

@ user1151316我做了更改,这里的代码删除了无意义的评论......数据没有被插入,提交后我得到一个空白的屏幕......

        <?php
        //require_once 'includes/dbconnect.php';
        session_start();

         if (isset($_POST["request"])) 
         {
            //print_r($_POST);die;
        //take care of injections
        $service = mysqli_real_escape_string($link,$_POST['service']);
        $service_details  = mysqli_real_escape_string($link,$_POST['service_details']);
        $duedate  = mysqli_real_escape_string($link,$_POST['duedate']);
        $postdate  = mysqli_real_escape_string($link,$_POST['postdate']); //READ ONLY DATE POST



        // Insert data into mysql + LOGGED IN USERS USERNAME TO BE INSERTED
         $sql = "INSERT INTO serviceposts VALUES ('".$_SESSION["username"]."','".$service."', '".$service_details."', '".$duedate."', '".$postdate."')";

        $result= $link -> query($sql) or die (mysqli_error($link));

         echo "($result)";
        // if successfully insert data into database, displays message "Successful".
        if($result){
                echo "request post success!";
                 echo'<script>window.location="http://localhost/Project2/User.php#viewrequests";</script>';     
        }
        else {
            echo "Possible data input error";       

                }
        $link->close();
        }

        ?>
        <!DOCTYPE html>
        <html>
        <head>
        <script src="includes/js/modernizr.js"></script>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link href="jqueryAssets/jquery.mobile.icons.min.css" rel="stylesheet" type="text/css">
        <link href="jqueryAssets/Mobi~Style~Me.min.css" rel="stylesheet" type="text/css">
        <link href="jqueryAssets/jquery.mobile-1.4.5.min.css" rel="stylesheet" type="text/css">
        <link href="jqueryAssets/jquery.ui.theme.min.css" rel="stylesheet" type="text/css">
        <link href="jqueryAssets/jquery.mobile.icons-1.4.5.min.css" rel="stylesheet" type="text/css">
        <link href="jqueryAssets/jquery.mobile.structure-1.4.5.min.css" rel="stylesheet" type="text/css">
        <link href="jqueryAssets/jquery.ui.datepicker.min.css" rel="stylesheet" type="text/css">
        <style type="text/css">
        body,td,th {
            font-family: Constantia, "Lucida Bright", "DejaVu Serif", Georgia, serif;
            color: #303;
        }
        body {
            background-image: url();
        }
        </style>
        <link href="jqueryAssets/jquery.ui.core.min.css" rel="stylesheet" type="text/css">
        <style type="text/css">
        a {
            font-weight: bolder;
        }
        </style>
        <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
        <script src="jqueryAssets/jquery-ui.min.js"></script>
        <script src="jqueryAssets/jquery-2.1.1.min.js"></script>
        <script src="jqueryAssets/jquery.mobile-1.4.5.min.js"></script>
        <script src="jqueryAssets/jquery-ui-1.9.2.dialog.custom.min.js"></script>
        <script src="jqueryAssets/jquery-1.8.3.min.js" type="text/javascript"></script>
        <script src="jqueryAssets/jquery-ui-1.9.2.datepicker.custom.min.js" type="text/javascript"></script>
        <title>MyITjobs</title>
        <meta charset="utf-8">
        </head>  
        <body>  
          <div data-role="page" id="servicerequest" data-theme="c">
        <div data-role="header" data-add-back-btn="true"><h4>IT~Service Request</h4></div>
        <span align="center"><?php if (isset($_SESSION["username"]))
        {
         echo "".$_SESSION["username"]."";
        }
        ?>
        </span>
        <div data-role="content" class="ui-field-contain" align="center" data-content-theme="c">
             <form style="align-items:justify" method="post" action="" id="servicerequest">
             <input type="hidden" name="service" id="selected_service"/>
            <span>
            <select name="selectmenu" required class="ui-bar-c slidedown" id="service" data-collapsed="false" onchange="onchangeservice()">
            <option selected="selected" class="ui-selectmenu-placeholder">IT-Services</option>
            <option value="service1" id="MobileApps">Mobile Apps Development</option>
            <option value="service2" id="WebDev">Website Development</option>
            <option value="service3" id="Programming">Programming</option>
                   </select>
                   </span>
                   <br>
            <span>
            <div data-role="fieldcontain">
            <label for="service_details">IT~Service Request Details</label>
              <textarea name="service_details" cols="35" rows="6" id="service_details" placeholder="Input Request details"></textarea>
            </div>
            </span>
              <span>        
                <label for="duedate">Set Due Date:</label>
                <input type="datetime-local" required name="duedate" id="duedate" data-mini="true">
                </span> 
                 <br>   
              <span>
               <label for="datetime-local">Request Date</label>
               <DateTime id="postdate" data-mini="true">
                <?php      
              $postdate = date("Y-m-d, H:i");
                echo "$postdate";
                   ?>

               </span>  
               <input type="hidden" name="postdate" value="<?php echo $postdate; ?>"/>
               <br>
           <fieldset class="ui-grid-a">
        <div class="ui-block-a">
               <button type="submit" data-icon="check" data-iconshadow="true" data-iconpos="left" id="request" name="request">Request</button></div>
        <div class="ui-block-b">
          <button type="reset" data-icon="delete" data-iconshadow="true" data-iconpos="left">Cancel</button>
          </div>
         </fieldset>  
         <script>

             function onchangeservice()
             {
                 var service_option = $( "#service option:selected" ).text();  
                 $('#selected_service').val(service_option);
             }
                </script>
                </form>
                 </div>     
        <div data-role="footer" data-theme="c" align="center">
                  </div>
             </div> 
        </body>
        </html>

2 个答案:

答案 0 :(得分:1)

执行以下步骤以解决此问题:

  • 添加新的隐藏字段 <select name="selectmenu" required class="ui-bar-c slidedown" id="service" data-collapsed="false" onchange="onchangeservice()">

  • 添加onchange功能以选择框

    function onchangeservice() { var service_option = $( "#service option:selected" ).text(); $('#selected_service').val(service_option); }

  • 将脚本替换为函数

    `<?php require_once 'includes/dbconnect.php'; session_start(); //require_once 'includes/dbconnect.php'; /* if (isset($_SESSION["username"]) && !empty($_SESSION["username"])){ echo "".strtoupper($_SESSION['username'])."(Sign out)"; }else{ echo "Sign In"; } */ if (isset($_POST["request"])) { //print_r($_POST);die; //take care of injections $service = mysqli_real_escape_string($link,$_POST['service']); $service_details = mysqli_real_escape_string($link,$_POST['service_details']); $duedate = mysqli_real_escape_string($link,$_POST['duedate']); $postdate = mysqli_real_escape_string($link,$_POST['postdate']); //READ ONLY DATE POST // Insert data into mysql + LOGGED IN USERS USERNAME TO BE INSERTED $sql = "INSERT INTO serviceposts VALUES ('".$_SESSION["username"]."','".$service."', '".$service_details."', '".$duedate."', '".$postdate."')"; $result= $link -> query($sql) or die (mysqli_error($link)); echo "($result)"; // if successfully insert data into database, displays message "Successful". if($result){ echo "request post success!"; echo'<script>window.location="http://localhost/Project2/User.php#viewrequests";</script>'; // header('Location: ../User.php?success=1'); } else { echo "Possible data input error"; //header('Location: ../user.php?error=1'); } $link->close(); } ?> <!DOCTYPE html> <html> <head> <script src="includes/js/modernizr.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href="jqueryAssets/jquery.mobile.icons.min.css" rel="stylesheet" type="text/css"> <link href="jqueryAssets/Mobi~Style~Me.min.css" rel="stylesheet" type="text/css"> <link href="jqueryAssets/jquery.mobile-1.4.5.min.css" rel="stylesheet" type="text/css"> <link href="jqueryAssets/jquery.ui.theme.min.css" rel="stylesheet" type="text/css"> <link href="jqueryAssets/jquery.mobile.icons-1.4.5.min.css" rel="stylesheet" type="text/css"> <link href="jqueryAssets/jquery.mobile.structure-1.4.5.min.css" rel="stylesheet" type="text/css"> <link href="jqueryAssets/jquery.ui.datepicker.min.css" rel="stylesheet" type="text/css"> <style type="text/css"> body,td,th { font-family: Constantia, "Lucida Bright", "DejaVu Serif", Georgia, serif; color: #303; } body { background-image: url(); } </style> <link href="jqueryAssets/jquery.ui.core.min.css" rel="stylesheet" type="text/css"> <style type="text/css"> a { font-weight: bolder; } </style> <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <script src="jqueryAssets/jquery-ui.min.js"></script> <script src="jqueryAssets/jquery-2.1.1.min.js"></script> <script src="jqueryAssets/jquery.mobile-1.4.5.min.js"></script> <script src="jqueryAssets/jquery-ui-1.9.2.dialog.custom.min.js"></script> <script src="jqueryAssets/jquery-1.8.3.min.js" type="text/javascript"></script> <script src="jqueryAssets/jquery-ui-1.9.2.datepicker.custom.min.js" type="text/javascript"></script> <title>MyITjobs</title> <meta charset="utf-8"> </head> <body> <div data-role="page" id="servicerequest" data-theme="c"> <div data-role="header" data-add-back-btn="true"><h4>IT~Service Request</h4></div> <span align="center"><?php if (isset($_SESSION["username"])) { echo "".$_SESSION["username"].""; } ?> </span> <div data-role="content" class="ui-field-contain" align="center" data-content-theme="c"> <form style="align-items:justify" method="post" action="" id="servicerequest"> <input type="hidden" name="service" id="selected_service"/> <span> <select name="selectmenu" required class="ui-bar-c slidedown" id="service" data-collapsed="false" onchange="onchangeservice()"> <option selected="selected" class="ui-selectmenu-placeholder">IT-Services</option> <option value="service1" id="MobileApps">Mobile Apps Development</option> <option value="service2" id="WebDev">Website Development</option> <option value="service3" id="Programming">Programming</option> </select> </span> <br> <span> <div data-role="fieldcontain"> <label for="service_details">IT~Service Request Details</label> <textarea name="service_details" cols="35" rows="6" id="service_details" placeholder="Input Request details"></textarea> </div> </span> <span> <label for="duedate">Set Due Date:</label> <input type="datetime-local" required name="duedate" id="duedate" data-mini="true"> </span> <br> <span> <label for="datetime-local">Request Date</label> <DateTime id="postdate" data-mini="true"> <?php $postdate = date("Y-m-d, H:i"); echo "$postdate"; ?> </span> <input type="hidden" name="postdate" value="<?php echo $postdate; ?>"/> <br> <fieldset class="ui-grid-a"> <div class="ui-block-a"> <button type="submit" data-icon="check" data-iconshadow="true" data-iconpos="left" id="request" name="request">Request</button></div> <div class="ui-block-b"> <button type="reset" data-icon="delete" data-iconshadow="true" data-iconpos="left">Cancel</button> </div> </fieldset> <script> function onchangeservice() { var service_option = $( "#service option:selected" ).text(); $('#selected_service').val(service_option); } </script> </form> </div> <div data-role="footer" data-theme="c" align="center"> </div> </div> </body> </html>`

完整代码如下:

doStuff

答案 1 :(得分:0)

你必须做很多修复。

  • 您尚未向所有输入类型添加任何名称属性,因此它们未发布。
  • 您应该编写大量缩进和清晰的代码,以便找出问题。
  • 不要多次包含文件。
  • 删除不需要的评论代码。

请尝试以下代码:

SELECT AVG(value) AS AVERAGE, id_num 
FROM table_name AS C WHERE C.time IN (SELECT TOP 300 time FROM table_name ORDER BY TIME) 
GROUP BY id_num