我有一个用PHP代码创建的HTML问题

时间:2013-08-16 19:31:07

标签: php javascript jquery html

我正在尝试创建管理面板并从数据库中获取一些数据到表,然后才能更改它。

我有2个名为searchForm的表单,使用HTML代码创建,表单在我提交后工作正常。

另一种形式(loadForm)是使用从SQL DB获取数据的php代码动态创建的。 PHP工作正常,我得到所有字段的表,问题是当我提交特定行我不通过post方法获取值。我检查了eith var_dump,结果是0。 我也无法更改表css属性。

请帮忙......

    <?php

    include("config.inc.php");
    $lfname='';
    $llname='';
    $lphone='';
    $lemail='';
    $lcity='';
    $lphotos='';
    $fname='';
    $lname='';
    $phone='';
    $email='';

    if(isset($_POST['searchbtn'])){
        if (isset($_POST['fname'])) {
            $fname=$_POST['fname'];
        }

        if (isset($_POST['lname'])) {
            $lname=$_POST['lname'];
        }

        if (isset($_POST['phone'])) {
            $phone=$_POST['phone'];
        }

        if (isset($_POST['email'])) {
            $email=$_POST['email'];
        }
        var_dump($phone);
    }

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

        if (isset($_POST['lfname'])) {
            $lfname=$_POST['lfname'];
        }
        if (isset($_POST['llname'])) {
            $llname=$_POST['llname'];
        }
        if (isset($_POST['lphone'])) {
            $lphone=$_POST['lphone'];
        }
        if (isset($_POST['lemail'])) {
            $lemail=$_POST['lemail'];
        }
        if (isset($_POST['lcity'])) {
            $lcity=$_POST['lcity'];
        }
        if (isset($_POST['lphotos'])) {
            $lphotos=$_POST['lphotos'];
        }
        var_dump($lfname);
        }


        ?>
    <html>
        <head>
            <title>תמונה במתנה</title>
            <meta charset="utf-8">
            <link href="admin-style.css" rel="stylesheet" type="text/css">
            <script type="text/javascript" src="jquery.js"></script>

        </head>

        <body>
        <div id="container">
            <div id="customer-list">

            </div>
            <button type="button" id="loadbtn">טען</button>
            <div id="search">
                <form id="searchForm" action="admin.php" method="post">
                    שם פרטי:<input type="text" name="fname" id="fname">שם:
                    שם משפחה:<input type="text" name="lname" id="lname">
                    טלפון:<input type="text" name="phone" id="phone">
                    אימייל:<input type="text" name="email" id="email">
                    <input id="searchForm" type="submit" name="searchbtn" value="חפש" />
                </form>

            </div>
            <div id="serchList">

            </div>
            <div id="editCustomer">

            </div>
        </div>
                <script type="text/javascript">

                    $(document).ready(function() {  

                    showNoPicture();
                    alerta();



                    function showNoPicture() {


                         $("#loadbtn").click(function(){
                            var s = '                       <?php
    $link = mysql_connect($db_host,$db_user,$db_pass);
    if(!$link) die ('Could not connect to database: '.mysql_error());
    mysql_select_db($db_name,$link);
    mysql_query("SET NAMES 'utf8'");
        $i=0;
                        echo '<table border=1 cellspacing="0" cellpadding="0">';
                        echo '<tr>';

                        echo '<td>שם פרטי</td>';
                        echo '<td>שם משפחה</td>';
                        echo '<td>טלפון</td>';
                        echo '<td>אימייל</td>';
                        echo '<td>עיר</td>';
                        echo '<td>שעת רישום</td>';
                        echo '<td>מספרי תמונות</td>';
                        echo '<td>שמור</td>';
                        echo '</tr>';

                        $loadQuery="SELECT * FROM `claients` WHERE `eventreg_pictures` is null";
                        $result=mysql_query($loadQuery);
                        while($row= mysql_fetch_array($result)){
                            $client= $row;
                            $clients[]=$client;

                            echo '<tr>';
                            echo '<form id="loadForm" method="post" action="admin.php">'; 

                            echo '<td><input type="text" id="lfname" name="lfname" value="'.$client[1].'"/></td>';
                            echo '<td><input type="text" id="llname" name="llname" value="'.$client[2].'"/></td>';
                            echo '<td><input type="text" id="lphone" name="lphone" value="'.$client[3].'"/></td>';
                            echo '<td><input type="text" id="lemail" name="lemail" value="'.$client[4].'"/></td>';
                            echo '<td><input type="text" id="lcity" name="lcity" value="'.$client[5].'"/></td>';
                            echo '<td>'.$client[7].' ';
                            echo '<td><input type="text" id="lphotos" name="lphotos"/></td>';
                            echo '<td><input type="submit" id="savebtn" name=savebtn" value-"שמור"/></td>';
                            echo '</form>';
                            echo '</tr>';

                            }
                        echo '</table>';

                    ?>';
                            $("#customer-list").html(s);
                            //$("#customer-list").load('loadClient.php');
                            }); 

                    };



                    function alerta() {

                        $("#searchForm").click(function(){
                        s='<?php $searchEmail; ?>';
                        $("#customer-list").html(s);
                            }); 

                    };

        $(".btnClass").click(function(){
            alert('hi');
        //$("#customer-list").load('ghfgh.php');
        });         

    });
            </script>

        </body>
    </html>

2 个答案:

答案 0 :(得分:4)

修复html代码中的错误:

此处缺少"

echo '<td><input type="submit" id="savebtn" name=savebtn" value-"שמור"/></td>';

应该是

echo '<td><input type="submit" id="savebtn" name="savebtn" value="שמור"/></td>';

您有重复的ID,searchForm使用了两次。

答案 1 :(得分:3)

这可能是你的问题:

   while($row= mysql_fetch_array($result)){
        $client= $row;
       $clients[]=$client;

       echo '<tr>';
      echo '<form id="loadForm" method="post" action="admin.php">'; 

在while循环之外获取form标记。您可能正在创建具有相同ID的多个表单。你也重复了很多ids。